Indice

Port forwarding con Virtualbox

Autore: Fabio Di Matteo
Ultima revisione: 13/10/2009

In questo articolo vedremo come abilitare il port forwarding in un sistema virtuale tramite Virtualbox. Lo scenario sara' costituito da una macchina virtuale con installato CentOS-5.3 e una macchina ospitante in cui girera' Debian GNU/Linux. Faremo in modo che tutte le connessioni ssh provenienti dalla rete locale e da internet dirette alla macchina ospitante verranno invece indirizzate alla macchina virtuale.

Preparativi

Prima di tutto e' necessario abilitare il port forwarding nel router , ovvero indirizzare tutte le connessioni in ingresso sulla porta 22 (ssh) sull'ip interno della nostra macchina ospitante. Disabilitare eventualmente qualunque server ssh (o altro che stia in ascolto sulla porta 22).

Regole di nat per Virtualbox

Tenendo presente che per Guest si intende la macchina virtuale e per Host la macchina ospitante e' necessario impartire le seguenti regole a macchina virtuale spenta :

VBoxManage setextradata CentOS-5.3 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh2/Protocol" TCP
VBoxManage setextradata CentOS-5.3 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh2/GuestPort" 22 		
VBoxManage setextradata CentOS-5.3 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh2/HostPort"  22 		

dove:

Se si desidera inoltrare porte inferiori alla 1024 e' necessario avere i privilegi di root.

Rimuovere le regole per il nat di Virtualbox

Per rimuovere le regole e' sufficiente reimpostarle senza il valore. Nel nostro caso :

VBoxManage setextradata CentOS-5.3 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh2/Protocol" 
VBoxManage setextradata CentOS-5.3 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh2/GuestPort"  		
VBoxManage setextradata CentOS-5.3 "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh2/HostPort"   		

Elencare tutte le regole

Per visualizzare tutte le regole applicate ad una macchina virtuale e' sufficiente:

 VBoxManage getextradata CentOS-5.3 enumerate

dove: