La Interfaz de administración de plataforma inteligente ( IPMI ) es un conjunto de especificaciones de interfaz de computadora para un subsistema de computadora autónomo que proporciona capacidades de administración y monitoreo independientemente de la CPU , el firmware ( BIOS o UEFI ) y el sistema operativo del sistema host . IPMI define un conjunto de interfaces utilizadas por los administradores de sistemas para la gestión fuera de banda de sistemas informáticos y el seguimiento de su funcionamiento. Por ejemplo, IPMI proporciona una forma de administrar una computadora que puede estar apagada o que no responde mediante el uso de una conexión de red al hardware en lugar de a un sistema operativo o shell de inicio de sesión. Otro caso de uso puede ser instalar un sistema operativo personalizado de forma remota. Sin IPMI, la instalación de un sistema operativo personalizado puede requerir que un administrador esté físicamente presente cerca de la computadora, inserte un DVD o una unidad flash USB que contenga el instalador del sistema operativo y complete el proceso de instalación usando un monitor y un teclado. Con IPMI, un administrador puede montar una imagen ISO , simular un DVD de instalación y realizar la instalación de forma remota. [1]
La especificación está dirigida por Intel y se publicó por primera vez el 16 de septiembre de 1998. Cuenta con el respaldo de más de 200 proveedores de sistemas informáticos, como Cisco , Dell , [2] Hewlett Packard Enterprise e Intel. [3] [4]
El uso de una interfaz y un protocolo estandarizados permite que el software de administración de sistemas basado en IPMI administre servidores múltiples y dispares. Como especificación de interfaz a nivel de hardware basada en mensajes, IPMI opera independientemente del sistema operativo (SO) para permitir a los administradores administrar un sistema de forma remota en ausencia de un sistema operativo o del software de administración del sistema . Por tanto, las funciones de IPMI pueden funcionar en cualquiera de tres escenarios:
Los administradores del sistema pueden utilizar la mensajería IPMI para monitorear el estado de la plataforma (como temperaturas del sistema, voltajes, ventiladores, fuentes de alimentación e intrusión en el chasis); consultar información de inventario; revisar los registros de hardware de condiciones fuera de rango; o para realizar procedimientos de recuperación, como emitir solicitudes desde una consola remota a través de las mismas conexiones, por ejemplo, apagar y reiniciar el sistema, o configurar temporizadores de vigilancia . El estándar también define un mecanismo de alerta para que el sistema envíe una captura de eventos de plataforma (PET) del Protocolo de administración de red (SNMP) simple .
El sistema monitoreado puede estar apagado, pero debe estar conectado a una fuente de energía y al medio de monitoreo, generalmente una conexión de red de área local (LAN). IPMI también puede funcionar después de que se haya iniciado el sistema operativo y expone estructuras y datos de administración al software de administración del sistema. IPMI prescribe únicamente la estructura y el formato de las interfaces como estándar, mientras que las implementaciones detalladas pueden variar. Una implementación de IPMI versión 1.5 puede comunicarse a través de una conexión LAN o serie directa fuera de banda o mediante una conexión LAN de banda lateral con un cliente remoto . La conexión LAN de banda lateral utiliza el controlador de interfaz de red (NIC) de la placa. Esta solución es menos costosa que una conexión LAN dedicada, pero también tiene problemas de seguridad y ancho de banda limitados.
Los sistemas compatibles con IPMI versión 2.0 también pueden comunicarse vía serie a través de LAN , por lo que la salida de la consola serie se puede ver de forma remota a través de la LAN. Los sistemas que implementan IPMI 2.0 generalmente también incluyen KVM sobre IP , medios virtuales remotos y funcionalidad de interfaz de servidor web integrado fuera de banda, aunque estrictamente hablando, estos se encuentran fuera del alcance del estándar de interfaz IPMI.
DCMI (Data Center Manageability Interface) es un estándar similar basado en IPMI pero diseñado para ser más adecuado para la gestión de centros de datos : utiliza las interfaces definidas en IPMI, pero minimiza la cantidad de interfaces opcionales e incluye control de limitación de energía, entre otras diferencias.
Un subsistema IPMI consta de un controlador principal, llamado controlador de administración de placa base (BMC) y otros controladores de administración distribuidos entre diferentes módulos del sistema que se denominan controladores satélite. Los controladores satelitales dentro del mismo chasis se conectan al BMC a través de la interfaz del sistema llamada Bus/Bridge de gestión de plataforma inteligente (IPMB), una implementación mejorada de I²C (circuito interintegrado). El BMC se conecta a controladores satélite u otro BMC en otro chasis a través del bus o puente del Controlador de gestión de plataforma inteligente (IPMC). Puede gestionarse con el Protocolo de control de gestión remota (RMCP), un protocolo de conexión especializado definido por esta especificación. RMCP+ (un protocolo basado en UDP con autenticación más segura que RMCP) se utiliza para IPMI a través de LAN.
Varios proveedores desarrollan y comercializan chips BMC. Un BMC utilizado para aplicaciones integradas puede tener memoria limitada y requerir un código de firmware optimizado para implementar la funcionalidad IPMI completa. Los BMC altamente integrados pueden proporcionar instrucciones complejas y proporcionar la funcionalidad completa fuera de banda de un procesador de servicios. El firmware que implementa las interfaces IPMI lo proporcionan varios proveedores. Un repositorio de unidades reemplazables en campo (FRU) contiene el inventario, como el ID del proveedor y el fabricante, de dispositivos potencialmente reemplazables. Un repositorio de registros de datos de sensores (SDR) proporciona las propiedades de los sensores individuales presentes en la placa. Por ejemplo, la placa puede contener sensores de temperatura, velocidad del ventilador y voltaje.
El controlador de gestión de la placa base (BMC) proporciona la inteligencia en la arquitectura IPMI. Es un microcontrolador especializado integrado en la placa base de una computadora , generalmente un servidor . El BMC gestiona la interfaz entre el software de gestión del sistema y el hardware de la plataforma. BMC tiene su firmware y RAM dedicados.
Los diferentes tipos de sensores integrados en el sistema informático informan al BMC sobre parámetros como temperatura , velocidades del ventilador de refrigeración , estado de energía , estado del sistema operativo (OS), etc. El BMC monitorea los sensores y puede enviar alertas a un administrador del sistema a través del red si alguno de los parámetros no se mantiene dentro de los límites preestablecidos, lo que indica una posible falla del sistema. El administrador también puede comunicarse de forma remota con el BMC para tomar algunas acciones correctivas, como restablecer o apagar y encender el sistema para que un sistema operativo bloqueado vuelva a funcionar. Estas capacidades reducen el costo total de propiedad de un sistema.
Los sistemas compatibles con IPMI versión 2.0 también pueden comunicarse vía serie a través de LAN , por lo que la salida de la consola serie se puede ver de forma remota a través de la LAN. Los sistemas que implementan IPMI 2.0 generalmente también incluyen KVM sobre IP , medios virtuales remotos y funcionalidad de interfaz de servidor web integrado fuera de banda, aunque estrictamente hablando, estos se encuentran fuera del alcance del estándar de interfaz IPMI.
Las interfaces físicas al BMC incluyen SMBus , una consola serial RS-232 , líneas de dirección y datos y un IPMB, que permite al BMC aceptar mensajes de solicitud de IPMI de otros controladores de administración en el sistema.
Una conexión serie directa al BMC no está cifrada ya que la conexión en sí es segura. La conexión al BMC a través de LAN puede utilizar o no cifrado dependiendo de las preocupaciones de seguridad del usuario.
Existe una creciente preocupación por la seguridad general de los BMC como infraestructura cerrada. [5] [6] [7] [8] OpenBMC es un proyecto BMC de código abierto de colaboración de la Fundación Linux . [9]
El 2 de julio de 2013, Rapid7 publicó una guía para pruebas de penetración de seguridad del último protocolo IPMI 2.0 e implementaciones de varios proveedores. [10]
En 2013, algunas fuentes desaconsejaban el uso de la versión anterior de IPMI, [5] debido a preocupaciones de seguridad relacionadas con el diseño y las vulnerabilidades de los controladores de gestión de placa base (BMC). [11] [12]
Sin embargo, al igual que con cualquier otra interfaz de administración, las mejores prácticas de seguridad dictan la ubicación del puerto de administración IPMI en una LAN o VLAN de administración dedicada restringida a administradores confiables. [13]
La especificación IPMI se ha actualizado con RAKP+ y un cifrado más potente que resulta computacionalmente impráctico de descifrar. [14] Como resultado, los proveedores han proporcionado parches que solucionan estas vulnerabilidades. [ cita necesaria ]
La organización DMTF ha desarrollado una especificación de interfaz segura y escalable llamada Redfish para funcionar en entornos de centros de datos modernos. [15]
Existen algunas soluciones potenciales fuera del estándar IPMI, dependiendo de implementaciones propietarias. El uso de contraseñas cortas predeterminadas o hacks de "cifrado 0" se puede superar fácilmente con el uso de un servidor RADIUS para autenticación, autorización y contabilidad a través de SSL, como es típico en un centro de datos o en cualquier implementación de tamaño mediano a grande. El servidor RADIUS del usuario se puede configurar para almacenar AAA de forma segura en una base de datos LDAP utilizando FreeRADIUS/OpenLDAP o Microsoft Active Directory y servicios relacionados.
El acceso basado en roles proporciona una manera de responder a los problemas de seguridad actuales y futuros aumentando las restricciones para los roles superiores. El acceso basado en roles se admite con tres roles disponibles: Administrador, Operador y Usuario.
En general, la función de Usuario tiene acceso de solo lectura al BMC y no tiene capacidad de control remoto, como ciclo de encendido o la capacidad de ver o iniciar sesión en la CPU principal de la placa base. Por lo tanto, cualquier pirata informático con el rol de Usuario no tiene acceso a información confidencial ni control sobre el sistema. La función de Usuario se utiliza normalmente para monitorear las lecturas del sensor, después de que el software de monitoreo de red SNMP haya recibido una alerta SNMP.
La función de Operador se utiliza en el raro caso de que un sistema se cuelgue, para generar un archivo de volcado de núcleo/caída de NMI y reiniciar o reiniciar el sistema. En tal caso, el Operador también tendrá acceso al software del sistema para recopilar el archivo de volcado de núcleo/fallo.
La función de Administrador se utiliza para configurar el BMC en el primer arranque durante la puesta en marcha del sistema cuando se instala por primera vez.
Por lo tanto, la mejor práctica prudente es deshabilitar el uso de los roles de Operador y Administrador en LDAP/RADIUS y habilitarlos solo cuando los necesite el administrador de LDAP/RADIUS. Por ejemplo, en RADIUS se puede cambiar la configuración del tipo de autenticación de una función a:
Tipo de autenticación: = Rechazar
Hacerlo evitará que los ataques de hash RAKP tengan éxito ya que el servidor RADIUS rechazará el nombre de usuario.
La especificación estándar IPMI ha evolucionado a través de varias iteraciones: [16] [17]
{{cite journal}}
: Citar diario requiere |journal=
( ayuda )