LâInterface de gestion intelligente de matĂ©riel, (ou IPMI, Intelligent Platform Management Interface) est un ensemble de spĂ©cifications dâinterfaces pour un composant autonome des serveurs informatiques. Ce composant est un ordinateur (parfois utilisant un noyau Linux) indĂ©pendant du processeur, des firmwares (BIOS, UEFI), du systĂšme dâexploitation du systĂšme hĂŽte. Il fournit des capacitĂ©s de gestion et de supervision matĂ©rielles.
IPMI dĂ©finit des interfaces pour la gestion hors bande (en) des systĂšmes informatiques. Ainsi, IPMI fournit, Ă distance, la capacitĂ© dâĂ©teindre, allumer ou rĂ©amorcer un ordinateur en utilisant une connexion rĂ©seau secondaire, mĂȘme si le systĂšme principal est hors dâusage. Il est aussi possible dâinstaller Ă distance le systĂšme dâexploitation en utilisant la « console LAN » (console dĂ©portĂ©e sur le rĂ©seau).
La premiÚre version de la spécification (v1.0) a été initiée par Intel et publiée le . La derniÚre version publiée est la v2.0 revision 1.1 Errata 7[1], le 21 avril 2015, qui corrige des errata sur la version v2.0 du 12 février 2004. Le protocole est pris en charge par de nombreux constructeurs informatiques.
Son successeur est Redfish (en)[2].
Fonctionnalités
[modifier | modifier le code]Lâutilisation dâinterface et de protocoles standardisĂ©s permet dâutiliser des logiciels de gestion de systĂšmes utilisant IPMI pour gĂ©rer des serveurs indĂ©pendamment du fabricant. IPMI fonctionne indĂ©pendamment du systĂšme dâexploitation principal. Il est installĂ© sur un ordinateur indĂ©pendant. Certaines implĂ©mentations utilisent un noyau Linux. IPMI permet aux administrateurs de gĂ©rer un matĂ©riel Ă distance mĂȘme si le systĂšme hĂŽte est absent ou hors dâusage.
Les fonctions dâIPMI sont les suivantes :
- avant le démarrage du systÚme (permettant le réglage des firmwares) ;
- quand le systĂšme est Ă©teint (par exemple, pour lâallumer) ;
- aprĂšs la dĂ©faillance du systĂšme dâexploitation (pour le redĂ©marrer) ;
- IPMI fonctionnant sur un ordinateur, il peut devenir inopĂ©rant et imposer une coupure Ă©lectrique pour ĂȘtre rĂ©initialisĂ©.
Lâadministrateur systĂšme peut utiliser IPMI pour :
- superviser le statut du systÚme (températures, tensions, ventilateurs, alimentation, intrusion matérielle) ;
- inventorier le matériel ;
- utiliser des procédures de récupération ;
- configurer des chiens de garde ;
- recevoir des alertes SNMP.
Le systĂšme gĂ©rĂ© peut ĂȘtre Ă©teint mais il doit ĂȘtre alimentĂ© Ă©lectriquement et connectĂ© numĂ©riquement (rĂ©seau local, par exemple). IPMI continue de fonctionner mĂȘme si le systĂšme principal a dĂ©marrĂ©. La version 1.5 de la spĂ©cification permet la communication par une interface rĂ©seau dĂ©diĂ©e ou partagĂ©e ou une connexion sĂ©rie. La connexion partagĂ©e utilise la carte rĂ©seau de la carte mĂšre. Ceci est moins coĂ»teux quâune interface dĂ©diĂ©e, mais pose des problĂšmes de sĂ©curitĂ©.
Un systÚme utilisant la version 2.0 peut aussi utiliser une console LAN qui redirige la sortie console sur le réseau.
ĂlĂ©ments de lâIPMI
[modifier | modifier le code]
Le systĂšme IPMI est composĂ© dâun contrĂŽleur principal (baseboard management controller: BMC) et de contrĂŽleurs satellites. Ils communiquent par lâinterface IPMB (Intelligent Platform Management Bus/Bridge). LâIPM est une dĂ©rivation dâun bus I2C. Le BMC peut communiquer avec dâautres chassis par le protocole RMCP (Remote Management Control Protocol).
Sécurité
[modifier | modifier le code]Le support par IPMI du protocole RAKP rend celui-ci vulnérable à une attaque offline sur les mots de passe, celui-ci révélant un HMAC des mots de passe[3], exposant ceux-ci à des attaques efficaces. Ceci conduit à déconseiller l'exposition du protocole sur un réseau non sécurisé, ou de préférer des alternatives plus modernes telles que l'API Redfish maintenant proposées par la plupart des BMC.
Implémentations
[modifier | modifier le code]- OpenIPMI[4]
- ipmiutil[5]
- ipmitool[6]
- GNU FreeIPMI, l'implémentation IPMI du projet GNU.
Liens externes
[modifier | modifier le code]- (en) Spécification sur le site web d'Intel.
Notes et références
[modifier | modifier le code]- â (en)« Intelligent Platform Management Interface Specification Second Generation » (consultĂ© le )
- â (en)« IPMI is dead, long live Redfish » (consultĂ© le )
- â (en)« CVE - CVE-2013-4786 », sur cve.mitre.org (consultĂ© le )
- â (en) OpenIPMI, un pilote de pĂ©riphĂ©rique IPMI pour GNU/Linux et une bibliothĂšque logicielle. (Logiciel libre)
- â (en) ipmiutil, utilitaires client IPMI (Logiciel libre)
- â (en) ipmitool (Logiciel libre)
