Интерфейс интеллектуального управления платформой ( IPMI ) - это набор спецификаций компьютерного интерфейса для автономной компьютерной подсистемы, которая обеспечивает возможности управления и мониторинга независимо от центрального процессора , микропрограммного обеспечения ( BIOS или UEFI ) и операционной системы хост- системы . IPMI определяет набор интерфейсов , используемый системными администраторами для вне-диапазона управления в компьютерных системахи мониторинг их работы. Например, IPMI предоставляет способ управления компьютером, который может быть выключен или не отвечает иным образом, с помощью сетевого подключения к оборудованию, а не к операционной системе или оболочке входа. Другой вариант использования может заключаться в удаленной установке пользовательской операционной системы . Без IPMI для установки пользовательской операционной системы может потребоваться физическое присутствие администратора рядом с компьютером, вставка DVD или USB-накопителя с установщиком ОС и завершение процесса установки с помощью монитора и клавиатуры. Используя IPMI, администратор может смонтировать ISO-образ , имитировать установочный DVD-диск и выполнить установку удаленно.[1]
Спецификация разработана Intel и впервые была опубликована 16 сентября 1998 года. Она поддерживается более чем 200 поставщиками компьютерных систем, такими как Cisco , Dell , [2] Hewlett Packard Enterprise , Intel , OnLogic , Marvell Semiconductor , NEC Corporation , СуперМикро и Тянь . [3] [4]
Преемником IPMI является Redfish .
Функциональность
Использование стандартизованного интерфейса и протокола позволяет программному обеспечению системного управления на основе IPMI управлять несколькими разрозненными серверами. В качестве спецификации интерфейса аппаратного уровня на основе сообщений IPMI работает независимо от операционной системы (ОС), что позволяет администраторам управлять системой удаленно в отсутствие операционной системы или программного обеспечения для управления системой . Таким образом, функции IPMI могут работать в любом из трех сценариев:
- перед загрузкой ОС (позволяя, например, удаленный мониторинг или изменение настроек BIOS)
- когда система выключена
- после сбоя ОС или системы - ключевой характеристикой IPMI по сравнению с внутриполосным управлением системой является то, что он позволяет удаленный вход в операционную систему с помощью SSH
Системные администраторы могут использовать обмен сообщениями IPMI для отслеживания состояния платформы (например, температуры системы, напряжения, вентиляторов, источников питания и проникновения в корпус); запрашивать инвентарную информацию; просматривать аппаратные журналы состояний, выходящих за пределы допустимого диапазона; или для выполнения процедур восстановления, таких как отправка запросов с удаленной консоли через те же соединения, например, отключение питания и перезагрузка системы, или настройка сторожевых таймеров . Стандарт также определяет механизм оповещения для системы, чтобы отправить ловушку событий платформы (PET) простого протокола управления сетью (SNMP).
Контролируемая система может быть отключена, но должна быть подключена к источнику питания и к среде мониторинга, обычно к локальной сети (LAN). IPMI может также функционировать после запуска операционной системы и предоставлять данные и структуры управления программному обеспечению для управления системой. IPMI в качестве стандарта предписывает только структуру и формат интерфейсов, хотя подробные реализации могут отличаться. Реализация IPMI версии 1.5 может обмениваться данными с удаленным клиентом через прямую внеполосную локальную сеть (LAN) или последовательное соединение или через боковую локальную сеть (LAN) . Для бокового подключения к локальной сети используется контроллер сетевого интерфейса платы (NIC). Это решение дешевле, чем выделенное подключение к локальной сети, но также имеет ограниченную полосу пропускания и проблемы с безопасностью.
Системы, совместимые с IPMI версии 2.0, также могут обмениваться данными через последовательный порт через локальную сеть , при этом последовательный консольный вывод можно удаленно просматривать по локальной сети. Системы, реализующие IPMI 2.0, обычно также включают KVM over IP , удаленные виртуальные носители и внеполосные функции встроенного интерфейса веб-сервера, хотя, строго говоря, они выходят за рамки стандарта интерфейса IPMI.
DCMI (Data Center Manageability Interface) - аналогичный стандарт, основанный на IPMI, но разработанный, чтобы быть более подходящим для управления центром обработки данных : он использует интерфейсы, определенные в IPMI, но минимизирует количество дополнительных интерфейсов и включает, помимо других отличий, контроль ограничения мощности.
Компоненты IPMI
Подсистема IPMI состоит из главного контроллера, называемого контроллером управления основной платой (BMC), и других контроллеров управления, распределенных между различными модулями системы, называемыми сателлитными контроллерами. Сателлитные контроллеры в одном шасси подключаются к BMC через системный интерфейс, называемый шиной / мостом интеллектуального управления платформой (IPMB) - усовершенствованная реализация I²C (Inter-Integrated Circuit). BMC подключается к сателлитным контроллерам или другому BMC в другом шасси через шину или мост Intelligent Platform Management Controller (IPMC). Им можно управлять с помощью протокола удаленного управления (RMCP), специализированного проводного протокола, определенного данной спецификацией. RMCP + ( протокол на основе UDP с более строгой аутентификацией, чем RMCP) используется для IPMI через LAN.
Несколько поставщиков разрабатывают и продают микросхемы BMC. BMC, используемый для встроенных приложений, может иметь ограниченный объем памяти и требовать оптимизированного программного обеспечения для реализации всех функций IPMI. Высокоинтегрированные BMC могут предоставлять сложные инструкции и обеспечивать полную внешнюю функциональность служебного процессора. Микропрограммное обеспечение, реализующее интерфейсы IPMI, предоставляется различными поставщиками. Поле сменный блок хранилища (FRU) проводит инвентаризацию, например, ID поставщика и производителя, потенциально сменных устройств. Репозиторий записей данных датчиков (SDR) предоставляет свойства отдельных датчиков, присутствующих на плате. Например, плата может содержать датчики температуры, скорости вращения вентилятора и напряжения.
Контроллер управления основной платой
Контроллер управления основной платой (BMC) обеспечивает интеллект в архитектуре IPMI. Это специализированный микроконтроллер встроен в материнскую плату в виде компьютера - вообще сервер . BMC управляет интерфейсом между программным обеспечением для управления системой и оборудованием платформы. BMC имеет собственную прошивку и оперативную память.
Различные типы датчиков, встроенные в компьютерную систему, сообщают BMC о таких параметрах , как температура , скорость охлаждающих вентиляторов , состояние питания, состояние операционной системы (ОС) и т. Д. BMC контролирует датчики и может отправлять предупреждения системному администратору через сеть, если какой-либо из параметров выходит за установленные пределы, что указывает на потенциальную неисправность системы. Администратор также может удаленно связаться с BMC, чтобы предпринять некоторые корректирующие действия, такие как перезагрузка или выключение и выключение системы, чтобы снова запустить зависшую ОС. Эти возможности снижают общую стоимость владения системой.
Системы, совместимые с IPMI версии 2.0, также могут обмениваться данными через последовательный порт через локальную сеть , при этом последовательный консольный вывод можно удаленно просматривать по локальной сети. Системы, реализующие IPMI 2.0, обычно также включают KVM over IP , удаленные виртуальные носители и внеполосные функции встроенного интерфейса веб-сервера, хотя, строго говоря, они выходят за рамки стандарта интерфейса IPMI.
Физические интерфейсы к BMC включают SMBuses , последовательную консоль RS-232 , линии адреса и данных, а также интеллектуальную шину управления платформой (IPMB), которая позволяет BMC принимать сообщения запросов IPMI от других контроллеров управления в системе.
Прямое последовательное соединение с BMC не шифруется, поскольку само соединение является безопасным. При подключении к BMC по локальной сети шифрование может или не использоваться, в зависимости от соображений безопасности пользователя.
Растут опасения по поводу общей безопасности BMC как закрытой инфраструктуры. [5] [6] [7] [8] OpenBMC - это совместный BMC-проект Linux Foundation с открытым исходным кодом. [9]
Безопасность
Исторические проблемы
2 июля 2013 г. компания Rapid7 опубликовала руководство по тестированию на проникновение новейшего протокола IPMI 2.0 и его реализаций различными поставщиками. [10]
Некоторые источники в 2013 году советовали не использовать старую версию IPMI [5] из-за проблем безопасности, связанных с конструкцией и уязвимостями контроллеров управления основной платой (BMC). [11] [12]
Однако, как и для любого другого интерфейса управления, передовые методы обеспечения безопасности диктуют размещение порта управления IPMI в выделенной локальной или виртуальной локальной сети управления, доступной только доверенным администраторам. [13]
Последние улучшения безопасности спецификации IPMI
Спецификация IPMI была обновлена с помощью RAKP + и более сильного шифра, взломать который с вычислительной точки зрения непрактично. [14] В результате поставщики предоставили исправления, устраняющие эти уязвимости. [ необходима цитата ]
Организация DMTF разработала безопасную и масштабируемую спецификацию интерфейса под названием Redfish для работы в современных средах центров обработки данных. [15]
Возможные решения
Некоторые потенциальные решения существуют вне стандарта IPMI, в зависимости от проприетарных реализаций. Использование коротких паролей по умолчанию или взлома «cipher 0» можно легко преодолеть с помощью сервера RADIUS для аутентификации, авторизации и учета через SSL, что типично для центров обработки данных или любых средних и крупных развертываний. Сервер RADIUS пользователя может быть настроен для безопасного хранения AAA в базе данных LDAP с использованием FreeRADIUS / OpenLDAP или Microsoft Active Directory и связанных служб.
Доступ на основе ролей обеспечивает способ реагирования на текущие и будущие проблемы безопасности путем увеличения количества ограничений для более высоких ролей. Доступ на основе ролей поддерживается с тремя доступными ролями: администратор, оператор и пользователь.
В целом, роль пользователя имеет доступ к BMC только для чтения и не имеет возможности удаленного управления, такой как включение и выключение питания, или возможность просмотра или входа в основной процессор на материнской плате. Следовательно, любой хакер с ролью Пользователь не имеет доступа к конфиденциальной информации и нулевого контроля над системой. Роль пользователя обычно используется для отслеживания показаний датчика после того, как SNMP-предупреждение было получено программным обеспечением для мониторинга сети SNMP.
Роль оператора используется в редких случаях, когда система зависает, для создания файла аварийного сбоя / дампа ядра NMI и перезагрузки или выключения и включения системы. В таком случае Оператор также будет иметь доступ к системному программному обеспечению для сбора файла аварийного дампа / дампа ядра.
Роль администратора используется для настройки BMC при первой загрузке во время ввода системы в эксплуатацию при первой установке.
Поэтому разумной передовой практикой является отключение использования ролей оператора и администратора в LDAP / RADIUS и включение их только тогда, когда это необходимо администратору LDAP / RADIUS. Например, в RADIUS для роли может быть изменен параметр Auth-Type на:
Тип аутентификации: = Отклонить
Это предотвратит успешное выполнение RAKP-хэш-атак, поскольку имя пользователя будет отклонено сервером RADIUS.
История версий
Стандартная спецификация IPMI претерпела ряд изменений: [16] [17]
- Версия 1.0 была анонсирована 16 сентября 1998 г .: базовая спецификация
- v1.5, опубликовано 21 февраля 2001 г .: добавлены функции, включая IPMI через LAN, IPMI через последовательный порт / модем и оповещение LAN.
- v2.0, опубликовано 12 февраля 2004 г .: добавлены функции, включая последовательный порт по локальной сети, групповые управляемые системы, улучшенную аутентификацию, межсетевой экран с микропрограммным обеспечением и поддержку VLAN.
- Версия 2.0 версии 1.1, опубликованная 1 октября 2013 г .: исправлены исправления, уточнения и дополнения, а также добавлена поддержка адресации IPv6.
- Версия 2.0, редакция 1.1 Исправление 7, опубликовано 21 апреля 2015 г .: исправлены исправления, уточнения, дополнения [18]
Реализации
- HP Integrated Lights-Out , реализация HP IPMI
- Dell DRAC , внедрение IPMI в Dell
- GNU FreeIPMI , программное обеспечение IPMI, предоставляемое под Стандартной общественной лицензией GNU
- IBM Remote Supervisor Adapter , продукты IBM для внеполосного управления, включая реализации IPMI
- MegaRAC , продукт внеполосного управления AMI и прошивка OEM IPMI, используемая, например , в материнских платах ASUS , Tyan и Supermicro.
- Avocent MergePoint Embedded Management Software, встроенное ПО OEM IPMI, используемое, например, в материнских платах Gigabyte и Dell.
Смотрите также
- Стандартный формат предупреждений (ASF), еще один стандарт управления платформой
- Настольная и мобильная архитектура для системного оборудования (DASH), еще один стандарт управления платформой
- Intel Active Management Technology (AMT), продукт Intel для внеполосного управления, как альтернатива IPMI
- Морской окунь (спецификация)
- Management Component Transport Protocol (MCTP), протокол низкого уровня, используемый для управления аппаратными компонентами.
- Open Platform Management Architecture (OPMA), стандарт внеполосного управления AMD
- Системный служебный процессор на некоторых машинах SPARC
- Проводное управление (WfM)
Рекомендации
- ^ "Supermicro IPMI - что это такое и что он может для вас сделать?" . Проверено 27 февраля 2018 .
- ^ Введение в интерфейс интеллектуального управления платформой
- ^ «Интеллектуальный интерфейс управления платформой; список адоптеров» . Intel . Проверено 9 августа 2014 .
- ^ Чернис, П.Дж. (1985). «Петрографические исследования специальных образцов теплопроводности УРГ-2 и УР-6». DOI : 10.4095 / 315247 . Цитировать журнал требует
|journal=
( помощь ) - ^ а б "Система подслушивания в вашем компьютере - Шнайер о безопасности" . Schneier.com . 2013-01-31 . Проверено 5 декабря 2013 .
- ^ «Дневник обработчиков InfoSec - IPMI: Взлом серверов, которые« выключены » » . Isc.sans.edu . 2012-06-07 . Проверено 29 мая 2015 .
- ^ Гудин, Дэн (16 августа 2013 г.). « « Кровососущая пиявка »подвергает 100 000 серверов риску мощных атак» . Arstechnica.com . Проверено 29 мая 2015 .
- ^ Энтони Дж. Бонкоски; Русь Белявский; Дж. Алекс Халдерман (2013). «Освещение проблем безопасности, связанных с управлением сервером Lights-Out. Семинар Usenix по наступательным технологиям» (PDF) . Usenix.org . Проверено 29 мая 2015 .
- ^ «Сообщество проекта OpenBMC объединяется в Linux Foundation, чтобы определить реализацию стека микропрограмм BMC с открытым исходным кодом - Linux Foundation» . Фонд Linux . 2018-03-19 . Проверено 27 марта 2018 .
- ^ «Metasploit: Руководство для тестеров на проникновение в IPMI и BMC» . Rapid7.com . 2013-07-02 . Проверено 5 декабря 2013 .
- ^ «Уязвимость обхода аутентификации в IPMI 2.0 RAKP из-за использования нулевого шифра» . websecuritywatch.com . 2013-08-23 . Проверено 5 декабря 2013 .
- ^ Дэн Фармер (22 августа 2013 г.). «ИПМИ: Товарный поезд в ад» (PDF) . fish2.com . Проверено 5 декабря 2013 .
- ^ Кумар, Рохит (2018-10-19). «Базовые практики управления безопасностью BMC и IPMI» . ServeTheHome . Проверено 23 декабря 2019 .
- ^ https://www.intel.com/content/www/us/en/servers/ipmi/ipmi-second-gen-interface-spec-v2-rev1-1.html
- ^ https://www.infoq.com/news/2015/08/redfish
- ^ «Интерфейс интеллектуального управления платформой: что такое IPMI?» . Intel . Проверено 9 августа 2014 .
- ^ «Интерфейс интеллектуального управления платформой. Технические характеристики» . Intel . Проверено 9 августа 2014 .
- ^ IPMI - Ver2.0 Rev1.1 Errata7
Внешние ссылки
- Веб-сайт технических ресурсов Intel IPMI
- Сравнение распространенных проектов с открытым исходным кодом IPMI Software
- coreIPM Project - прошивка с открытым исходным кодом для управления основной платой IPMI
- GNU FreeIPMI
- ipmitool
- ipmiutil
- OpenIPMI
- IPMeye - Централизованный внеполосный доступ для предприятий / часть платформы VendorN OneDDI