2011-01-16

MacのターミナルでVirtualboxゲストOS(NAT)にSSH接続する方法

ちょっと、はまったので、まとめてみる。Ubuntu Serverとか初めて触ってみようかと・・・

環境

ホストOS:MacOSX10.6.6
Virtualbox4.0.0
ゲストOS:Ubuntu Server 10.10(ベースと開発ツールのみの最小構成インストール)

ポイントはゲストOS(ここではUbuntu Server 10.10)のネットワークがNATである点です。
また、ゲストOSで外部ネットワーク(インターネット)には接続できるが、ホストOSからゲストOSに接続するためにポートフォワーディングを設定する必要があります。
あとは、ホストOSからゲストOSへのSSHコマンドの書き方です。(なんと、ここではまっていたようだ。)

ポートフォワーディングの設定

VirtualBox付属のマニュアル通りにします。バージョン毎に変更されているので公式ドキュメントを確認しましょう。
VirtualBoxパッケージを表示し、MacOS内にUserManual.pdfが入っています。
バージョン4.0.0では86ページに「6.3.1 Configuring port forwarding with NAT」に解説されています。

ホストOS(ここではMacOSX)のターミナルから以下のコマンドを実行します。
$VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,,2222,,22"
※"VM name"はVirtualBoxにインストールしたゲストOSの名前に置き換えます。
※2222はホスト側のポート設定、22はゲスト側のポート設定です。

GUIでも設定、確認できます。
VirtualBoxで対象のゲストOSを選択し、「設定」をクリック。
「ネットワーク」を選択し、「高度」を展開します。
「ポートフォワーディング」ボタンをクリック。
※上のコマンドで設定した値が図のように表示されます。

接続

ホストOS(ここではMacOSX)からターミナルで接続する場合以下のようになります。
$ssh -p 2222 -l username localhost
※ポイントは、ポートはホスト側の2222を指定する。ホスト名はlocalhostと指定する。です。

localhostと指定するのがよくわからなかったので、ホストのIPアドレスやホスト名を指定していたら接続できないです。

もう少し理解するためにSSHを勉強せねば、あとネットワークもわかってるようなわかってないようなです。(まだまだ、中途半端だな)

--

0 件のコメント: