La Interfaz de Gestió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 gestión y monitoreo independientemente de la CPU , el firmware ( BIOS o UEFI ) y el sistema operativo del sistema anfitrión . IPMI define un conjunto de interfaces utilizadas por los administradores de sistemas para la gestión fuera de banda de los sistemas informáticos y el monitoreo de su funcionamiento. Por ejemplo, IPMI proporciona una forma de administrar una computadora que puede estar apagada o que no responde de otra manera 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 la instalación de 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 utilizando un monitor y un teclado. Usando 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 gestión de sistemas basado en IPMI administre varios servidores distintos. Como especificación de interfaz a nivel de hardware basada en mensajes, IPMI funciona independientemente del sistema operativo (OS) para permitir que los administradores administren un sistema de forma remota en ausencia de un sistema operativo o del software de gestión del sistema . Por lo tanto, las funciones de IPMI pueden funcionar en cualquiera de los tres escenarios siguientes:
Los administradores de sistemas pueden utilizar la mensajería IPMI para supervisar el estado de la plataforma (como las temperaturas del sistema, los voltajes, los ventiladores, las fuentes de alimentación y la intrusión en el chasis); para consultar información de inventario; para revisar los registros de hardware de condiciones fuera de rango; o para realizar procedimientos de recuperación como la emisión de solicitudes desde una consola remota a través de las mismas conexiones, por ejemplo, el apagado y reinicio del sistema, o la configuración de temporizadores de vigilancia . El estándar también define un mecanismo de alerta para que el sistema envíe una trampa de eventos de plataforma (PET) de 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, típicamente una conexión de red de área local (LAN). IPMI también puede funcionar después de que el sistema operativo se haya iniciado y expone los datos y estructuras de administración al software de administración del sistema. IPMI prescribe solo 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 serial fuera de banda directa o a través de una conexión LAN de banda lateral a 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 ancho de banda y seguridad limitados.
Los sistemas que cumplen con la versión 2.0 de IPMI también pueden comunicarse mediante comunicación serial sobre LAN , por lo que la salida de la consola serial se puede ver de forma remota a través de la LAN. Los sistemas que implementan IPMI 2.0 normalmente 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 el número 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 conocen como controladores satélite. Los controladores satélite dentro del mismo chasis se conectan al BMC a través de la interfaz del sistema llamada Bus/Puente de administración de plataforma inteligente (IPMB), una implementación mejorada de I²C (circuito integrado entre dispositivos). El BMC se conecta a los controladores satélite u otro BMC en otro chasis a través del bus o puente del Controlador de administración de plataforma inteligente (IPMC). Puede administrarse con el Protocolo de control de administración remota (RMCP), un protocolo de cable especializado definido por esta especificación. RMCP+ (un protocolo basado en UDP con autenticación más fuerte que RMCP) se utiliza para IPMI sobre LAN.
Varios proveedores desarrollan y comercializan chips BMC. Un BMC utilizado para aplicaciones integradas puede tener memoria limitada y requerir código de firmware optimizado para la implementación de la funcionalidad completa de IPMI. 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 es proporcionado por varios proveedores. Un repositorio de unidades reemplazables en campo (FRU) contiene el inventario, como la identificación del proveedor y el fabricante, de los 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 administración de 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 administra la interfaz entre el software de administración del sistema y el hardware de la plataforma. El BMC tiene su firmware y RAM dedicados.
Los distintos tipos de sensores integrados en el sistema informático informan al BMC sobre parámetros como la temperatura , la velocidad de los ventiladores de refrigeración , el estado de la energía , el estado del sistema operativo (OS), etc. El BMC supervisa los sensores y puede enviar alertas a un administrador del sistema a través de la 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 medidas correctivas, como restablecer o apagar y encender el sistema para que vuelva a funcionar un SO que se ha quedado colgado. Estas capacidades reducen el costo total de propiedad de un sistema.
Los sistemas que cumplen con la versión 2.0 de IPMI también pueden comunicarse mediante comunicación serial sobre LAN , por lo que la salida de la consola serial se puede ver de forma remota a través de la LAN. Los sistemas que implementan IPMI 2.0 normalmente 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 del BMC incluyen SMBuses , una consola serial RS-232 , líneas de dirección y datos y un IPMB, que permite al BMC aceptar mensajes de solicitud IPMI de otros controladores de administración en el sistema.
Una conexión serial 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, según las preocupaciones de seguridad del usuario.
Existe una creciente preocupación por la seguridad general en relación con los BMC como infraestructura cerrada. [5] [6] [7] [8] OpenBMC es un proyecto BMC de código abierto colaborativo de Linux Foundation . [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 y las implementaciones de varios proveedores. [10]
Algunas fuentes en 2013 desaconsejaban el uso de la versión anterior de IPMI, [5] debido a problemas de seguridad relacionados con el diseño y las vulnerabilidades de los controladores de administración de placa base (BMC). [11] [12]
Sin embargo, como cualquier otra interfaz de administración, las mejores prácticas de seguridad dictan la ubicación del puerto de administración de 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 fuerte que es computacionalmente impráctico de descifrar. [14] Como resultado, los proveedores han proporcionado parches que solucionan estas vulnerabilidades. [ cita requerida ]
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, según las implementaciones propietarias. El uso de contraseñas cortas predeterminadas o trucos de "cifrado 0" se pueden superar fácilmente con el uso de un servidor RADIUS para autenticación, autorización y contabilidad (AAA) sobre SSL, como es habitual en un centro de datos o 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 ofrece una forma de responder a los problemas de seguridad actuales y futuros al aumentar la cantidad de restricciones para los roles más altos. El acceso basado en roles se admite con tres roles disponibles: Administrador, Operador y Usuario.
En general, el rol de Usuario tiene acceso de solo lectura al BMC y no tiene capacidad de control remoto, como apagar y encender el sistema o 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. El rol de Usuario se utiliza normalmente para supervisar las lecturas de los sensores, después de que el software de supervisión de red SNMP haya recibido una alerta SNMP.
El rol de Operador se utiliza en el caso poco frecuente de que un sistema se bloquee, para generar un archivo de volcado de memoria o de fallo de NMI y reiniciar o apagar y encender el sistema. En tal caso, el Operador también tendrá acceso al software del sistema para recopilar el archivo de volcado de memoria o de fallo.
La función de administrador se utiliza para configurar el BMC en el primer arranque durante la puesta en servicio del sistema cuando se instala por primera vez.
Por lo tanto, la práctica más 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 Auth-Type de un rol a:
Tipo de autenticación := Rechazar
Al hacerlo, se 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 una serie de iteraciones: [16] [17]
{{cite journal}}
: Requiere citar revista |journal=
( ayuda )