Ubuntuサーバーの仮想マシンを設定してOpenSSHをインストールしたら、Puttyを使用して接続を試みます。 Puttyの「Hostname」項目に「Ubuntu」と入力しました。ところで、「接続がタイムアウトしました」というエラーが発生しました。
また、Puttyのホスト名に「127.0.0.1」と入力しようとしましたが、「接続が拒否されました」というメッセージが表示されました。 Oracle VMがSSHとHTTPへのポート転送をすでに実行しているため、これを実行する方法がわかりません。
答え1
VirtualBoxは、次のコマンドを使用してホストネットワークに接続するプライベートネットワーク(10.0.2.x)を作成します。ネットワークアドレス変換。 (特に設定しない限り)
これは、ホストネットワークからプライベートネットワークのホストに直接アクセスできないことを意味します。これにはポート転送が必要です。たとえば、仮想マシンのネットワーク設定で127.0.1.1からポート22を開くようにVirtualBoxを設定できます(ループバックホストアドレス)とすべてのトラフィックを10.0.2.1のポート22(仮想マシンの内部アドレス)に転送します。
これにより、パテを127.0.1.1のポート22として指定でき、VirtualBoxは接続を仮想マシンにリダイレクトします。これにより、sshデーモンは接続に応答してログインできます。
答え2
パテを使って仮想マシンからUbuntuに接続したいと思います(VBは快適であるため奇妙です。正しい端末にないと機能できません)。それでも、
- LinuxにSSHクライアントがインストールされていることを確認してください。そうでない場合はインストールしてください
sudo apt install ssh
。 - オペレーティングシステムの電源を切ります。
- 次に、VBで
Settings
->
Network
->
選択 - >クリックに進みます。Adapter 1
Host-only adapter
OK
- 次に、オペレーティングシステムを起動します。実行してください
ifconfig
。今inetアドレスはあなたのIPです。 - それを使用してパテで実行します。資格情報を使用してログインします。
ホスト専用アダプタを使用する唯一の欠点は、ゲストオペレーティングシステムがより広いネットワーク(インターネットなど)にアクセスできないことです。
インターネットにアクセスするための VM も必要な場合は、アダプタ 1 を NAT のままにし、アダプタ 2 をイネーブルにしてホスト専用アダプタとして設定します。これにより、仮想マシンはNATを使用してインターネットに接続し、ホストのみを使用してホストへのローカル接続を確立できます。
答え3
まず、VMがブリッジまたはNATを介してホストに接続されていることを確認する必要がありますが、イーサネット経由でIPに接続するには、VM IPアドレスをパテに入力する必要があります。 VM ターミナルでこのコマンドを実行すると、次のように表示されます。マシンIPアドレス(127.0.0.1はマシンIPアドレスではありません)
VM # ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 52:54:00:d9:16:b3 brd ff:ff:ff:ff:ff:ff
inet 10.0.2.15/24 brd 10.0.2.1 scope global eth0
valid_lft forever preferred_lft forever
この場合、私のIPアドレスは10.0.2.15になります。
まず、基本レベルで仮想マシンと通信できることを確認し、ホストマシンでターミナルウィンドウを開き、仮想マシンにpingを試してください。
HOST # ping 10.0.2.15
PING 10.0.2.15 (10.0.2.15) 56(84) bytes of data.
64 bytes from 10.0.2.15: icmp_seq=1 ttl=64 time=0.045 ms
64 bytes from 10.0.2.15: icmp_seq=2 ttl=64 time=0.110 ms
64 bytes from 10.0.2.15: icmp_seq=3 ttl=64 time=0.099 ms
アリの結果が得られたら、仮想マシンでSSHサービスが実行されていることを確認し、仮想マシンの端末にルートIDを入力してから、
VM # netstat -lnpt | grep 22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2361/sshd
これは、ポート22でリッスンするsshd(OpenSSHデーモン)というPID(2361)を持つサービス/プロセスがあることを示しています。
仮想マシン自体でSSHを介してサービスが機能しているかどうかをテストできます。
VM # ssh 127.0.0.1
次に、ファイアウォール/iptablesでポート22がブロックされていないことを確認する必要があります。信じられないけど、とにかく確認してみてください。 iptablesを表示するには、VMに次のコマンドを入力します。
VM # iptables -nvL INPUT
出力には次の行が必要です。
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 ctstate NEW
答え4
次のガイドラインは、Ubuntu 14.04およびOracle VirtualBox 4.3.30に適用されます。
VirtualBoxで、次の操作を行います。
仮想マシンを右クリックし、[設定]、[ネットワーク]の順に選択します。
接続先の横にあるホストアダプタのみを選択します。参考として、「ブリッジアダプタ」も使用できます。各オプションの詳細については、VirtualBoxのドキュメントを確認してください。
仮想マシンで次の操作を行います。
端末を開き、を入力してネットワークIPアドレスを見つけます
ifconfig
。 "inet addr"の下のeth0の横に表示されるIPアドレスを確認してください。デスクトップの右上隅にあるネットワークアイコンをクリックして接続情報を選択すると、IPアドレスを確認することもできます。端末に次のコマンドを入力してopenssh-serverをインストールします。
sudo apt-get install openssh-server
準備ができたら、仮想マシンを再起動してください。
これで、上記の手順1のIPアドレスとポート22を使用してPuTTYから接続できます。