ゲストへのVirtualBoxホストssh


53

現在、ブリッジモードを使用しているMacホストとVirtualBox Linuxゲストがあります。

ホストからゲストに簡単にSSH接続できる必要があります。ホスト名を使用すると便利ですが、IPアドレスを変更しないことでも問題ありません(現在、IPは新しいネットワークに参加するたびに変更され、ホスト名は機能していません)。

ゲストからのインターネットアクセスも必要です。

ネットワーク上の他のマシンはゲストにアクセスする必要はありません。

VirtualBoxネットワークを構成する最良の方法は何ですか?


1
これに関連して、GUIなしでVBのゲストを開始考える:superuser.com/questions/135498/...
はFabricio PH

回答:


36

まず、vboxnet0インターフェイスを作成する必要があります。

VirtualBox> File> Preferences> Network> Host-only Networks> Add(vboxnet0を取得します)

次に、これをホストマシンで実行します。新しいインターフェイスが表示されますvboxnet0

ifconfig

VMをシャットダウンして、次を実行します。

VM's Settings > System > check "Enable I/O APIC."
VM's Settings > Network > Adapter 2 > host-only vboxnet0

ゲストの実行時にVMを起動します

ifconfig

そして、IPを確認してください

次のリンクを確認してください。

  1. https://forums.virtualbox.org/viewtopic.php?f=8&t=40076
  2. http://www.wiredrevolution.com/virtualbox/setup-ssh-access-between-virtualbox-host-and-guest-vms

NATの解決策もありますが、確認していません。

ホストマシンでNATを使用してポート転送を構成する

VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,,2222,,22"

ホストマシンのポート2222を介してLinuxに接続します

ssh -l -p 2222 localhost

静的IPを使用したホストオンリーネットワークの場合は、次を確認してください。

https://stackoverflow.com/questions/5906441/how-to-ssh-to-a-virtualbox-guest-externally-through-a-host/27152153#27152153

Solaris 10およびUbuntu 16.04用ですが、簡単に適応できるはずです。


2
おかげで、私はVirtualBoxポート転送を有効にし、経由で接続できるようになりましたssh localhost -p 7022
トーマスハンター

いいですね、ポートフォワーディングは魅力的です VBoxManageではなくVirtualbox GUIで設定を行いましたが。そこで、ホストIPアドレスとゲストIPアドレスも設定する必要があります。それぞれ127.0.0.1と10.0.2.15でなければなりません。
セバスチャン・ガンズランド

最初の文を少し編集します。(あなたがvboxnet0を取得します)>のVirtualBox>設定>ネットワーク>「ホストオンリーネットワーク」を追加します。読み込みする必要があります
スティーブSwinsburg

ホストオンリーのセットアップでこれをすべて実行しましたが、ホストからsshで接続しようとすると、(タイムアウトするまで)ハングします。他に何かありますか?
クリスウェスティン

37

2つのLinuxマシン(32ビットUbuntuホストと64ビットUbuntu VM)の間で、このポート転送を使用してsshを動作させることができました。

ここに画像の説明を入力してください

次に、ホストシステムから実行します

ssh -p 5679 127.0.0.1

代替5679ポート転送ルールを締結した「ホストポート」と。


8
「ホストIP」と「ゲストIP」を入力せずに、まったく同じことを行いました。
ダミアンカッソー

私の場合、ubuntuイメージにはsshがインストールされていませんでした(予想されていました)。そこで、「apt-get install openssh-server」を実行し、「ssh -p 5679 localhost」で接続できました。他のコメントに基づいて、私はホストまたはゲストIPを配置しませんでした。
ピエールアントワーヌ

2

ポートフォワーディングをいじりたくない場合は、ホストインターフェイスとして表示されるホストのみのアダプターをセットアップし、ゲストのそのサブネット内にIPアドレスを追加できます。

手順:

  • Virtualboxでホストオンリーネットワークを作成します(GUI->設定->ネットワーク)。ifconfigホストを入力すると、次のようなものが表示さvboxnet0れますinet 192.168.50.1
  • ゲストで、IPアドレスを追加します。 ifconfig eth1 192.168.50.101 netmask 255.255.255.0 up
  • ホストで、実行 ssh root@192.168.50.101

参考文献:


1

かなり動き回っている場合は、NATモードで仮想NICを構成することをお勧めします。NATを使用すると、ホスト(PC)はゲストOS用に作成されたプライベートネットワークのDHCPサーバーおよびルーターになります。NATを使用して静的アドレスを設定できると確信しています...

ただし、最善の解決策は、ゲストVMで名前解決が機能しない理由を調べることだと思います:)

https://www.virtualbox.org/manual/ch06.html#network_nat


2
NATモードを設定すると、ゲストにip 10.0.2.15が割り当てられます。ただし、ホスト(IPは192.168.1.120)からは、ゲストに到達できません。ガイドは私のためにさまざまなモードを説明することができましたが、私の問題の解決策はないようでした。
トーマスハンター

0

非常に役立つ、正しい方向に私を置きます。ありがとう。

> VirtualBox> File> Host Network Manager> vboxnet0> Configure Adapter Manual> IPv4 Addressに移動して、ゲストのifconfigに設定する必要がありました。何らかの理由で、ホストとゲストが私に異なるIPを提供していました。

言及されていますが、明確にするために、127.0.0.1のポート転送ポートをデフォルトのsshポート22ではなく5679に設定する必要がありました。これは、ホスト自身のssh通信で既に使用されているためです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.