Security Dojo

go down the rabbit hole...
it en

Laboratorio virtuale in casa - parte 3

2022-05-08 5 min read fud0

Dopo il primo articolo introduttivo e il secondo in cui abbiamo visto Proxmox, nella terza puntata di oggi vedremo la soluzione basata su VMware ESXi.

Procediamo con l’installazione utilizzando la seguente configurazione:

  • tastiera e mouse collegati (porte USB posteriori)
  • chiavetta USB con Ventoy (porta USB frontale)
  • cavo video HDMI
  • cavo di rete collegato alla porta Ethernet 2.5Gbps

PROBLEMA 1: Una volta avviato il setup dal menu di avvio ci troviamo in breve di fronte ad una schermata di errore dal titolo “No Network Adapters”.

VMware ESXi - Errore iniziale installazione

Provando a cambiare la porta di rete e usando quella a 1Gbps, la situazione non cambia. In particolare, come evidenziato in questo articolo “Homelab considerations for vSphere 7” il problema sembra dovuto all’abbandono del supporto dei driver legacy VMKlinux.
Si tratta di una scelta potenzialmente problematica per molte soluzioni “casalinghe”, basate su hardware non certificato e che magari utilizzano schede di rete con chipset Realtek. C’è da dire che la scelta è ampiamente descritta anche all’interno del blog ufficiale VMware qui in quest post “What is the Impact of the VMKlinux Driver Stack Deprecation?”.

Qui sotto un’altra serie di riferimenti trovati online a riguardo sul problema:

La soluzione suggerita è quella di utilizzare un adattatore Ethernet USB in modo da riuscire a visualizzare correttamente almeno una interfaccia di rete. Nel mio caso ho usato questo dispositivo preso nel lontano 2016 e da usare in caso di necessità con un vecchio MacBook Pro.

VMware ESXi - Rankie USB 3.0 to Gigabit Ethernet Adapter

Una volta collegato adattatore, sull’altra porta USB frontale, e il cavo di rete ho proceduto all’installazione di VMware ESXi 7 seguendo i vari passaggi:

  1. Schermata di benvenuto iniziale
  2. Accettazione EULA
  3. Selezione del disco d’installazione (il Kingston da 500gb installato di default)
  4. Selezione del layout di tastiera (US Default)
  5. Configurazione password di root
  6. Conferma finale dell’installazione con cancellazione e partizionamento del disco

PROBLEMA 2: L’installazione si blocca improvvisamente all'81%.
Come riportato nel post “Solution: ESXi Installation with USB NIC only fails at 81%”, la causa dell’errore sarebbe da ricercare nell’impossibilitá dell’installer di assegnare l’interfaccia USB (tipicamente “vusb#") come default per la gestione del sistema. Si aspetterebbe infatti di trovare una periferica con nome “vmnic#”.

Nonostante l’errore, il sistema è stato correttamente installato anche se alcune delle impostazioni (es. la password di root) non sono state salvate. Una volta riavviato il sistema, usando il tasto F2 per accedere alla modalità di configurazione. Ricordiamo che è sufficiente usare una password vuota per l’utente root. Seguiamo il menu “System Customization > Network Restore Options > Restore Network Settings” per poi uscire. Una volta ritornati nella schermata riassuntiva vedremo finalmente un IP valido a cui poterci collegare da interfaccia web.

VMware ESXi - Main page

PROBLEMA 3: Questo trucchetto non funziona al 100% visto che comunque una volta riavviata la macchina ci troveremo di nuovo a dover ripetere le operazioni. La configurazione di rete non viene salvata e ci ritroviamo puntualmente di fronte all’indicazione di IP 0.0.0.0.
Anche tentando di utilizzare un IP statico o di selezionare l’interfaccia vusb0 come default adapter dalla console ESXi (via “System Customization > Configure Management Network > Network Adapters") non si risolve il problema. Il device è de-selezionato di nuovo ad ogni riavvio.

I driver installati di default, ovvero quelli cdce, purtroppo sembrano non essere sufficienti. Ripieghiamo dunque sulla versione community USB Network Native Driver for ESXi. Dopo averli caricati sul server mediante il “Datastore browser":

VMware ESXi - USB Community driver upload

procediamo a seguire le istruzioni riportate per installarli correttamente.

Prima di tutto peró abilitiamo console shell o la possibilitá di collegarsi via SSH tramite gli appositi menu:

VMware ESXi - Enable console shell

Quindi accediamo o da remoto via SSH o da console ESXi (tasti ALT+F1) per poter digitare i seguenti comandi:

# Attivazione della "Maintenance Mode"
esxcli system maintenanceMode set -e true
# Installiamo il driver
esxcli software component apply -d "/vmfs/volumes/datastore1/temp_uploads/ESXi703-VMKUSB-NIC-FLING-51233328-component-18902399.zip"
# Viene richiesto il reboot
reboot

Il nuovo driver per l’adattatore USB è ora uther (es. Networking > Physical NICs via interfaccia web) e le impostazioni con DHCP o IP statico vengono mantenute correttamente anche dopo riavvii successivi.

Il passo successivo è ora “liberarci” dell’adattatore USB e far funzionare la scheda di rete da 2.5Gbps.

VMware ESXi - Network Adapters available

Ancora una volta ci vengono in aiuto i driver Community sul portale Fling VMware. Come si può notare nella lista dei chipset compare anche l'Intel Ethernet Controller I225-V. In maniera simile a quanto fatto prima, dopo averlo caricato via web, procediamo a installare il nuovo driver.

# Attivazione della "Maintenance Mode", se non è giá attiva
esxcli system maintenanceMode set -e true
# Installiamo il driver
esxcli software component apply -d "/vmfs/volumes/datastore1/temp_uploads/Net-Community-Driver_1.2.7.0-1vmw.700.1.0.15843807_19480755.zip"
# Non viene richiesto il reboot, ma facciamolo per sicurezza
reboot

Ora che abbiamo tolto l’adattatore USB e collegato il cavo di rete alla porta da 2.5Gbps, rientriamo nella modalitá di configurazione in System Customization > Configure Management Network > Network Adapters e selezioniamo il nuovo device vmnic0 come default. Confermiamo le impostazioni nel ritornare al menu principale e una volta fatto dovremmo visualizzare le nuove informazioni di rete, con un IP diverso rispetto a prima. Riavviando tutto funziona correttamente, i settaggi non vengono persi.

Il sistema è ora finalmente installato e pronto per creare macchine virtuali. Come nel caso dell’articolo su ProxMox non vedremo qui come fare. Magari in futuro faró qualche altro tutorial o video a riguardo. Prima di concludere una pio di note finali:

  • non dimentichiamoci di impostare la password per l’account root (ancora vuota)
  • se non l’abbiamo giá fatto usciamo dalla modalitá “manutenzione” (anche da interfaccia web)
  • ricordiamoci di inserire una licenza gratuita visto che il periodo di trial dura 60 giorni
  • è giá disponibile la versione update 3d, questa che abbiamo installato è la 3c
  • documentazione ufficiale sul sito VMware

Appuntamento al prossimo articolo che sará anche l’ultimo di questa serie.