Ich habe drei Computer.
PC1 und PC2 ist auf einem privaten LAN, wo PC1 bis bekannt ist , PC2 als192.168.0.2
PC2 und PC3 befindet sich auf einem anderen LAN, wo PC2 zu bekannt ist PC3 als192.168.123.101
Wie kann ich mit SSH von PC3 aus eine Verbindung zu PC1 herstellen ?
Gibt es so etwas wie:
ssh [email protected] -via [email protected]
Mit SSH gibt es eine klare Lösung:
Richten Sie Ihren Computer auf Ihrem lokalen Computer
~/.ssh/config
so ein, dass er Folgendes aufweist:Stellen Sie sowohl auf dem Gateway als auch auf dem Endserver, zu dem Sie eine Verbindung herstellen möchten, sicher, dass sich die öffentlichen Schlüssel Ihres lokalen Clients in der befinden
~/.ssh/authorized_keys
Auf dem Gateway-Computer müssen Sie das
~/.ssh/authorized_keys
so ändern , dass Sie am Anfang der Zeile, die den öffentlichen Schlüssel Ihres Clients angibt, den erzwungenen Befehl wie folgt hinzufügen:Das
-A
ist den Agenten weiterleiten , wenn Sie nicht wie Passwörter die ganze Zeit zu schicken ...Auf diese Weise
ssh WhatYouWillCallTheConnection
läuft jedes Mal, wenn Sie so etwas tun, direkt durch das Gateway und Sie werden transparent mit dem Server auf der anderen Seite verbunden.quelle
ssh -A
wenn Sie dem Administrator des Gateway-Computers nicht vertrauen. Er kann Ihren privaten Schlüssel nicht erhalten, aber solange Sie mit dem Gateway verbunden sindssh -A
, kann er den weitergeleiteten Agenten verwenden, um eine Verbindung zu anderen Computern wie Ihnen herzustellen.Die Portweiterleitung kann nützlich sein.
Von PC1:
7777 kann einfach ein beliebiger Port sein (vorausgesetzt, er wird noch nicht verwendet). Ich mag nur diese Nummer und jede "Bestellung", die ich mit +1 (7778, 7779 usw. usw.) verwalten kann.
Wenn Sie dies getan haben, haben Sie einen "transparenten" Tunnel vom lokalen Port 7777 von PC1 zum Port 22 von PC3. Problem:
Und du solltest auf PC3 sein.
Sie können -D auch verwenden, um einen Port dynamisch weiterzuleiten, wenn ein SOCKS-Proxy eingerichtet werden soll.
Prost!
quelle
Die einzige Lösung, die ich dafür kenne, ist SSH-Scripting mit Belier :
Vor einiger Zeit habe ich diesen README.sshhop auf der MIT Lincoln Laboratory Homepage gefunden, aber ich konnte keine weiteren Informationen dazu finden. Weiß jemand mehr?
quelle
Die Antwort 2017+ (seit ssh v7.3) lautet:
ssh -o "ProxyJump user@jumphost" user@destination
Dies kann verkürzt werden
ssh dest
mit a~/.ssh/config
als solchem:quelle