
Das sshHandbuchAuf den Seiten steht Folgendes:
-L [bind_address:]port:host:hostport
Specifies that the given port on the local (client) host is to be
forwarded to the given host and port on the remote side.
-R [bind_address:]port:host:hostport
Specifies that the given port on the remote (server) host is to
be forwarded to the given host and port on the local side.
Sind diese beiden Beschreibungen nicht verwechselt?
Wenn ich es verwende, ssh -L
nimmt es einen Remote-Port und „bindet“ (oder leitet) ihn an einen Port auf meinem lokalen Computer weiter, sodass ich mit einem Remote-Computer kommunizieren kann, indem ich mit mir selbst spreche (localhost:Port).
Wenn ich ssh -R
es verwende, nimmt es einen Port von einem Computer in meinem lokalen Netzwerk und „bindet“ (oder leitet ihn weiter) ihn an einen Port auf dem Remote-Computer (SSH-Server). Wenn ich dann auf dem Server bin, kann ich mit dem Port eines Computers im selben Netzwerk kommunizieren wie der Computer, von dem ich mich gerade verbunden habe (localhost:port).
Dies erklärt auch die Verwendung von L für lokal und R für remote (wo auch immer der Port gebunden wird).
(Ich weiß nicht, ob ich das Wort „binden“ richtig verwende. Das ist es, was ich mit den Anführungszeichen andeuten möchte.)
Antwort1
Sie haben Ihre Definition von "Weiterleiten" verwechselt. Es sind die Pakete, die weitergeleitet werden (von lokal zu remote für -L
und von remote zu lokal für -R
).