Virtualbox5+Ubuntu Sever14にOSXホストからSSH接続する

 先日作成したプレーンな仮想マシン内のUbuntu Server14giraffydev.hatenablog.com
これにOSX 側からSSH接続できるように設定する。

IPアドレスを固定する

仮想マシンのコンソールでpingを打つと外には出ているよう。ifconfigすると文字化けしていた。
f:id:giraffyk1:20150804140837p:plain
f:id:giraffyk1:20150804141203p:plain
応急的に

giraffy@pe-dev:~$ export LANG=C

と打ち込んで英語にして作業をすすめる。キーボードも英語で認識されているようだ。
f:id:giraffyk1:20150804142615p:plain
10.0.2.15が割り振られている模様。これを固定して一々 IPアドレスを調べずともSSH接続できるようにしておく。

Virtualboxのマネージャーからネットワークの変更を行おうとすると「ネットワークアダプタの有効化」が出来ない。
f:id:giraffyk1:20150804140500p:plain
一旦仮想マシンを終了して作業を行う。まずは、Virtualbox全体の設定として仮想ネットワークアダプタを作成する必要があるらしい。Virtualbox→環境設定→ネットワークを選択ののち[ホストオンリーネットワーク(H)]タブを選び+ボタンを押すとvboxnet0という仮想ネットワークカードが生成された。

f:id:giraffyk1:20150804143236p:plain

IPアドレス(i)はおこのみで良い。私の場合は192.168.56.101(画像は101となってる)とした。これがアダプタのネットワークアドレスとなる。
f:id:giraffyk1:20150804143558p:plain

Virtualboxマネージャーで「ネットワークアダプターを有効化(E)」がチェックできるようになっている。チェックしつつ、割り当て(A)をホストオンリーアダプターとし、名前はさきほど作った「boxnet0」とし、サイド立ち上げてみる。

・・・とここまで操作していて、ネットワークが切れてしまったようだ。

調査するとアダプター1のNAT設定を上書きしてそこへホストオンリーアダプターを設定していたため外部に出れれなくなっていたようだ。仮想マシンはホストオンリーアダプターからNATを経由してホストマシンのGWから出て行くので、これではだめ。

というわけでアダプター1はNATに戻す。アダプター2に先ほどのアダプターを設定して仮想マシンを再起動。
f:id:giraffyk1:20150804163937p:plain
10.0.2.15がeth0に割り振られた状態に戻った。routeコマンドでも10.0.2.2がゲートウェイに戻ったようだ。

続いて、アダプター2が割り振ったeth1の情報を追加する

giraffy@pe-dev:~$ sudo vi /etc/network/interfaces

f:id:giraffyk1:20150804164731p:plain

赤字部分が追加されたeth1の情報。IPアドレスを固定して192.168.56.111とした。gatewayなどはNATの兼ね合いがあるので設定しないほうが良いという事で最低限、addressとnetmaskだけ設定しておいた。

ネットワークカードeth1を立ち上げる。
f:id:giraffyk1:20150804164935p:plain

無事認識されたようだ。
f:id:giraffyk1:20150804165014p:plain

pingで外部への接続を確認する。問題なし。

SSHdのインストールとホストからの接続

giraffy@pe-dev:~$ sudo apt-get update
中略
giraffy@pe-dev:~$ sudo apt-get install openssh-server

でインストール

giraffy@pe-dev:~$ /etc/ini.d/ssh start
giraffy@pe-dev:~$

無言…。psコマンドでプロセスを一応確認した後、OSXのterminal.appからアクセス。

me:~ me$ ssh giraffy@192.168.56.111
giraffy@192.168.56.111's password: 
Welcome to Ubuntu 14.04.2 LTS (GNU/Linux 3.16.0-30-generic x86_64)

 * Documentation:  https://help.ubuntu.com/

  System information as of Tue Aug  4 16:38:02 JST 2015

  System load:  0.88              Processes:           81
  Usage of /:   12.7% of 8.50GB   Users logged in:     0
  Memory usage: 5%                IP address for eth0: 10.0.2.15
  Swap usage:   0%

  Graph this data and manage this system at:
    https://landscape.canonical.com/

112 packages can be updated.
62 updates are security updates.

Last login: Tue Aug  4 16:38:02 2015
giraffy@pe-dev:~$ 

無事ログイン出来た。

最後にhostsに略称を設定しておく。

me:~ me$ sudo vi /private/etc/hosts
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
##
127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost
192.168.56.111  pedev
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
~                                                                               
"/private/etc/hosts" 10L, 235C

以後

me:~ me$ ssh giraffy@pedev

にて接続ができるようになった。

次回からはiterm2で接続することにしよう。

参考: macからVirtualBox VMにssh接続する - Qiita