Linuxを日常的に使う実験ブログ

VirtualBox上のゲストOSにSSHで接続する

 2015-08-26

 2015-08-26

 Linux全般

こんにちは。今回のテーマは『VirtualBox上のLinuxにSSHで接続する』です。VirtualBoxにはクリップボードの共有化などのホストOSとゲストOSをつなぐ便利な機能がいろいろありますが、ssh接続でホストOSからゲストOSを操作してしまうというのも場合に酔っては操作性を向上させる一つの手段だと思います。今回はホストOS、ゲストOSともにLinuxという想定で書いていますが、内容自体はOSに関わらず応用が効くと思います。 【関連記事】 VirtualBox上のArch Linuxで共有フォルダ機能を使う [adsense02] 【目次】 ゲストOSにssh接続できると便利 ポートフォワーディングを活用する方法 ブリッジアダプタを使用する方法

ゲストOSにssh接続できると便利

本記事を呼んでる読者の方に説明は不要と思いますが、sshとは暗号や認証を用いてリモートコンピュータと通信するプロトコルです。簡単に言えば他のコンピュータを遠隔操作する技術と言えます。 VirtualBox上のゲストOSにssh接続して作業したいという機会は結構あると思います。ゲストOSがCUI環境でウェブブラウザが使用できない時などウェブ上の情報をコピー&ペーストすることは少々難しいですが、ホストOSからssh接続で操作すれば操作感はホストOSのままゲストOSを操作することができます。

ポートフォワーディングを活用する方法

ポートフォワーディングを設定するとポートを通してホストOSとゲストOSをつなぐことで簡単にssh接続できます。

VirtualBoxでの設定

ネットワーク画面でNATを選択肢して「高度」設定画面から「ポートフォワーディング」を押します。 01 次にポートフォワーディングを設定します。この時設定するポートはホスト側は使用していないポート番号(本記事では2222)を指定します。ホスト側のポート情報はホストOS上で以下のコマンドで調べられます。

$ netstat

ゲストOSを側では/etc/ssh/sshd_configに指定されているポート(デフォルトでは大抵22)を設定します。 [設定例] 02

ホスト側からの接続操作

準備は整いました。接続する際にはホストOS側で以下のコマンドでssh接続しましょう。

$ ssh -p <ホストポート番号> <ログインユーザー>@localhost

実行例

$ ssh -p 2222 root@localhost

初回は確認画面が出るので、“yes”を押し、その後にログインパスワードを入力してゲストOSに入ります。

ブリッジアダプタを使用する方法

ブリッジアダプタを使用することにより、ゲストOSにもホストOSと同様に既存の物理ネットワーク上に参加させることができます。これによりIPを指定することでLAN内部のコンピューターに接続するようにssh接続が可能になります。

VirtualBoxでの設定

ネットワーク設定画面でブリッジアダプターを選択肢ます。 03

ゲストOSのIPアドレスの確認

ゲストOS側でifconfigでIPアドレスを確認しましょう。

$ ifconfig

ホスト側からの接続操作

ではホストOSからssh接続してみましょう。以下のようなコマンドを実行します。

$ ssh <ログインユーザー>@<ゲストOSのIP>

実行例

$ ssh root@192.***.***.**

初回は確認画面が出るので、“yes”を押し、その後にログインパスワードを入力してゲストOSに入ります。

最後に

記事を書くにあたりネット上の情報も収集しましたが、NAT+ホストオンリーアダプターを併用する方法を解説しているページをよく見かけました。手法には好みがあると思いますので、興味がある方は本記事だけでなく色々調べてみると面白いと思います。因みに筆者はゲストOSLFS環境を構築する際にssh接続することで作業がとても捗りました。 [adsense]