VirtualBoxのGuestOSにSSHで接続する

僕はMacなので、VMWareじゃなくてVirtualBoxを使っています(VMWare Fusionは有料)。で、そのGuestOSにSSHで接続する設定をしたのでメモ。


ネットワークはNATを使っているので、ポートフォワードの設定が必要です。
Macのターミナルを立ち上げて以下のコマンドを入力

VBoxManage setextradata "Ubuntu10.04" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/Protocol" TCP
VBoxManage setextradata "Ubuntu10.04" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/GuestPort" 22
VBoxManage setextradata "Ubuntu10.04" "VBoxInternal/Devices/e1000/0/LUN#0/Config/guestssh/HostPort" 2222
  • Ubuntu10.04の部分は使用しているGuestOSの名前を指定
  • e1000はGuestOSで使用しているNICによって変える必要があり


この設定が終わったら、Macから以下のように接続
(GuestOS側でSSHの設定をしておく必要があります)

ssh -p 2222 hoge@localhost

~/.ssh/configに以下の設定をしておくと楽

Host vbox
  HostName localhost
  User hoge
  Port 2222
ssh vbox


virtualboxのマニュアルを見ると一行で設定できるのかも
Chapter 6. Virtual networking

VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,,2222,,22"
  • 参考

仮想化された日々:VirtualBoxのNAT接続でポートフォワード - livedoor Blog(ブログ)
VirtualBox の Guest OS (Archlinux, NAT) に ssh で接続する. - 落書き、時々落学
ttt: VirtualBox 2.0.0のFreeBSDに、NATとport forwardingを設定してsshでログインできるようにしてみたり、ネットワーク周りの環境整備