Интерфейс интеллектуального управления платформой ( 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 могут работать в любом из трех сценариев:
Системные администраторы могут использовать обмен сообщениями 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 состоит из главного контроллера, называемого контроллером управления основной платой (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 была обновлена с помощью 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]
|journal=
( помощь )Викискладе есть медиафайлы, связанные с интерфейсом управления интеллектуальной платформой . |