▤ Homelab

Gestione remota fuori banda: IPMI, iDRAC, iLO e KVM over IP

Cos'è la gestione out-of-band dei server: IPMI, Redfish, iDRAC, iLO e KVM over IP, cosa permettono di fare in un homelab e come tenerli al sicuro in rete.

Quando un server si blocca all'avvio, o un aggiornamento del kernel lo lascia senza rete, l'accesso remoto tramite SSH non serve più. Nei datacenter questo problema è risolto da tempo con la gestione fuori banda (out-of-band): un piccolo computer indipendente, integrato nella scheda madre, che resta raggiungibile anche quando il sistema operativo non risponde o la macchina è spenta. In un homelab con hardware di classe server è una delle funzioni più utili, e allo stesso tempo una delle più delicate dal punto di vista della sicurezza.

Il BMC: un computer dentro il computer

Il cuore della gestione fuori banda è il BMC (Baseboard Management Controller). È un microcontrollore con il proprio firmware, la propria memoria e, di solito, una propria porta di rete dedicata. È alimentato finché la macchina è collegata alla corrente, anche da spenta.

Il BMC può:

  • accendere, spegnere e riavviare il server a distanza;
  • leggere sensori di temperatura, tensione e velocità delle ventole;
  • registrare eventi hardware come errori di memoria o guasti di alimentazione;
  • mostrare la console video e inoltrare tastiera e mouse;
  • montare un'immagine ISO come se fosse un lettore ottico collegato alla macchina.

L'ultima funzione è particolarmente comoda: si può installare un sistema operativo da zero senza mai toccare fisicamente il server.

Gli standard e i nomi commerciali

IPMI

IPMI (Intelligent Platform Management Interface) è lo standard storico, supportato da molti produttori. Si usa spesso tramite lo strumento a riga di comando ipmitool. Per esempio, per leggere lo stato dell'alimentazione o i sensori:

ipmitool -I lanplus -H 192.168.10.20 -U admin chassis power status
ipmitool -I lanplus -H 192.168.10.20 -U admin sdr list

IPMI è diffuso ma vecchio, e alcune sue versioni hanno debolezze note nel meccanismo di autenticazione. Per questo non dovrebbe mai essere esposto su reti non fidate.

Redfish

Redfish è lo standard più moderno, basato su un'interfaccia REST sopra HTTPS con dati in formato JSON. È più facile da integrare in script e strumenti di automazione, e i BMC recenti lo supportano accanto a IPMI.

Nomi dei produttori

Ogni grande produttore ha la propria implementazione con un nome commerciale: iDRAC per Dell, iLO per HPE, XClarity Controller per Lenovo, mentre molte schede madri server di altri marchi usano un BMC generico con interfaccia web. Le funzioni di base sono simili; cambiano interfaccia, licenze e dettagli.

Licenze e funzioni a pagamento

Su alcune piattaforme la console remota completa, quella che mostra lo schermo anche dopo l'avvio del sistema operativo, richiede una licenza avanzata. Su un server usato conviene verificare quale livello di licenza è installato, perché fa una grande differenza nell'uso quotidiano. Le funzioni di accensione, spegnimento e lettura dei sensori sono invece quasi sempre disponibili.

E se non ho un server?

Mini PC e computer desktop di solito non hanno un BMC. Esistono alternative:

  1. Intel AMT, presente su alcuni computer aziendali con piattaforma vPro, offre accensione remota e, in certi casi, console a distanza.
  2. KVM over IP esterni: piccoli dispositivi che si collegano all'uscita video e a una porta USB del computer, catturano l'immagine e simulano tastiera e mouse. Esistono anche progetti open source basati su schede come il Raspberry Pi.
  3. Prese smart per spegnere e riaccendere fisicamente la macchina, combinate con l'impostazione del firmware che riaccende il computer al ritorno della corrente.

Nessuna di queste soluzioni è completa come un BMC integrato, ma insieme coprono la maggior parte delle situazioni.

La sicurezza prima di tutto

Un BMC ha un controllo totale sulla macchina: può riavviarla, montare un disco di avvio e vedere la console. Chi lo compromette possiede di fatto il server. Inoltre, il firmware dei BMC ha avuto nel tempo vulnerabilità serie, e su hardware usato potrebbe non essere aggiornato.

Le regole di base:

  • rete separata: collegare la porta di gestione a una rete o VLAN dedicata, non raggiungibile dalla rete degli ospiti né da Internet;
  • mai esposto in rete pubblica: per l'accesso da fuori si passa da una VPN verso la rete di casa;
  • credenziali cambiate: su hardware usato le credenziali predefinite o quelle del vecchio proprietario vanno sostituite subito;
  • firmware aggiornato: quando possibile, aggiornare il firmware del BMC prima di metterlo in servizio;
  • servizi superflui disattivati: se non serve IPMI via rete, lo si disabilita e si usa solo l'interfaccia web o Redfish.

Uso pratico in un homelab

Con il BMC configurato, alcune operazioni diventano banali. Si può spegnere il server di notte e riaccenderlo con un comando la mattina. Si può reinstallare l'hypervisor montando l'ISO da remoto. Si possono raccogliere temperature e velocità delle ventole in un sistema di monitoraggio, per accorgersi in anticipo di un filtro intasato o di una ventola che si sta guastando.

Nel mio lavoro trovo che il registro degli eventi del BMC sia spesso la prima fonte da consultare quando una macchina si riavvia senza motivo apparente: errori di memoria correggibili o cali di tensione lasciano tracce lì prima che altrove.

In sintesi

  • Il BMC è un controller indipendente che gestisce il server anche quando il sistema operativo non risponde.
  • IPMI è lo standard storico, Redfish quello moderno basato su REST; iDRAC e iLO sono implementazioni commerciali.
  • La console remota completa può richiedere una licenza: va verificata sull'usato.
  • Senza BMC si possono usare Intel AMT, KVM over IP esterni o prese smart.
  • La porta di gestione va su una rete separata, mai esposta a Internet, con firmware e credenziali aggiornati.
MM
Marco Marzaduri

Marco Marzaduri si occupa di cybersecurity, informatica forense e sviluppo web. Laureato in informatica, unisce il rigore dell'analisi tecnica all'attenzione per le persone che usano la tecnologia.

Leggi anche