Articulo de referencia

Interfaz de gestión de plataforma inteligente

La Interfaz de Gestión de Plataforma Inteligente ( IPMI ) es un conjunto de especificaciones de interfaz de computadora para un subsistema informático autónomo que proporciona c...

La Interfaz de Gestión de Plataforma Inteligente ( IPMI ) es un conjunto de especificaciones de interfaz de computadora para un subsistema informático autónomo que proporciona capacidades de gestión y monitorización 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 sistemas informáticos y la monitorización de su funcionamiento. Por ejemplo, IPMI proporciona una forma de gestionar una computadora que puede estar apagada o que no responde, utilizando una conexión de red al hardware en lugar de a un sistema operativo o una consola de inicio de sesión. Otro caso de uso puede ser la instalación remota de un sistema operativo personalizado . 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. 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á liderada 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 ]

Funcionalidad

El uso de una interfaz y un protocolo estandarizados permite que el software de administración de sistemas basado en IPMI gestione múltiples servidores 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 gestionar un sistema de forma remota en ausencia de un sistema operativo o del software de administración del sistema . Por lo tanto, las funciones de IPMI pueden funcionar en cualquiera de los tres escenarios siguientes:

  • antes de que se haya iniciado el sistema operativo (lo que permite, por ejemplo, la monitorización remota o el cambio de la configuración del BIOS).
  • cuando el sistema está apagado
  • Tras un fallo del sistema operativo o del sistema , la característica clave de IPMI, en comparación con la gestión del sistema en banda, es que permite el acceso remoto al sistema operativo mediante SSH. 

Los administradores de sistemas pueden usar la mensajería IPMI para monitorear el estado de la plataforma (como temperaturas, voltajes, ventiladores, fuentes de alimentación e intrusiones en el chasis); consultar información de inventario; revisar registros de hardware de condiciones fuera de rango; o realizar procedimientos de recuperación, como enviar 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 trampa de evento de plataforma (PET) del Protocolo simple de administración de red (SNMP).

El sistema monitorizado puede estar apagado, pero debe estar conectado a una fuente de alimentación y al medio de monitorización, normalmente 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 datos y estructuras de gestión al software de gestión del sistema. IPMI solo prescribe 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 mediante una conexión LAN o serie directa fuera de banda o mediante 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 un ancho de banda limitado y problemas de seguridad.

Los sistemas compatibles con IPMI versión 2.0 también pueden comunicarse mediante comunicación serial a través de LAN , lo que permite visualizar de forma remota la salida de la consola serial a través de la LAN. Los sistemas que implementan IPMI 2.0 suelen incluir también KVM sobre IP , medios virtuales remotos y funcionalidad de interfaz de servidor web integrado fuera de banda, aunque, estrictamente hablando, estas funcionalidades quedan 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 potencia, entre otras diferencias.

Componentes IPMI

El diagrama de arquitectura IPMI muestra la banda lateral BMC a través de SMBUS.
Interfaces con el controlador de gestión de la placa base (BMC)

