Ich suche ein Äquivalent dazu:
ssh -R 8888:10.0.0.2:8888 100.101.102.103
dh. Lassen Sie den Dienst, der auf Port 8888 auf dem lokalen Computer (10.0.0.2) ausgeführt wird, wie einen lokal ausgeführten Dienst auf einem Remotecomputer (100.101.102.103) aussehen.
Ich möchte jedoch nicht den Verschlüsselungsaufwand von ssh, da der betreffende Dienst https ist und somit bereits verschlüsselt ist.
Kann jemand ein Werkzeug vorschlagen, um dies zu tun? Beachten Sie, dass die Richtung der Initiation hier wichtig ist - dh. Es ist das Äquivalent eines umgekehrten Tunnels. Der lokale Computer, auf dem der Dienst ausgeführt wird, befindet sich in einem privaten Netzwerk und ist für den Remotecomputer nicht direkt sichtbar. Der Remotecomputer hat jedoch eine öffentliche IP.
- Unix (OS X und Linux) an jedem Ende
- Ich habe vollen Zugriff auf beide Maschinen
Antworten:
Ein paar Netcat-Sitzungen würden die Rechnung passen, denke ich.
Mann nc
quelle
Setzen Sie einfach die Verschlüsselungsverschlüsselung von ssh auf none.
quelle
Vergessen Sie nicht socat, das Schweizer Taschenmesser der Netzwerkspediteure;)
http://www.dest-unreach.org/socat/
quelle
Ein inetd in Kombination mit netcat sollte den Trick machen. Siehe Weiterleitungsports , obwohl xinetd heutzutage möglicherweise die bessere Wahl ist.
quelle
Ich habe dafür in der Vergangenheit mit großem Erfolg rinetd verwendet .
rinetd ist ein sehr kleines, stabiles und einfaches Programm, das auf eingehende Verbindungen wartet und diese weiterleitet. Die Konfiguration ist wirklich einfach
Es gibt auch ein Programm namens " stone ", das dasselbe tun kann: Beispiel ... http vorwärts vom Gateway zu einer internen Maschine (1.2.3.4):
quelle
Sie könnten eine Art Firewall-Regel verwenden? Etwas
iptables
, um einen Port auf einen anderen umzuleiten?quelle
Was Sie versuchen, riecht nach NAT Port Forwarding an mich. Ein iptables regiert und es ist geschafft.
quelle