Zugriff auf die Linux Box von verschiedenen Windows-Hosts aus?

365
Karthick

Ich wollte auf eine Linux Box zugreifen, die über ein NAT-Netzwerk (Virtual Box), das Host-Betriebssystem (Windows mit einer IP-Adresse: 172.16.32.2) verfügt und daher eine Portweiterleitung durchgeführt habe und nun mit der virtuellen Maschine auf die virtuelle Maschine zugreifen kann Spachtel erfolgreich.

Port Forwarding

Bitte beachten Sie die obigen Portweiterleitungsregeln. Im Allgemeinen greife ich mit Putty Client auf die Linux-Maschine zu, indem ich die IP-Adresse (127.0.0.1) und den Port (2012) des tatsächlichen Hosts (172.16.32.2) eingebe, in dem sich der Guest befindet, und er wird erfolgreich mit der Maschine verbunden.

Nun kommt ein Szenario, bei dem ich von einem anderen Host (Windows mit IP-ADDR: 172.16.32.10) auf dieselbe virtuelle Maschine zugreifen wollte. Können wir SSH-Tunneling durchführen, um von einem anderen Windows-Host aus auf die Linux-Box zuzugreifen? Wenn ja wie?

Hinweis: Bridging ist eine einfache Option, es gibt jedoch einen Grund, das NAT-Netzwerk einzustellen. In der Arbeitsumgebung gibt es nur ein Wireless-Netzwerk, und die Wireless-Schnittstelle funktioniert im Bridged-Modus nicht immer einwandfrei. 1. Suchen Sie nach einer Lösung, ohne die obigen Einstellungen zu ändern.

1 https://forums.virtualbox.org/viewtopic.php?f=7&t=82339

0
Sie können also nicht auf die Linux-Maschine zugreifen, indem Sie an Port 2012 eine Verbindung zu 172.16.xx.xx herstellen. Haben Sie den Port in Ihren Firewall-Einstellungen geöffnet? SpiderPig vor 5 Jahren 0
@SpiderPig, ich glaube, ich habe die Firewall-Einstellungen in der Windows-Maschine nicht berührt. Könnten Sie bitte anleiten, was in den Windows-Firewall-Einstellungen hinzugefügt / geändert werden muss? Karthick vor 5 Jahren 0
Sie können die Felder "Host IP" und "Guest IP" leer lassen und funktionieren weiterhin, da VirtualBox die IP Ihrer Linux-VM automatisch ermittelt. Wenn Sie "Host IP" leer lassen, bedeutet dies, dass es für jede Adresse funktionieren sollte - 127.0.0.1 sowie 172.16.32.10. Deaktivieren Sie die Windows-Firewall vollständig, um zu prüfen, ob sie Probleme verursacht. SpiderPig vor 5 Jahren 0
@SpiderPig, Host IP zu verlassen macht Sinn, aber warum "Guest IP" auch? Was ist, wenn ich etwa zehn Gäste habe und wie weiß er, welche Gäste verbunden werden sollen, wenn ich ihn leer lasse? karthick87 vor 5 Jahren 0

1 Antwort auf die Frage

1
tonioc

Sie sollten die Portweiterleitungsregel wahrscheinlich auf dem Host-Computer einrichten, sodass nicht nur localhost (127.0.0.1), sondern auch externe IP-Adressen empfangen werden. Fügen Sie Ihrer Firewall auf diesem Host eine Regel hinzu, um eingehende externe Verbindungen an Port 2012 zu akzeptieren.

Dies sollte es Ihnen ermöglichen, eine direkte Verbindung mit Putty vom zweiten Host zum 172.16.xx.xx an Port 2012 herzustellen.

Die Portweiterleitung ist in der Virtualbox auf dem tatsächlichen Host (172.16.32.2), auf dem sich der Guest (192.168.2.12) befindet, bereits aktiviert. Bitte schauen Sie sich [this] an (https://i.stack.imgur.com/07bTE.png). Auch selbst im eigentlichen Host funktioniert nur diese (127.0.0.1:2012) nach der Portweiterleitung und nicht die tatsächliche IP-Adresse des Hosts (172.16.32.2:2012), während versucht wird, "Network Error: Connection Weired" zu sagen. Karthick vor 5 Jahren 0
Ja, ich habe dies gesehen und meinte damit, ich denke, das Problem liegt in der Tatsache, dass die in dieser Konfiguration erwähnte Host-IP-Adresse 127.0.0.1 ist und nicht 172.16.xy. Können Sie versuchen, dies zu ändern? tonioc vor 5 Jahren 0
Yep versuchte es, anstatt 127.0.0.1 als Host-IP in der Portweiterleitungsregel hinzuzufügen, habe ich die Host-IP (172.16.32.2) hinzugefügt und versucht, den Guest vom Host aus zu verbinden, aber es wird "Netzwerkfehler: Verbindungszeitüberschreitung" angezeigt. . karthick87 vor 5 Jahren 0
Muss ich auch auf der Host-Seite Firewall-Änderungen vornehmen? Wenn ja, können Sie bitte auch diese Informationen detailliert beschreiben? Danke im Voraus. Karthick vor 5 Jahren 0
Ja, die Host-Firewall muss die an Port 2012 eingehende Verbindung akzeptieren, damit die externe Schnittstelle 172.16.32.2 IP hält (dies ist in dem obigen Beitrag gemeint). tonioc vor 5 Jahren 0