Un subsistema IPMI consta de un controlador principal, denominado controlador de gestión de placa base (BMC), y otros controladores de gestión distribuidos entre diferentes módulos del sistema, conocidos como controladores satélite. Los controladores satélite, ubicados en el mismo chasis, se conectan al BMC mediante la interfaz del sistema denominada Bus/Puente de Gestión de Plataforma Inteligente (IPMB) , una implementación mejorada de I²C (Inter-Integrated Circuit). El BMC se conecta a los controladores satélite o a otro BMC en otro chasis mediante el 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 comunicación especializado definido por esta especificación. RMCP+ (un protocolo basado en UDP con una autenticación más robusta 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 un código de firmware optimizado para la implementación de la funcionalidad IPMI completa. Los BMC altamente integrados pueden proporcionar instrucciones complejas y la funcionalidad fuera de banda completa de un procesador de servicio. El firmware que implementa las interfaces IPMI es proporcionado por varios proveedores. Un repositorio de unidades reemplazables en campo (FRU) almacena 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.

Controlador de gestión de zócalo

BMC totalmente integrado como un solo chip en una placa base de servidor.

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 un ordenador , generalmente un servidor . El BMC gestiona la interfaz entre el software de gestión del sistema y el hardware de la plataforma. El BMC tiene su propio firmware y memoria RAM.

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 alimentación , el estado del sistema operativo (SO), etc. El BMC supervisa los sensores y puede enviar alertas al 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 un posible fallo del sistema. El administrador también puede comunicarse remotamente con el BMC para tomar medidas correctivas, como reiniciar o apagar y encender el sistema para que el SO vuelva a funcionar si se ha bloqueado. Estas capacidades reducen el coste total de propiedad del sistema.

Los sistemas compatibles con IPMI versión 2.0 también pueden comunicarse mediante comunicación serial a través de LAN , lo que permite visualizar de forma remota la salida de la consola serial a través de la LAN. Los sistemas que implementan IPMI 2.0 suelen incluir también KVM sobre IP , medios virtuales remotos y funcionalidad de interfaz de servidor web integrado fuera de banda, aunque, estrictamente hablando, estas funcionalidades quedan fuera del alcance del estándar de interfaz IPMI.

Las interfaces físicas del BMC incluyen SMBuses , una consola serie 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 gestión del sistema.

La 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 o no utilizar cifrado, dependiendo de las necesidades de seguridad del usuario.

Existen preocupaciones sobre la seguridad general de los BMC, como parte de la infraestructura con un acceso y control tan amplio y de bajo nivel sobre los servidores. Las implementaciones de los proveedores se basan en software propietario y de código cerrado, con poca o ninguna transparencia respecto a cómo se fabrican y qué vulnerabilidades de seguridad contienen. [ 5 ] [ 6 ] [ 7 ] [ 8 ] .

El BMC (especialmente los BMC de Aspeed) puede integrar una GPU de nivel básico (que normalmente solo admite aceleración de hardware 2D) para funciones básicas de visualización y administración remota.

OpenBMC es un proyecto colaborativo, gratuito y de código abierto de la Linux Foundation para la gestión de servidores BMC, cuyo objetivo es crear un software de gestión de BMC transparente, bien documentado y probado que alivie estos problemas. [ 9 ]

Seguridad

Cuestiones históricas

El 2 de julio de 2013, Rapid7 publicó una guía para realizar pruebas de penetración de seguridad del protocolo IPMI 2.0 más reciente y de 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 gestión de placa base (BMC). [ 11 ] [ 12 ]

Sin embargo, como cualquier otra interfaz de administración, las mejores prácticas de seguridad dictan que el puerto de administración IPMI se ubique en una LAN o VLAN de administración dedicada y restringida a administradores de confianza. [ 13 ]

Últimas mejoras de seguridad en la especificación IPMI

La especificación IPMI se ha actualizado con RAKP+ y un cifrado más robusto que es computacionalmente impracticable de descifrar. [ 14 ] Como resultado, los proveedores han proporcionado parches que corrigen estas vulnerabilidades.

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 ]

Posibles soluciones

Existen algunas soluciones potenciales fuera del estándar IPMI, que dependen de implementaciones propietarias. El uso de contraseñas cortas predeterminadas o ataques de "cifrado cero" se puede superar fácilmente con un servidor RADIUS para autenticación, autorización y contabilidad (AAA) sobre SSL, como es habitual en centros de datos o en cualquier implementación de tamaño mediano a grande. El servidor RADIUS del usuario se puede configurar para almacenar de forma segura la información AAA en una base de datos LDAP mediante 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, aumentando el nivel de restricción para los roles de mayor jerarquía. El acceso basado en roles admite tres roles disponibles: Administrador, Operador y Usuario.

En general, el rol de Usuario tiene acceso de solo lectura al BMC y carece de capacidad de control remoto, como reiniciar el sistema o acceder a la CPU principal de la placa base. Por lo tanto, cualquier atacante con el rol de Usuario no tiene acceso a información confidencial ni control alguno sobre el sistema. El rol de Usuario se suele utilizar para monitorizar las lecturas de los sensores tras recibir una alerta SNMP mediante un software de monitorización de red SNMP.

El rol de operador se utiliza en el caso excepcional de que un sistema se bloquee, para generar un archivo de volcado de memoria 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.

El rol 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 práctica más prudente es deshabilitar el uso de los roles de Operador y Administrador en LDAP/RADIUS, y habilitarlos solo cuando el administrador de LDAP/RADIUS los necesite. Por ejemplo, en RADIUS, se puede cambiar la configuración Auth-Type de un rol a:

Tipo de autenticación := Rechazar

De este modo, se evitará que los ataques de hash RAKP tengan éxito, ya que el nombre de usuario será rechazado por el servidor RADIUS.

Historial de versiones

