it-swarm.com.de

Versuch, SSH zu lokal VM Ubuntu mit Putty

Ich habe einen VM des Ubuntu-Servers eingerichtet, habe OpenSSH installiert und versuche nun, eine Verbindung mit PuTTY herzustellen. In PuTTY habe ich unter "Hostname" "Ubuntu" angegeben Dies ist, wie ich dachte, es wurde aufgerufen, als ich die VM einrichtete. Ich erhalte jedoch nur den Fehler: "Verbindungszeitüberschreitung".

Ich habe auch versucht, "127.0.0.1" in den Hostnamen in PuTTY einzufügen und nur "Verbindung abgelehnt" zu erhalten. Beachten Sie, dass ich die Portweiterleitung für SSH und HTTP in Oracle VM durchgeführt habe, sodass ich nicht weiß, wie ich sie zum Laufen bringen soll.

157
wickywills

VirtualBox erstellt ein privates Netzwerk (10.0.2.x), das mit NAT mit Ihrem Host-Netzwerk verbunden wird. (Sofern nicht anders konfiguriert.)

Dies bedeutet, dass Sie vom Host-Netzwerk aus nicht direkt auf einen Host des privaten Netzwerks zugreifen können. Dazu benötigen Sie eine Portweiterleitung. In den Netzwerkeinstellungen Ihres VM können Sie beispielsweise VirtualBox so konfigurieren, dass Port 22 auf 127.0.1.1 (a Loopback Adresse Ihres Hosts) geöffnet und beliebig weitergeleitet wird Datenverkehr zu Port 22 von 10.0.2.1 (die interne Adresse Ihrer VM)

Auf diese Weise können Sie PuTTY auf Port 22 von 127.0.1.1 verweisen, und VirtualBox leitet diese Verbindung an Ihre VM weiter, wo der SSH-Dämon darauf antwortet, sodass Sie sich anmelden können.

196
michas

Ich wollte PuTTY verwenden, um eine Verbindung zu meinem Ubuntu auf einer virtuellen Box herzustellen (Komfortgründe, das VB ist einfach komisch. Ich kann nur arbeiten, wenn es sich auf einem geeigneten Terminal befindet).

  1. Stellen Sie sicher, dass der SSH-Client unter Linux installiert ist. Wenn nicht, installieren Sie es Sudo apt install ssh.
  2. Schalten Sie das Betriebssystem aus.
  3. Gehen Sie nun auf Ihrem VB zu Settings->Network-> auf Adapter 1 wählen Host-only adapter-> klicken Sie auf OK.
  4. Starten Sie jetzt Ihr Betriebssystem. Führen Sie ifconfig aus; Jetzt ist die Inet-Adresse Ihre IP.
  5. Verwenden Sie dies und führen Sie es auf Ihrem PuTTY aus. Melden Sie sich mit Ihren Anmeldeinformationen an.

Der einzige Nachteil der Verwendung eines Nur-Host-Adapters besteht darin, dass Ihr Gastbetriebssystem keinen Zugriff auf das breitere Netzwerk (z. B. das Internet) hat.

Wenn Sie auch Ihre VM für den Internetzugang benötigen), lassen Sie Adapter 1 als NAT und aktivieren Sie Adapter 2, der als Nur-Host-Adapter konfiguriert ist. Dies ermöglicht dies Ihr VM, um über NAT) eine Verbindung zum Internet herzustellen und über Host-Only eine lokale Verbindung zu Ihrem Host herzustellen.

49

Zuerst müssen Sie entscheiden, ob Ihre VM über eine Bridge-Verbindung oder über ein NAT mit Ihrem Host-Computer verbunden ist, aber auf ätherische Weise müssen Sie die VM) setzen = IP-Adresse in PuTTY, um eine Verbindung zu IP herstellen zu können, führen Sie im Terminal VM Terminal diesen Befehl aus, um die IP-Adresse des Computers anzuzeigen (und Nr. 127.0.0.1 ist nicht die IP-Adresse des Computers).

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

