VM=を設定し、OpenSSHをインストールして、PuTTYを使用してそれに接続しようとしています。PuTTY内の「ホスト名」の下に、「Ubuntu」を指定しますこれは、VMのセットアップ時に呼び出されたと思っていたものですが、「接続がタイムアウトしました」というエラーが表示されるだけです。
また、PuTTY内のホスト名に「127.0.0.1」を入力してみましたが、「接続が拒否されました」と表示されました。 Oracle VM内でSSHとHTTPのポート転送を行ったので、それを実行する方法について途方に暮れていることに注意してください。
VirtualBoxは [〜#〜] nat [〜#〜] を使用してホストネットワークに接続されるプライベートネットワーク(10.0.2.x)を作成します。 (特に構成されていない限り)。
つまり、ホストネットワークからプライベートネットワークのホストに直接アクセスすることはできません。そのためには、いくつかのポート転送が必要です。 VMのネットワーク設定で、たとえば、VirtualBoxを設定して127.0.1.1のポート22を開き( ループバック ホストのアドレス)、 10.0.2.1のポート22へのトラフィック(VMの内部アドレス)
このようにして、PuTTYを127.0.1.1のポート22にポイントすると、VirtualBoxはこの接続をVMにリダイレクトし、そこでsshデーモンが応答して、ログインできるようにします。
PuTTYを使用して仮想ボックスのubuntuに接続したいと思いました(快適さの理由から、VBは奇妙です。適切な端末上になければ動作できません)。とにかく、
Sudo apt install ssh
。Settings
->
Network
->
オン Adapter 1
選択Host-only adapter
-> OK
をクリックします。ifconfig
を実行します。これで、inetアドレスがIPになります。ホストオンリーアダプターを使用する唯一の欠点は、ゲストOSがより広いネットワーク(インターネットなど)にアクセスできないことです。
VMでインターネットにアクセスする必要がある場合は、アダプター1をNATのままにし、ホストオンリーアダプターとして構成されたアダプター2を有効にします。これにより、 VM NATを使用してインターネットに接続し、Host-Onlyを使用してホストにローカル接続します。
最初に、VMがブリッジ接続またはNAT経由でホストマシンに接続されているかどうかを決定する必要がありますが、イーサーウェイではVM = IPに接続できるようにするPuTTYの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になります。
まず、VMと基本レベルで通信できることを確認し、ホストでターミナルウィンドウを開いて、VMに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
Antの結果が表示された場合は、VM type as root、
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)のサービス/プロセスがあるためです。
VM it selfからsshを実行して、サービスが正しく機能するかどうかをテストできます。
VM # ssh 127.0.0.1
次に、ファイアウォール/ iptablesでポート22をブロックしていないことを確認する必要があります。信じられませんが、とにかくチェックしてください。 VMにこのコマンドを入力して、iptablesを表示します。
VM # iptables -nvL INPUT
出力では、次のような行が必要です。
0 0 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 ctstate NEW
私の解決策はRoman Tの解決策に似ていましたが、いくつかの追加の手順を追加する必要がありました。私の場合、Windows 2008ドメインのWindows 8デスクトップでUbuntu Server 14 VMを実行していました。 NATまたはBridgeを試した場合、インターネットにはアクセスできましたが、SSH経由で接続できませんでした。
Host Only Adapterを試した場合、SSHでマシンにアクセスできますが、インターネットにアクセスできませんでした。
私もポートフォワーディングを試しましたが、喜びはありませんでした。 Wiresharkを開きましたが、VMが見つかりませんでした。
したがって、私の解決策は、2つ目のネットワークアダプターを追加することでした。
VMの電源がオフの場合
VMを起動
入力する必要があるネットワークアダプターを表示するには
ifconfig -a
ネットワークアダプターにMACアドレスが追加されていて、IPが追加されていないことがわかりますか?
その場合、DHCPを構成するために/ etc/network/interfacesを編集する必要があります。以下の例はVI/VIMを使用していますが、任意のエディターを使用できます
Sudo vi /etc/network/interfaces
行を追加
auto eth1
iface eth1 inet dhcp
次に、以下のコマンドを使用してネットワークサービスを再起動してみてください
Sudo service networking restart
再起動したら、以下を入力して、eth1にIPアドレスが割り当てられているかどうかを確認します
ifconfig -a
次の手順は、Ubuntu 14.04およびOracle VirtualBox 4.3.30で機能しました。
VirtualBoxでこれを行います。
仮想マシンを右クリックし、[設定]、[ネットワーク]の順に選択します。
「接続先」の横にある「ホストオンリーアダプター」を選択します。補足として、「ブリッジアダプタ」も機能します。各オプションの詳細については、VirtualBoxのドキュメントを確認してください。
仮想マシン内でこれを行います:
ターミナルを開いてifconfig
と入力し、ネットワークIPアドレスを見つけます。 「inet addr」の下のeth0の横に表示されるIPアドレスを確認します。デスクトップの右上隅にあるネットワークアイコンをクリックして[接続情報]を選択しても、IPアドレスが表示されます。
端末で次のように入力してopenssh-serverをインストールします。
Sudo apt-get install openssh-server
念のため、仮想マシンを再起動します。
これで、上記のステップ1のIPアドレスとポート22を使用してPuTTYから接続できます。
Ubuntu 18.04およびVirtualBox 5.2の場合:
ホストネットワークインターフェイスの作成
私。 Virtualboxで、File
/Host Network Manager
をクリックします。
ii。ホストネットワークアダプター(デフォルトはvboxnet0
)がない場合は、Create
をクリックします。
VMのホストのみのアダプター設定を有効にする
私。 Virtualboxで、VMを右クリックして、Settings
を選択します。
ii。 Network
をクリックし、Adapter 2
を選択します。
iii。 Enable Network Adapter
をクリックします。
iv。 Attached to:
でHost-only Adapter
を選択します。手順1で作成したアダプタの名前が表示されます(デフォルトはvboxnet0
)。
VMでネットワーク設定を構成する
私。 VMを開始し、追加されたインターフェースを確認します:ip a
。inet
アドレスを持たないインターフェースを探します。私のものでは、それはenp0s8
でした。
ii。 /etc/netplan/01-netcfg.yaml
を編集します。例えばSudo vi /etc/netplan/01-netcfg.yaml
。
iii。元のアダプターの設定で、構成の詳細を追加します。
enp0s8:
addresses: [192.168.56.2/24]
gateway4: 192.168.56.1
dhcp4: no
これにより、VMに静的IPアドレスが割り当てられます。代わりにdhcp
でアドレッシングを処理する場合は、アドレスとゲートウェイの構成を省略し、dhcp4
をyes
に設定します。
iv。構成ファイルを再ロードします:Sudo netplan apply
。
SSHからVMへ
私。 VMにssh
をインストールしていない場合:Sudo apt install ssh
。
ii。ホストマシンからVMにSSH接続します:ssh <username>@192.168.56.2
。