web-dev-qa-db-ja.com

Ubuntu VMにリモートでSSH

ネットワークやLinuxの経験はあまりありませんが、ホームネットワークの外部からUbuntu仮想マシンにsshしようとしています。 Ubuntu仮想マシン(VirtualBox)はDebianデスクトップで実行されています。調査を行ったところ、ポート22をルーターから仮想マシンに転送する必要があることがわかりました。

  • VMのネットワーク設定をbridgeに変更しました。
  • ポートをVMに転送しています。
  • http://www.yougetsignal.com/ )をチェックして、ポートが開いていることを示しました。

しかし、接続しようとしてもまだ動作しません。 ssh username @-接続が拒否されました

着信接続を許可するために仮想マシン内で行う必要があることはありますか?または、ポートを転送しますか?

私が間違っていることはありますか、どんな助けも大歓迎です!

10
user1354275

デフォルトでは、VirtualBoxは「NAT」モードで動作します。つまり、「仮想」ネットワークを構築し、VMからのネットワークアクセスを変換します。

VirtualBoxはVMにネットワークに接続されていると思わせますが、実際にはVirtualBoxはミニDHCPサーバーなどのネットワークサービスを提供しています。次に、VirtualBoxはVMに「代わって」ネットワークアクセスを行い、PC上で実行されている別のアプリケーションのように見せます。

ただし、これは、外部の世界がVMを実際に知らず、直接アクセスできないことを意味します。

あなたがしたポートのリダイレクトは、VMではなく、ホームルーターからPCへだったと思います。 VirtualBox側の設定が一部欠落している可能性があります。既にお済みの場合はおologiesび申し上げますが、これについての質問は明確ではありません。

基本的には、VMのネットワーク構成を変更し、「ブリッジ」に設定する必要があります。これは、PCに仮想インターフェイスを作成し、VMがそれを使用して外の世界にアクセスすることです。そのインターフェースに出入りするものはすべてVMにパイプされます。したがって、VMは、PCが接続されているネットワーク内の別のマシンとして表示されます(独自のMACアドレスさえ持っています!)。

次に、ネットワークの構成に応じて、VMがルーターに接続されている他のPCと同様にDHCPアドレスを取得するか、静的IPアドレスを構成する必要があります。これは、ネットワークの設定方法によって異なります。

VMに「実際の」アドレスが設定されると、ルーターで、見つかった指示に従ってポート22をVMのIPアドレスにルーティングできます。これは期待どおりに機能するはずです。

そうでない場合:

  • VMのファイアウォール構成を確認します(iptables -L -n)。それは何かをブロックしていますか?
  • ローカルネットワークに別のコンピューターをセットアップし、VMのIPアドレスへのSSHを試行します。可能であれば、ルーターの転送構成を再確認する必要があります。できない場合は、VMのSSHおよびファイアウォール構成を再確認する必要があります。
15
roadmr

私が収集できるものから、あなたの問題はサーバーコンピュータネットワークにあります。なぜなら、vmネットワークをブリッジモードに設定したら、あなたは行くのが良いからです(vmではなく、サーバーのコマンドラインでssh <your.vm.ip.number>で確認してください).

マシンでNATを使用するvmのように、サーバーはルーターの背後にあります。

サーバーネットワーク管理者に連絡して、vmのローカルIPアドレスをポート/ポートの範囲に転送できるようにする必要があります(vmに静的IPアドレスがあることを確認してください)。

サーバーゲートウェイに対する権限があれば、自分で実行できます。

少しの視覚化:

Internet
     '---ROUTER (SERVER1 and SERVER2 use NAT on this router)
            |   (vm1, vm2, vm3, vm4, vm5 need to be forwarded on this router)
            | 
            '--- SERVER1 (vm1, vm2, vm3 use Bridge)
            |       '---vm1
            |       '---vm2
            |       '---vm3
            '--- SERVER1 (vm4, vm5 use Bridge)
            |       '---vm4
            |       '---vm5
1
apisKod