in diesem Fall wird meine IP-Adresse bis 10.0.2.15,

Stellen Sie zunächst sicher, dass Sie auf einer grundlegenden Ebene mit der VM kommunizieren können, öffnen Sie ein Terminalfenster auf Ihrem Host und versuchen Sie, die VM zu pingen

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

Wenn Sie ein Ant-Ergebnis erhalten, stellen Sie sicher, dass auf der VM im Terminal Ihres VM Typ als Root) ein SSH-Dienst ausgeführt wird.

VM # netstat -lnpt | grep 22
tcp   0  0  0.0.0.0:22  0.0.0.0:*  LISTEN  2361/sshd

Dies zeigt, dass wir einen Dienst/Prozess mit PID (2361) haben, der sshd (OpenSSH-Daemon) heißt und Port 22 abhört.

Sie können testen, ob der Dienst ordnungsgemäß funktioniert, indem Sie versuchen, von VM it self, s.

VM # ssh 127.0.0.1

Als nächstes müssen Sie sicherstellen, dass Sie Port 22 in Ihrer Firewall/Iptables nicht blockieren. Ich kann es nicht glauben, aber überprüfen Sie es trotzdem. Geben Sie in VM diesen Befehl ein, um die iptables anzuzeigen).

VM # iptables -nvL INPUT

in der Ausgabe sollten Sie eine Zeile wie diese haben:

0  0  ACCEPT  tcp  --  *  *  0.0.0.0/0  0.0.0.0/0  tcp  dpt:22  ctstate  NEW
22
Rabin

Meine Auflösung war ähnlich wie bei Roman T, aber ich musste ein paar zusätzliche Schritte hinzufügen. In meinem Fall lief Ubuntu Server 14 VM auf einem Windows 8-Desktop in der Windows 2008-Domäne. Wenn ich NAT oder Bridge ausprobieren würde, könnte ich auf das Internet zugreifen, aber keine Verbindung über SSH herstellen.

Wenn ich Host Only Adapter ausprobieren würde, könnte ich SSH auf dem Computer ausführen, aber nicht auf das Internet zugreifen.

Ich habe auch versucht, Port Forwarding und keine Freude. Wireshark wurde geöffnet und es wurde keine VM gefunden.

Meine Lösung bestand also darin, einen zweiten Netzwerkadapter hinzuzufügen.

Methode

Bei ausgeschaltetem VM

  1. Klicken Sie auf Einstellungen> Netzwerk. Klicken Sie auf Adapter 1 und wählen Sie Bridged Adapter
  2. Klicken Sie auf Adapter 2 und wählen Sie Host Only Adapter
  3. Klicken Sie unter NAT Networks auf File> Preferences> Networks. Wenn Sie kein NAT Network sehen, klicken Sie auf das Symbol +, um das NAT Network hinzuzufügen.
  4. Klicken Sie auf Nur-Host-Netzwerke, wenn kein Nur-Host-Netzwerk angezeigt wird. Klicken Sie auf das Symbol +, um eines hinzuzufügen

VM starten

  1. Um den Netzwerkadapter zu sehen, müssen Sie eingeben

    ifconfig -a
    
  2. Möglicherweise wird der Netzwerkadapter mit einer Mac-Adresse, jedoch nicht mit einer IP-Adresse hinzugefügt.

  3. In diesem Fall müssen Sie/etc/network/interfaces bearbeiten, um DHCP zu konfigurieren. Beispiel unten mit VI/VIM, aber Sie können einen Editor Ihrer Wahl verwenden

    Sudo vi /etc/network/interfaces
    
  4. fügen Sie die Zeilen hinzu

    auto eth1
    iface eth1 inet dhcp
    
  5. datei speichern und beenden.
  6. Versuchen Sie dann, den Netzwerkdienst mit dem folgenden Befehl neu zu starten

    Sudo service networking restart
    
  7. Wenn dies fehlschlägt, starten Sie die VM neu.
  8. Geben Sie nach dem Neustart unten ein, um festzustellen, ob eth1 eine IP-Adresse zugewiesen wurde

    ifconfig -a
    
  9. wenn ja, prüfen Sie, ob Sie SSH auf die VM übertragen können
