トリコロールな猫

猫とつくばと茨城をこよなく愛するnekotricolorのブログです

VirtualBox上にインストールしたUbuntuにSSHで接続する

 

今、「Gitを使って、本番環境のWordpressのテーマを、複数のPC上にあるローカルのテスト環境で確認してから更新できるようにする」という壮大な計画を実行中です。こんな壮大になると思わなかった。まだGit自身には全く手をつけていません。

で。 まずはMacbook Air上にテスト環境を構築するために、VirtualBoxにUbuntuをインストールしました。ホストOS:Macbook AirのOS X Mountain Lion 10.8.2、ゲストOS:Ubuntu Server 12.04 LTSです。 このへんのやり方は以下からどうぞ。

デフォルトでNATを設定してくれるので、これでMacからUbuntuにSSH接続してとりあえずWordpressを入れようと思ったわけです。 ところが。

インストール後、SSH接続しようとしてもつながらず

ふむふむ。10.0.2.15ね。そこはクラスCとかでよくね?

ubunt-virtualbox-ssh-1

じゃあMacのシェルからつなぐか。

ubunt-virtualbox-ssh-2

できない。「あれ?ゲストOSネットにつながってない?でもインストールの時はNTPサーバに接続してたよなあ」と思いつつdigしてみる。 ubunt-virtualbox-ssh-3

うーん。つながってるよなあ。 でホストOSでifconfig -a実行。

ubunt-virtualbox-ssh-4

?????

古い人間なので、ifconfig -aの結果と現実に矛盾があるとパニックに陥ります。 前もこんなことあったなあ。

心を落ち着かせてからググってみたら、ありました。

いろいろ設定しないといけないんですね。

Virtualboxでホストオンリーアダプタを設定

(VirtualBoxVMでなく)VirtualBoxマネージャーの方で、[VirtualBox]->[環境設定]をクリック。表示されたダイアログの[ネットワーク]をクリックします。

ubunt-virtualbox-ssh-5

右側にある[+]のアイコンをクリックします。

ubunt-virtualbox-ssh-6

勝手にvboxnet0というのができます。IPアドレスとかも勝手に割り振られるので特にいじらなくても大丈夫です。DHCPサーバも使えるようになっているはずです。

ubunt-virtualbox-ssh-7

ゲストOS側の設定

今度はVirtualBoxVMの方で、[仮想マシン]->[設定]をクリック。表示されたダイアログの[ネットワーク]をクリックします。 # ゲストOSの電源は切っておきます。

ubunt-virtualbox-ssh-8

[アダプター2]をクリックし、[ネットワークアダプターを有効化]チェックボックスをオンにし、[割り当て]のプルダウンメニューから[ホストオンリーアダプター]を選択します。[名前]のところにさっき追加した「vboxnet0」が表示されると思います。

ubunt-virtualbox-ssh-9

これで、ゲストOSをオンにするとeth1が追加されます。

ubunt-virtualbox-ssh-10

ゲストOS上の/etc/network/interfacesに追加

これだけだとまだつながりません。eth1が有効になっていないんです。 ゲストOS上の/etc/network/interfacesに以下を追加して有効にします。

auto eth1
iface eth1 inet dhcp

ネットワーク再起動で変更をアクティベート。

$ sudo /etc/init.d/networking restart

これでようやくSSH接続できるようになりました。ああもう先が思いやられるわ・・・。

(2013/04/25追記)ブリッジ接続を使う

はてブで「ブリッジ接続かポートフォワーディングでいいはず」とコメントいただいたので試しました。

今回はNAT前提なので使えませんが、確かにブリッジ接続ならなんもしなくてもSSH接続できますねw

VirtualBoxの「設定」から[ネットワーク]タブで[割り当て]ドロップダウンリストから[ブリッジアダプター]を選択します。

ubunt-virtualbox-ssh-11

ポートフォワーディングを使う

以下のエントリ参照。 nekotricolor.hatenadiary.jp