it-swarm.com.de

VirtualBox Host ssh zu Gast

Ich habe einen Mac-Host und einen VirtualBox Linux-Gast, der derzeit den Bridged-Modus verwendet.

Ich muss in der Lage sein, vom Host aus problemlos SSH in den Gast zu schreiben. Es wäre schön, einen Hostnamen zu verwenden, aber eine sich nie ändernde IP-Adresse wäre auch in Ordnung (derzeit ändert sich die IP mit jedem neuen Netzwerk, dem ich beitrete, und der Hostname hat nie funktioniert).

Ich brauche auch einen Internetzugang vom Gast.

Andere Computer im Netzwerk benötigen keinen Zugriff auf den Gast.

Wie konfiguriere ich mein VirtualBox-Netzwerk am besten?

52
Thomas Hunter

Zuerst müssen Sie die Schnittstelle vboxnet0 erstellen.

VirtualBox> Datei> Einstellungen> Netzwerk> Nur-Host-Netzwerke> Hinzufügen (Sie erhalten vboxnet0)

Führen Sie dies dann auf dem Host-Computer aus. Es wird eine neue Benutzeroberfläche (vboxnet0) angezeigt.

ifconfig

Fahren Sie Ihr VM herunter und führen Sie folgende Schritte aus:

VM's Settings > System > check "Enable I/O APIC."
VM's Settings > Network > Adapter 2 > Host-only vboxnet0

Starten Sie die VM beim Ausführen des Gasts

ifconfig

und überprüfe die IP

Überprüfen Sie diese Links:

  1. https://forums.virtualbox.org/viewtopic.php?f=8&t=40076
  2. http://www.wiredrevolution.com/virtualbox/setup-ssh-access-between-virtualbox-Host-and-guest-vms

Es gibt auch eine Lösung für NAT, aber ich habe es nicht überprüft.

Konfigurieren der Portweiterleitung mit NAT auf Ihrem Hostcomputer

VBoxManage modifyvm "VM name" --natpf1 "guestssh,tcp,,2222,,22"

stellen Sie über den Port 2222 Ihres Host-Rechners eine Verbindung zu Ihrem Linux her

ssh -l -p 2222 localhost

Aktivieren Sie für Host-Only-Netzwerke mit statischer IP Folgendes:

https://stackoverflow.com/questions/5906441/how-to-ssh-to-a-virtualbox-guest-externally-through-a-Host/27152153#27152153

Es ist für Solaris 10 und Ubuntu 16.04, sollte aber leicht anzupassen sein.

36
rofrol

Zwischen zwei Linux-Rechnern (einem 32-Bit-Ubuntu-Host und einer 64-Bit-Ubuntu-VM) gelang es mir, ssh mithilfe dieser Portweiterleitung zum Laufen zu bringen:

enter image description here

Dann von Ihrem Host-System ausführen

ssh -p 5679 127.0.0.1

Ersetzen Sie 5679 durch den in den Portweiterleitungsregeln eingegebenen "Host-Port".

36
719016

Wenn Sie nicht mit der Portweiterleitung herumspielen möchten, können Sie einen Host-only-Adapter einrichten, der als Host-Schnittstelle angezeigt wird, und dann eine IP-Adresse in diesem Subnetz im Gast hinzufügen.

Schritte:

  • Erstellen Sie in Virtualbox ein Host-Only-Netzwerk (GUI -> Einstellungen -> Netzwerk). Tippe ifconfig in den Host und sieh so etwas wie vboxnet0 mit inet 192.168.50.1
  • fügen Sie dem Gast eine IP-Adresse hinzu: ifconfig eth1 192.168.50.101 netmask 255.255.255.0 up
  • führen Sie auf dem Host ssh [email protected] aus.

Weitere Lektüre:

2
Ben Creasy

Möglicherweise sollten Sie Ihr virtuelles NIC im NAT Modus konfigurieren, wenn Sie sich viel bewegen. Unter Verwendung von NAT wird der Host (Ihr PC) zum DHCP-Server und -Router für ein privates Netzwerk, das für Ihre Gastbetriebssysteme erstellt wird. Ich bin mir ziemlich sicher, dass Sie mit NAT auch eine statische Adresse festlegen können ...

Ich denke jedoch, dass die beste Lösung darin besteht, herauszufinden, warum die Namensauflösung für Ihren Gast nicht funktioniert VM :)

https://www.virtualbox.org/manual/ch06.html#network_nat

1
john