SSH Zurück zu Ihrem Home / Office VirtualBox-Gastcomputer aus dem Internet
Die Antworten anderer Benutzer hier: How to SSH to a VirtualBox guest externally through a host?
... hat mir geholfen, die Aufgabe zu erfüllen, eine Verbindung von außerhalb des Internets zum Gastcomputer meines Heimcomputers herzustellen. Sie sollten in der Lage sein, eine Verbindung über Computer, Tablets und Smartphones (Android, IPhone usw.) herzustellen. Ich füge noch ein paar Schritte hinzu, falls es für jemand anderen hilfreich sein könnte:
Hier ist ein kurzes Diagramm meines Setups:
Remote device ---> INTERNET --> MODEM --> ROUTER --> HOST MACHINE --> GUEST VM
Remote device (ssh client) ---> PASS THRU DEVICES ---> GUEST VM (ssh server)
Remote device (leave ssh port 3022) ---> INTERNET --> MODEM --> ROUTER (FWD frm:p3022 to:p3022)--> HOST MACHINE (FWD frm:p3022 to:p22) --> GUEST VM (arrive ssh port 22)
Der Schlüssel für mich war zu erkennen, dass ALLE Verbindungen PASSING-THROUGH
Zwischengeräte waren, um von meinem Remote-PC zu meiner virtuellen Gastmaschine zu Hause zu gelangen - Hence-Port-Weiterleitung!
Hinweise: * Der SSH-Client muss eine sichere Verbindung anfordern, und ein laufender SSH-Server muss die sichere Verbindung verarbeiten.
Ich werde den Port 3022 weiterleiten, wie er in der gewählten Antwort von oben verwendet wurde.
Geben Sie bei Bedarf Ihre IP-Adressen ein (Heimmodem / Router, Host-IP, Gast-IP usw.). Die ausgewählten Namen sind nur Beispiele für die Verwendung oder Änderung.
1.Erstellen Sie einen SSH-Tunnel zu Port 3022 auf der externen IP-Adresse Ihres Modems / Routers.
ssh client/device possible commands: ssh -p 3022 user-name@home_external_IP
2.Port Forward = Wir leiten die Verbindung vom Router zum Host-Computer weiter
Stellen Sie außerdem sicher, dass die Firewall- / IPtable-Regeln auf dem Router zulassen, dass Ports weitergeleitet werden (bei Bedarf geöffnet).
Für den Pfwd-BILDSCHIRM des Routers sind folgende Einträge erforderlich: AppName: SSH_Fwd, Port_from: 3022, Protokoll: beide (UDP / TCP), IP_Adresse: hostIP_Adresse, Port_to: 3022, alles andere kann leer sein
Ressourcen der DD-WRT-Router-Software / Info:
3. Hostcomputer-Firewall: Öffnen Sie den Port 3022, damit der weitergeleitete Port an den Gastcomputer weitergeleitet werden kann
Hostcomputer: Installieren Sie VirtualBox, Gastzugaben und Gastcomputer, falls dies noch nicht geschehen ist
Konfigurieren Sie den Gastcomputer und folgen Sie dem Abschnitt Netzwerk unten
Ich habe die VirtualBox-Benutzeroberfläche verwendet, um das Netzwerk des Gastes einfacher einzurichten als die CLI
Wenn Sie andere Methoden verwenden möchten, lesen Sie: VirtualBox/manual/ch06.html#natforward
4. Einige schlagen vor, den Network Bridge-Adapter für den Gastzugriff auf LAN und andere Computer in Ihrem LAN zu verwenden. Dies stellt auch ein erhöhtes Sicherheitsrisiko dar, da Ihr Gastcomputer jetzt LAN-Computern und möglicherweise den INTERNET-Hackern ausgesetzt ist, wenn die Firewall nicht ordnungsgemäß eingerichtet wurde. Daher habe ich den an NAT angeschlossenen Netzwerkadapter ausgewählt, um weniger überbrückten Sicherheitsrisiken ausgesetzt zu sein.
Gehen Sie auf dem Gastcomputer wie folgt vor:
- VirtualBox-Netzwerkeinstellungen des Gastcomputers: Adapter 1: An NAT angeschlossen
- VirtualBox-Portweiterleitungsregel für Gastcomputer: Name: External_SSH, Protokoll: TCP, Hostport: 3022, Gastport 22, Host- und Gast-IPs: Leer lassen
- Klicken Sie im Abschnitt Netzwerk auf Erweitern und dann auf Portweiterleitung, um Regeln einzugeben
- Gastcomputer-Firewall: Open Port 22 #so SSH-Verbindung kann eintreten
- Gastcomputer: Stellen Sie sicher, dass der SSH-Server installiert, ordnungsgemäß konfiguriert und ausgeführt wird
- LINUX-Test, um festzustellen, ob der SSH-Server mit dem folgenden Befehl ausgeführt wird: sudo service ssh status
- Kann netstat überprüfen, um festzustellen, ob eine Verbindung zu Port 22 auf dem Gastcomputer hergestellt wurde
Außerdem gibt es je nach Plattform unterschiedliche SSH-Server und -Clients.
wikipedia/Secure_Shell
wikipedia/Comparison_of_SSH_servers
wikipedia/Comparison_of_SSH_clients
Für Ubuntu-Benutzer:
ubuntu community: SSHOpenSSH/Configuring
ubuntu/community: OpenSSH/Keys
Das sollte es sein. Wenn ich einen Fehler gemacht habe oder etwas hinzufügen möchte - fühle mich frei dazu -, bin ich immer noch ein Noob.
Hoffe das hilft jemandem. Viel Glück!