La especificación estándar IPMI ha evolucionado a través de varias iteraciones: [ 16 ] [ 17 ]

  • La versión 1.0 se anunció el 16 de septiembre de 1998: especificación base.
  • v1.5, publicado el 21 de febrero de 2001: se añadieron funciones que incluyen IPMI sobre LAN, IPMI sobre Serial/Módem y Alertas de LAN.
  • v2.0, publicada el 12 de febrero de 2004: se añadieron funciones como comunicación serial a través de LAN, sistemas gestionados por grupos, autenticación mejorada, cortafuegos de firmware y compatibilidad con VLAN.
  • v2.0 revisión 1.1, publicada el 1 de octubre de 2013: modificada para corregir erratas, aclarar dudas y añadir anexos, además de incorporar compatibilidad con el direccionamiento IPv6.
  • v2.0 revisión 1.1 Errata 7, publicada el 21 de abril de 2015: modificada para erratas, aclaraciones y adiciones [ 18 ]

Implementaciones

Véase también

Referencias

  1. "Supermicro IPMI: ¿Qué es y qué puede hacer por usted?" . Archivado del original el 27 de febrero de 2019. Consultado el 27 de febrero de 2018 .
  2. Introducción a la interfaz de gestión de la plataforma inteligente
  3. "Interfaz de administración de plataforma inteligente; lista de adoptantes" . Intel . Consultado el 9 de agosto de 2014 .
  4. Chernis, PJ (1985). "Análisis petrográficos de muestras de conductividad térmica especial URL-2 y URL-6" . doi : 10.4095/315247 .{{cite journal}}: Para citar una revista se requiere |journal=( ayuda )
  5. 1 2 "El sistema de escuchas en su computadora - Schneier sobre seguridad" . Schneier.com . 31 de enero de 2013. Consultado el 5 de diciembre de 2013 .
  6. "InfoSec Handlers Diary Blog - IPMI: Hacking de servidores que están apagados"" . Isc.sans.edu . 2012-06-07 . Consultado el 2015-05-29 .
  7. ^ Goodin, Dan (16 de agosto de 2013). ""Sanguijuela chupasangre" pone en riesgo 100.000 servidores ante potentes ataques . Arstechnica.com . Consultado el 29 de mayo de 2015 .
  8. Anthony J. Bonkoski; Russ Bielawski; J. Alex Halderman (2013). "Iluminando los problemas de seguridad que rodean la administración de servidores sin supervisión. Taller Usenix sobre tecnologías ofensivas" (PDF) . Usenix.org . Consultado el 29 de mayo de 2015 .
  9. "La comunidad del proyecto OpenBMC se reúne en The Linux Foundation para definir la implementación de código abierto de la pila de firmware de BMC - The Linux Foundation" . The Linux Foundation . 19 de marzo de 2018. Consultado el 27 de marzo de 2018 .
  10. "Metasploit: Guía para probadores de penetración sobre IPMI y BMC" . Rapid7.com . 2 de julio de 2013. Consultado el 5 de diciembre de 2013 .
  11. "Vulnerabilidad de omisión de autenticación en IPMI 2.0 RAKP mediante el uso del cifrado cero" . websecuritywatch.com . 23 de agosto de 2013. Consultado el 5 de diciembre de 2013 .
  12. Dan Farmer (22 de agosto de 2013). "IPMI: Tren de carga al infierno" (PDF) . fish2.com . Consultado el 5 de diciembre de 2013 .
  13. Kumar, Rohit (19 de octubre de 2018). "Prácticas básicas de seguridad para la gestión de BMC e IPMI" . ServeTheHome . Consultado el 23 de diciembre de 2019 .
  14. "Especificación IPMI, V2.0, Rev. 1.1: Documento" . Intel . Consultado el 11 de junio de 2022 .
  15. "Redfish: Una nueva API para la gestión de servidores" . InfoQ . Consultado el 11 de junio de 2022 .
  16. "Interfaz de gestión de plataforma inteligente: ¿Qué es IPMI?" . Intel . Consultado el 9 de agosto de 2014 .
  17. "Interfaz de administración de plataforma inteligente; Especificaciones" . Intel . Consultado el 9 de agosto de 2014 .
  18. IPMI - Versión 2.0 Revisión 1.1 Errata7
  • Sitio web de recursos técnicos de Intel IPMI
  • Comparación de proyectos de software IPMI de código abierto comunes
  • GNU FreeIPMI
  • Herramienta ipmi
  • ipmiutil
  • OpenIPMI
  • Proyecto coreIPM : firmware de código abierto para la gestión de placas base IPMI.
  • IPMeye : acceso centralizado fuera de banda para empresas / Parte de la plataforma OneDDI de VendorN