15
mrjamesmyers

Die folgenden Anweisungen funktionierten mit Ubuntu 14.04 und Oracle VirtualBox 4.3.30.

Tun Sie dies in VirtualBox:

  1. Klicken Sie mit der rechten Maustaste auf Ihre virtuelle Maschine, wählen Sie "Einstellungen" und dann "Netzwerk".

  2. Wählen Sie neben "Angeschlossen an" die Option "Nur-Host-Adapter". Als Randnotiz funktioniert auch "Bridged Adapter". Weitere Informationen zu den einzelnen Optionen finden Sie in der VirtualBox-Dokumentation.

Führen Sie dies in Ihrer virtuellen Maschine aus:

  1. Suchen Sie Ihre Netzwerk-IP-Adresse, indem Sie ein Terminal öffnen und ifconfig eingeben. Beachten Sie die IP-Adresse, die neben eth0 unter "inet addr" angezeigt wird. Sie können Ihre IP-Adresse auch anzeigen, wenn Sie auf das Netzwerksymbol in der oberen rechten Ecke Ihres Desktops klicken und dann "Verbindungsinformationen" auswählen.

  2. Installieren Sie openssh-server, indem Sie am Terminal Folgendes eingeben:

    Sudo apt-get install openssh-server
    
  3. Starten Sie für alle Fälle die virtuelle Maschine neu.

Jetzt können Sie von PuTTY aus eine Verbindung mit der IP-Adresse aus Schritt 1 oben und Port 22 herstellen.

14
Roman T

Für Ubuntu 18.04 und VirtualBox 5.2:

  1. Host-Netzwerkschnittstelle erstellen

    ich. Klicken Sie in Virtualbox auf File/Host Network Manager.

    ii. Wenn Sie noch keinen Host-Netzwerkadapter haben (Standard vboxnet0), Klicken Sie auf Create.

  2. Nur Host-Adapter-Einstellungen für VM aktivieren

    ich. Klicken Sie in Virtualbox mit der rechten Maustaste auf VM und wählen Sie Settings.

    ii. Klicken Sie auf Network und wählen Sie Adapter 2.

    iii. Klicken Sie auf Enable Network Adapter.

    iv. Wählen Sie unter Attached to:Host-only Adapter. Der Name des Adapters, den Sie in Schritt 1 erstellt haben, sollte angezeigt werden (Standard vboxnet0).

  3. Netzwerkeinstellungen in VM konfigurieren

    ich. Starten Sie Ihre VM und überprüfen Sie, welche Schnittstelle hinzugefügt wurde: ip a. Suchen Sie nach der Schnittstelle, die keine inet -Adresse hat. Bei mir war es enp0s8.

    ii. Bearbeiten Sie /etc/netplan/01-netcfg.yaml. z.B. Sudo vi /etc/netplan/01-netcfg.yaml.

    iii. Fügen Sie unter den Einstellungen für den Originaladapter Konfigurationsdetails hinzu:

    enp0s8:
        addresses: [192.168.56.2/24]
        gateway4: 192.168.56.1
        dhcp4: no
    

    Dadurch wird eine statische IP-Adresse für Ihre VM zur Vereinfachung der SSH-Zuweisung) zugewiesen. Wenn Sie möchten, dass dhcp stattdessen die Adressierung übernimmt, lassen Sie die Adresse und die Gateway-Konfiguration weg und legen Sie dhcp4 bis yes.

    iv. Laden Sie die Konfigurationsdatei neu: Sudo netplan apply.

  4. SSH in Ihre VM

    ich. Wenn Sie ssh nicht in der VM installiert haben: Sudo apt install ssh.

    ii. Von Ihrem Host-Computer aus SSH in die VM: ssh <username>@192.168.56.2.

3
ooknosi