Die SSH-Weiterleitung funktioniert lokal, schlägt jedoch für die Remote-

Die SSH-Weiterleitung funktioniert lokal, schlägt jedoch für die Remote-

Ich habe eine lokale SSH-Weiterleitung für den Port auf einem Remotecomputer eingerichtet:

ssh -N -L 127.0.0.1:3388:127.0.0.1:22 localhost

es funktioniert auf dem Remote-Computer selbst:

telnet localhost 3388

kehrt zurück

Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.4

Wenn ich diese Weiterleitung jedoch vom lokalen Computer aus verwende:

telnet remote.ip 3388

es schlägt fehl:

Trying remote.ip...
telnet: Unable to connect to remote host: Connection refused

Man könnte meinen, dass Port 3388 des Remote-Rechners durch die Firewall oder etwas anderes aus dem Netzwerk blockiert ist. Deshalb habe ich die SSH-Weiterleitung ausgeschaltet und einen HTTP-Server getestet, der auf Port 3388 des Remote-Rechners lauscht:

python3 -m http.server 3388

dann verbinde ich mich von meinem lokalen Rechner aus mit diesem Port:

telnet remote.ip 3388

Das Ergebnis gibt

Trying remote.ip...
Connected to remote.ip.
Escape character is '^]'.
quit
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
        <title>Error response</title>
    </head>
    <body>
        <h1>Error response</h1>
        <p>Error code: 400</p>
        <p>Message: Bad request syntax ('quit ').</p>
        <p>Error code explanation: HTTPStatus.BAD_REQUEST - Bad request syntax or unsupported method.</p>
    </body>
</html>
Connection closed by foreign host.

was bedeutet, dass Port 3388 auf dem Remote-Rechner für meinen lokalen Rechner zugänglich ist. Warum also funktionieren sowohl die SSH-Weiterleitung als auch das Netzwerk einzeln einwandfrei, aber in Kombination schlägt es fehl? Weiß jemand, wie man das behebt? Danke.

Antwort1

Sie haben die lokale SSH-Weiterleitung so eingerichtet, dass sie nur auf dem Localhost-Port 3388 lauscht. Localhost ist von anderen Geräten im Netzwerk nicht erreichbar, weshalb Sie keine Remoteverbindung herstellen konnten.

Um den Weiterleitungsport anderen Computern im Netzwerk zugänglich zu machen, müssen Sie ihn an eine erreichbare Adresse wie 192.168.1.5 oder 0.0.0.0 (alle Schnittstellen) binden.

z.Bssh -N -L 0.0.0.0:3388:127.0.0.1:22 localhost

verwandte Informationen