8
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

VirtualBoxで各種OSを安全にSSH接続する方法

Last updated at Posted at 2014-08-05

VirtualBoxの設定

まず、VirtualBoXの設定です。Cmd+,を押して、VirtualBoxのネットワーク設定を行います。具体的には、NATネットワーク、ホストオンリーネットワークに設定を追加します。追加する項目は、デフォルトでいいでしょう。設定には、DNSなども含まれるため、アドレスを固定したい場合などは、適時変更してください。

次に、ゲストOSのネットワーク設定です。簡単には、ゲストOSのネットワーク設定でアダプタ1をNAT、準仮想化ネットワークにします。次に、アダプタ2でホストオンリーアダプター、準仮想化ネットワークにします。

アドレスの固定方法ですが、VirtualBoxの設定からの方法が最も簡単です。

ネットワーク –> ホストオンリーネットワーク

vboxnet0, vboxnet1, vboxnet2 のように複数作成します。

各自アドレスを変更します。ゲストのアドレスは、ホストのアドレスと合わせてください。

先ほど設定したホストオンリーネットワークのvboxnet”n”を各種OSのネットワーク設定に指定します。

この設定により、接続コマンドを固定できます。

ゲスト側の設定

設定を終えたら、ホストからゲストに通信ができるかを確認してみましょう。

まずは、LAN Address(アドレス)の確認からですね。基本的に、Arch Linuxにはifconfigが入ってないので、インストールしておきましょう。

$ sudo pacman -S net-tools openssh

$ ifconfig

$ ifconfig | tr ' ' '\n' | grep 192

では、次に、SSH Server(サーバー)の設置と、場合によっては、Firewall(ファイアウォール)の設定を変更しなければなりません。

具体的には、SSH ServerをDaemon(デーモン)で起動し、サーバーに設定した接続ポートへのアクセスをFirewallに許可させなければなりません。

SSH Serverの設定を変更します。ここでは、デフォルトのままで良いです。変更したい方は、/etc/ssh_configを変更して下さい。

$ sudo systemctl start sshd

SSH Serverを起動時に有効にします。

$ sudo systemctl enable sshd.service

一応、ホストからアクセスできるか確認してみましょう。

$ ssh manjaro@192.168.56.101

Firewallを有効にし、ステータスを確認します。

$ cp /etc/iptables/{simple_firewall,iptables}.rules

$ systemctl enable iptables.service

ゲスト側の設定を/etc/ssh/sshd_configにて行います。最低限のセキュリティを強化します。

/etc/ssh/sshd_config
Port 55010

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile  .ssh/authorized_keys

PasswordAuthentication no

SSHの設定

公開鍵の発行と受け渡しです。ホスト側で行います。一般的なスクリプトを使います。

$ ssh-keygen -t rsa

$ brew install ssh-copy-id

$ ssh-copy-id -i ~/.ssh/id_rsa.pub manjaro@192.168.56.101

SShデーモンの再起動は以下のコマンドを実行します。ゲスト側で行います。

$ sudo systemctl restart sshd

接続は、以下の様な感じで行えます。

$ ssh manjaro@192.168.56.101 -p 55010

Cygwinの設定

CygwinのOpenSSHを利用し、SSH Serverを立ち上げてみます。これにより、Cygwinを導入しているWindowsにもSSH接続可能になります。便利です。

$ apt-cyg install openssh

$ ssh-host-config -y

$ cygrunsrv -S sshd

$ passwd

ファイアウォールの設定を変更します。ポート22を開けましょう。これは、Windows側の設定で行います。

試しに接続してみましょう。

ssh -v username@192.168.56.101

次に、サーバーを停止し、設定ファイルを編集します。

$ cygrunsrv -E sshd

$ vim /etc/sshd_config

あとは、サーバーを起動し、クライアントから接続するだけです。

# サーバー(ゲスト側)
$ cygrunsrv -S sshd

# クライアント(ホスト側)
$ ssh username@192.168.56.101 -p 55101

Windowsの自動ログイン

ちなみに、パスワードが設定されると、自動でログインできなくなります。Windowsの自動ログインを解除するには、以下の手順が必要です。

  • [スタート] ボタンをクリックし、「netplwiz」と入力して、Enter キーを押します。
  • [ユーザー アカウント] ダイアログ ボックスで、自動的にログオンするときに使うアカウントをクリックします。設定を変更できる場合は、[ユーザーがこのコンピューターを使うには、ユーザー名とパスワードの入力が必要] チェック ボックスをオフにします。
  • [OK] をクリックします。
  • [自動ログオン] ダイアログ ボックスでユーザーのパスワードを 2 回入力し、[OK] をクリックします。
8
9
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
8
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?