SSH ermöglicht Remote-Hosts die Verbindung mit lokal weitergeleiteten Ports

SSH ermöglicht Remote-Hosts die Verbindung mit lokal weitergeleiteten Ports

Ich habe derzeit ein Problem mit RHEL 7.0 bezüglich der SSH-Option -g (d. h. Verbindung von Remote-Hosts zu lokal weitergeleiteten Ports).

Ich baue eine Verbindung mit Portweiterleitung von einem Server mit der Adresse myserver_ip mit der üblichen Befehlszeile auf:

ssh -o StrictHostKeyChecking=no user@server_fqn -L9090:other_server_ip:9080 -g

Wenn ich meinen Browser öffne (oder versuche, etwas mit Curl abzurufen, erhalte ich die Ausnahme „Verbindung verweigert“):

curl -X GET "http://myserver_ip:9090"
curl: (7) Failed to connect to myserver_ip port 9090: No route to host

Wenn ich dasselbe auf einem Ubuntu-Server mache, funktioniert es perfekt, unter RHEL funktioniert es jedoch einfach nicht.

Ich habe die Firewall, Selinux und sogar die Netzwerkkonnektivität im Verdacht.

Um das Problem zu lösen/zu beheben, habe ich Folgendes versucht:

  • die Firewall deaktiviert ( service firewalld stop)
  • überprüft, ob Selinux den 9090 als gültigen HTTP-Port verwaltet ( semanage port -l | grep 9090), es war ok
  • habe über netstat ( ) geprüft, ob der Port offen ist netstat -alptn | grep 9090 , scheint ok, ich habe einen SSH-Prozess, der auf 9090 lauscht
  • überprüft, ob der Server die Pakete auf Port 9090 der Ethernet-Schnittstelle ( tcpdump -i ens192 'port 9090' -v) empfängt, und tatsächlich werden Pakete empfangen …

Es stimmt also im Wesentlichen so überein, dass das System die Anfragen über die Schnittstelle empfängt, ein SSH-Prozess lauscht auf allen Schnittstellen am angegebenen Port, der SSH-Prozess leitet jedoch keine Pakete an die andere Seite weiter ...

Mir gehen wirklich die Ideen zur Fehlersuche aus, also zögern Sie nicht, wenn Sie Vorschläge haben, ich wäre Ihnen für Ihre Hilfe wirklich dankbar.

Danke,

Antwort1

Curl hat Ihnen die Antwort bereits gegeben. Es geht nicht um SSH, es geht nicht um Firewalls, es geht nicht um Selinux.

no route to host

Die Maschine, auf der Sie curl ausführen, weiß nicht, wohin sie Pakete senden soll, die für meine Server-IP bestimmt sind (die IP-Adresse, mit der sie verknüpft ist).

verwandte Informationen