LoginSignup
5
6

More than 5 years have passed since last update.

VirtualBoxを用いたUbuntu 12.04 LTSにおけるSSH接続の流れ

Last updated at Posted at 2013-10-22

改めてVirtualBox上のUbuntuとMacOS XとのSSH接続についてまとめたいと思います。類似の記事はあると思いますが、自分用メモも兼ねていますのでご容赦ください。

動作環境

*ホスト側
MacOS X 10.8.5

*ゲスト側
Ubuntu Server 12.04 LTS

作業手順

Ubuntu Server側の設定

VirtualBoxを用いて、Ubuntu Serverをインストールします。 インストールが完了したら、一旦Ubuntu Serverをシャットダウンします。

VirtualBox Manager画面左上にあるSettingを開きます。その中のNetworkのタブを開き、Adapter2の「Attached to」の項目から「Host-only Adapter」を選択します。

Screen Shot 2013-10-23 at 12.42.26 AM.png

Setting画面を閉じた後、更にメニューバーのPreference → Networkタブの順に開きます(VirtualBox ManagerのSetting画面とPreferenceとでそれぞれ全く別のNetworkタブがあってややこしいですよね、私も最初にここで詰まりました)。

Screen Shot 2013-10-23 at 12.44.04 AM.png

NetworkタブのHost-only Networkの項目に「vboxnet0」とあります。これをダブルクリックすると、このアダプタのIPv4アドレスが記述されています。デフォルトでは「192.168.56.1」となっているはずです。このIPアドレスをコピーしておきましょう。

再度、Ubuntu Serverを起動します。「/etc/network/interfaces」をVimなどで開きます。末尾に以下の内容を追加して保存します。

auto eth1
iface eth1 inet static
address 192.168.56.101
netmask 255.255.255.0

「sudo /etc/init.d/networking restart」と入力してネットワークを再起動します。その後、ifconfigコマンドを入力してeth1(先ほど追加したHost-onlyアダプタ)が有効になっているか確認しましょう。正しく設定されていれば次のようにeth1の内容が表示されるはずです。これで、ホスト側のMacOS Xと通信できる準備が整いました(ちなみにeth0はインターネットなど外部接続のためのアダプタです)。

senachi@MyECsiteProject:~$ ifconfig
eth0      Link encap:Ethernet  HWaddr 08:00:27:19:0d:a5  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe19:da5/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:37 errors:0 dropped:0 overruns:0 frame:0
          TX packets:67 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4597 (4.5 KB)  TX bytes:8844 (8.8 KB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:34:be:bf  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe34:bebf/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:312 errors:0 dropped:0 overruns:0 frame:0
          TX packets:177 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:36925 (36.9 KB)  TX bytes:24425 (24.4 KB)

次の手順でsshをインストールしましょう。「sudo apt-get update」→「sudo apt-get install ssh」

ホームディレクトリ上で「mkdir .ssh」と入力して.sshディレクトリを作ります。また、「chmod 700 .ssh」と入力してパーミッションも変更します。.sshディレクトリに移動して、「touch authorized_keys」と入力して「authorized_keys」ファイルを作成します。

「/etc/ssh/sshd.config」を開き、「# PasswordAuthentication yes」となっている記述を「PasswordAuthenication no」に変更します。

MacOS X側の設定

この時点で、Ubuntu Serverに対してSSHを用いて接続できると思います。「ssh ユーザ名@192.168.56.101」と入力して接続できるか試して見ましょう。ただ、この状態ではパスワードの入力を省略したりできませんし、ゲスト側のIPアドレス入力を省略できないなど不便です。

MacOS X側でも同様に、ホームディレクトリに.sshディレクトリを作成します。公開鍵を作るために.sshディレクトリに移動して、「ssh-keygen」と入力します。途中3回ほど質問されますが何も入力せずにreturnキーを続けて押して良いでしょう。すると、id_rsa.pubという公開鍵ファイルが生成されますので中身をコピーします。

Ubuntu Server側の設定

再びUbuntu Server側の設定に戻ります。先ほどコピーした公開鍵(id_rsa.pubの中身)を「.ssh/authorized_keys」にペーストします。

MacOS X側の設定

「/etc/hosts」に以下の記述を追加します。これで、UbuntuのIPアドレスとホスト名が対応付けられます。

192.168.56.101 ホスト名.local

「.ssh/config」を開き、以下の記述を追加します。

ForwardAgent yes
ServerAliveInterval 120
Hostname ホスト名.local
User ユーザ名

再度、Ubuntu側へSSHで接続してみましょう。今度は、「ssh ホスト名」と入力するだけでUbuntu Serverへログインできるはずです。

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6