Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to SSH to a VirtualBox guest externally through a host? [closed]

Tags:

ssh

virtualbox

I have a Ubuntu VM running on my Windows 7 machine. How do I set it up so that I can access the webserver externally through SSH?

I found steps (Setup SSH access between VirtualBox Host and Guest VMs) to be able to ssh to my guest from my host, but that still leaves me with the problem of accessing it through my router.

I suppose that I could install an SSH server on my Windows machine and then tunnel a few times (though I'm not 100% sure what to use in terms of local, dynamic, etc. or how to set up multiple tunnels?), but is there a way to make the VM directly accessible to my router so I could directly port forward to it?

like image 985
Jordan Avatar asked May 06 '11 03:05

Jordan


People also ask

Can you SSH into a VirtualBox?

Method-1: SSH into VirtualBox using Bridged Network Adapter The first method to SSH into VirtualBox is to use a bridged network adapter in your Virtual Box network Settings.


2 Answers

The best way to login to a guest Linux VirtualBox VM is port forwarding. By default, you should have one interface already which is using NAT. Then go to the Network settings and click the Port Forwarding button. Add a new Rule. As the rule name, insert "ssh". As "Host port", insert 3022. As "Guest port", insert 22. Everything else of the rule can be left blank.

or from the command line

VBoxManage modifyvm myserver --natpf1 "ssh,tcp,,3022,,22" 

where 'myserver' is the name of the created VM. Check the added rules:

VBoxManage showvminfo myserver | grep 'Rule' 

That's all! Please be sure you don't forget to install an SSH server in the VM:

sudo apt-get install openssh-server 

To SSH into the guest VM, write:

ssh -p 3022 [email protected] 

Where user is your username within the VM.

like image 169
vkostromin Avatar answered Dec 09 '22 10:12

vkostromin


Change the adapter type in VirtualBox to bridged, and set the guest to use DHCP or set a static IP address outside of the bounds of DHCP. This will cause the Virtual Machine to act like a normal guest on your home network. You can then port forward.

like image 42
JohnD Avatar answered Dec 09 '22 12:12

JohnD