web-dev-qa-db-ja.com

2つのVirtualboxゲスト間のSSH

私のラップトップでは、virtualboxのゲストとして2つのUbuntuサーバーを実行しています。これらは、IPアドレスが「192.168.56.1」のホストオンリーアダプターを介して接続され、2つのゲストサーバーのIPアドレスは「192.168.56.101」と「192.168.56.102」に設定されています。それぞれが他方にpingを実行することはできますが、sshを実行することはできません。他のゲストにSSHで接続しようとすると、次のエラーが発生します。

ssh: connection to Host 192.168.56.102 port 22: Connection refused

(とにかく私にとって)紛らわしいのは、次を使用して、ホストラップトップのホスト専用アダプターでSSH接続できることです。

ssh [email protected]

次に何を試すべきかわかりません。 ssh/sshdを再インストールしてみました。それは私にエラーの全体の混乱を与えました、しかし私がネットワーク上のネットワーク上の1つのものをsshすることができれば私は他の何かにsshすることができるはずだと思っていますか?しかしとにかく私は間違いなく何かを見落としています。

を使用してゲストとホストのiptablesを無効にしようとしました

   Sudo ufw disable

その後、ゲストの1人に使用

   ssh [email protected]

   ssh: connect to Host 192.268.56.101 port 22: Connection refused

<-更新->

ssh -v [email protected]

私に次の出力を与えています:

OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL1.0.1 14 Mar 1012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 192.168.56.101 [192.268.56.101] port 22.
debug1: connect to address 192.168.56.101 port 22: Connection refused
ssh: connect to Host 192.168.56.101 port 22: Connection refused

<-更新->

私の/ etc/hostsファイルは、すべてのゲストで次のようになります。

127.0.0.1    localhost
127.0.1.1    ubuntu

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

2つのゲストボックスには、/ etc /hosts.allowファイルと/etc/hosts.denyファイルがありません。

ifconfig -aは私に:

eth0      Link encap:Ethernet  HWaddr 08:00:27:63:c5:71  
          inet addr:192.168.56.102  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe63:c571/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:15 errors:0 dropped:0 overruns:0 frame:0
          TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4658 (4.6 KB)  TX bytes:1790 (1.7 KB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

そして

eth0      Link encap:Ethernet  HWaddr 08:00:27:ce:7c:1e  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fece:7c1e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4718 (4.7 KB)  TX bytes:1790 (1.7 KB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1184 (1.1 KB)  TX bytes:1184 (1.1 KB)

<-更新->

Sudo netstat -pant |grep :22

出力を出さない

<-更新->

また、ボックス自体をSSHで取得しようとすると、同じポート22:接続拒否エラーが発生します。

2
Paddy

拒否されたメッセージが表示されているため、実際に他のサーバーにパケットが到達しているのを確認できます。sshがインストールされていない可能性があります。

両方のサーバーで実行します:

Sudo apt-get install openssh-server

Sshサーバーがインストールされると、正常に動作するはずです。

<-編集->

サービスがインストールされていることを確認したので、上記を無視してください。Ubuntuではデフォルトで構成されるべきではありませんが、iptablesである可能性があります。 12.04を実行している場合は、次のように入力してファイアウォールを一時的に無効にできます。

Sudo ufw disable

それがまったく役立つかどうかを確認してください。

また、「エラーの全体の混乱」とはどういう意味ですか? sudoの有無にかかわらずインストールしようとしましたか?

3
Alex Berry

ssh -v ip addressを使用してみてください。そうすれば、接続中に何が問題になる可能性があるかを確認できます。

<<-編集->>
ホスト101でこのコマンドを使用し、結果を投稿します

Sudo netstat -plant | grep ssh


基本的に、このコマンドはマシン上のすべてのネットワーク接続を表示し、sshが22に関して異なるポート 2で実行されているかどうかを確認したい

1
marcodv

Ssh_configファイルにプロキシコマンドなどが含まれていないことを確認しますか?

出力を見ると、デバッグ出力とエラーメッセージのIPアドレスに問題があります。192.168.xxx.xxxの代わりに192があります。2 68.xxx.xxx

ネットワーク構成を確認する必要があります。

  • 各ホストでの「ifconfig-a」コマンドの出力は何ですか?
  • / etc/hostsファイルを確認できますか?
  • /etc/hosts.allowファイルと/etc/hosts.denyファイルに何かがあるかどうかを確認できますか
  • ...そしてもちろん、提案されているように、iptablesをオフにすることもできます
0
Didier

「ホストオンリー」オプションは、ゲストとサーバーの間に専用リンクを作成し、ホストオンリー接続を使用するVMはネットワーク上で相互に認識できないようにする必要があると思います。

Linuxでそれらをブリッジするか、別のネットワークオプションを使用する必要があります。

両方のVMのネットワークオプションを「内部ネットワーク」に変更し、両方のVMに同じ名前を使用すれば、達成しようとしていることができると思います。

編集:virtualboxのドキュメントによると、「ホストのみ」オプションはVMが相互に通信できるようにする必要がありますが、それでも試してみてください。

Edit2:ああ-マシンがお互いにpingできるという事実をちょっと見逃しました。この場合、私が上で書いたことは無関係です。

0
user1569051