Aprire servizi con le macchine virtuali in VMware-server con rete NAT



In VMware server ci sono essenzialmente tre modi di configurare la rete nelle macchine virtuali:

Host-only: solo con il sistema ospite

Bridged: uso della rete reale con acquisizione dal server DHCP o configurazione statica

NAT: Network Address Translation (ogni indirizzo della macchina virtuale sfrutta l’indirizzo IP della macchina ospite

Nel primo caso tutto avviene all’interno della macchina virtuale che dialoga con il sistema che la ospita, quindi i servizi saranno accessibili in entrambe le direzioni, ma solo in locale.

Nel secondo caso la macchina virtuale assume un indirizzamento della rete alla quale appartiene il sistema ospitante, ma così potrebbe non avere indirizzi disponibili o essere suscettibile al blocco delle porte di rete in caso di politiche di sicurezza all’interno di reti sicure, i servizi esposti sono però tutti visibili.

Nel terzo caso infine, ma non ultimo, la rete interna viene “translata” verso quella esterna e viceversa, sfruttando la condivisione dell’IP assegnato all’interfaccia di rete del server ospitante.

E’ chiaro che così però non potremmo utilizzare dall’esterno ciò che abbiamo nell’ambiente virtuale, ma utilizzando il NAT avremo un servizio locale che riceverà le richieste sulla porta specifica e le invierà al sottosistema virtuale.

Nell’esempio seguente editando il file /etc/vmware/vmnet8/nat/nat.conf, che si riferisce all’interfaccia vmnet8, aggiungiamo la riga

80 = 172.16.225.130:80

e ammettendo che nessun altro servizio (apache, www) usi quella porta (80) ogni richiesta pervenuta verrà indirizzata alla macchina nattata avente l’indirizzo 172.16.225.130. Quindi se abbiamo un server con apache che gira nella macchina virtuale, possiamo vedere le pagine come localhost da locale, oppure pubblicare il server web che girà però in un ambiente virtuale.

Appena fatta la modifica è necessario far ripartire la rete vmware con:

$ sudo /usr/lib/vmware/net-services.sh restart

e verificare che la porta 80 appartenga al processo vmware-natd

$ sudo netstat -antp|grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN 10803/vmnet-natd

un altro processo importante che è visibile è vmnet-bridge:

/usr/bin/vmnet-bridge -d /var/run/vmnet-bridge-0.pid /dev/vmnet0 eth1

Possiamo usare vari servizi (ftp, samba, ssh, ecc…) usando anche porte non standard, stando però attenti, nel caso di più macchine, che gli indirizzi assegnati siano bloccati nelle tabelle DHCP per evitare confusione.

Nelle schermate che seguono è visibile il sito web che viene erogato dal server Ubuntu 7.04 virtualizzato. L’interfaccia web di gestione (vmware-mui) di vmware-server è accessibile con https://localhost:8333 e permette (javascript permettendo) di intervenire sull’avvio, stop e sospensione delle macchine virtuali.

Enjoy🙂






Info Antonio Doldo
www.toolinux.it - www.virtualboxes.org - adoldo.wordpress.com - Linux user & Android fan

One Response to Aprire servizi con le macchine virtuali in VMware-server con rete NAT

  1. Luigi scrive:

    ok. funziona

Lascia un commento

Effettua il login con uno di questi metodi per inviare il tuo commento:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: