Hallo, ich sitze hier hinter einer Firewall und möchte einen Port meines Rechners von aussen erreichbar machen (habe die Erlaubnis unseres Admins). Mein Rechner ist Rechner A. Rechner B ist ein Rechner, der ohne Firewall direkt erreichbar ist. Zum Testen habe ich versucht meinen HTTP-Server erreichbar zu machen. Dazu habe ich folgendes von A aus probiert: ssh -g -R 50123:B:80 B Wenn ich danach versuche mit einem Browser von B aus auf Port 50123 zuzugreifen, dann erhalte wie erwartet die Verbindung zu meinem HTTP-Server. Versuche ich aber von einem anderen Rechner aus auf B:50123 zuzugreifen, dann erhalte ich ein Connection Refused. Ich habe auf B keine Root-Recht, aber auf A. Die sshd_config von B hat keinen Eintrag, die Gateways verbietet. Kann mir jemand sagen, was ich falsch mache? tschau Sascha Effert fermat@douglas2a.de Tel.:(0177) 6266652 -- Being evil means it can be christmas every day.
Sascha Effert wrote:
Hallo,
ich sitze hier hinter einer Firewall und möchte einen Port meines Rechners von aussen erreichbar machen (habe die Erlaubnis unseres Admins). Mein Rechner ist Rechner A. Rechner B ist ein Rechner, der ohne Firewall direkt erreichbar ist. Zum Testen habe ich versucht meinen HTTP-Server erreichbar zu machen. Dazu habe ich folgendes von A aus probiert:
ssh -g -R 50123:B:80 B
Wenn ich danach versuche mit einem Browser von B aus auf Port 50123 zuzugreifen, dann erhalte wie erwartet die Verbindung zu meinem HTTP-Server. Versuche ich aber von einem anderen Rechner aus auf B:50123 zuzugreifen, dann erhalte ich ein Connection Refused.
man ssh: -R [bind_address:]port:host:hostport [snip] By default, the listening socket on the server will be bound to the loopback interface only. This may be over- riden by specifying a bind_address. An empty bind_address, or the address `*', indicates that the remote socket should listen on all interfaces. Specifying a remote bind_address will only succeed if the server's GatewayPorts option is enabled (see sshd_config(5)).
Ich habe auf B keine Root-Recht, aber auf A. Die sshd_config von B hat keinen Eintrag, die Gateways verbietet. Kann mir jemand sagen, was ich falsch mache?
tschau
Gruss Jan -- ASCII a stupid question, get a stupid ANSI
Am Mittwoch, 23. August 2006 16:23 schrieb Jan 'RedBully' Seiffert:
Sascha Effert wrote:
Hallo,
ich sitze hier hinter einer Firewall und möchte einen Port meines Rechners von aussen erreichbar machen (habe die Erlaubnis unseres Admins). Mein Rechner ist Rechner A. Rechner B ist ein Rechner, der ohne Firewall direkt erreichbar ist. Zum Testen habe ich versucht meinen HTTP-Server erreichbar zu machen. Dazu habe ich folgendes von A aus probiert:
ssh -g -R 50123:B:80 B
Wenn ich danach versuche mit einem Browser von B aus auf Port 50123 zuzugreifen, dann erhalte wie erwartet die Verbindung zu meinem HTTP-Server. Versuche ich aber von einem anderen Rechner aus auf B:50123 zuzugreifen, dann erhalte ich ein Connection Refused.
man ssh:
-R [bind_address:]port:host:hostport [snip] By default, the listening socket on the server will be bound to the loopback interface only. This may be over- riden by specifying a bind_address. An empty bind_address, or the address `*', indicates that the remote socket should listen on all interfaces. Specifying a remote bind_address will only succeed if the server's GatewayPorts option is enabled (see sshd_config(5)).
Ich habe auch folgendes probiert ssh -g -R "*:50123:B:80" B Local (auf B) geht (nur über localhost), Remote nicht: ssh -g -R "*:50123:localhost:80" B Local (auf B) geht, Remote nicht In der man-page von A steht der Auszug übrigens so drin, wie Du ihn mir geschickt hast. Leider hatte ich in der man-page auf B nachgesehen, dort gibt es die Option der Bindadress nicht... Da ich auf B keine Rootrechte habe, kann ich dort keinen Apache installieren. Ausserdem will ich das nachher eh für andre Dinge nutzen. tschau Sascha Effert fermat@douglas2a.de Tel.:(0177) 6266652 -- Being evil means it can be christmas every day.
Hi,
Ich habe auch folgendes probiert
ssh -g -R "*:50123:B:80" B Local (auf B) geht (nur über localhost), Remote nicht:
ssh -g -R "*:50123:localhost:80" B Local (auf B) geht, Remote nicht
Dann probier doch mal folgendes: ssh -g -L 50123:B:80 B Wenn ich das jetzt richtig seh, bringst Du Remote & Local-Forwarding durcheinander... Gruß, Holger
On Wed, Aug 23, 2006 at 04:05:05PM +0200, Sascha Effert wrote:
ich sitze hier hinter einer Firewall und möchte einen Port meines Rechners von aussen erreichbar machen (habe die Erlaubnis unseres Admins). Mein Rechner ist Rechner A. Rechner B ist ein Rechner, der ohne Firewall direkt erreichbar ist. Zum Testen habe ich versucht meinen HTTP-Server erreichbar zu machen. Dazu habe ich folgendes von A aus probiert:
ssh -g -R 50123:B:80 B
Wenn ich danach versuche mit einem Browser von B aus auf Port 50123 zuzugreifen, dann erhalte wie erwartet die Verbindung zu meinem HTTP-Server. Versuche ich aber von einem anderen Rechner aus auf B:50123 zuzugreifen, dann erhalte ich ein Connection Refused. Ich habe auf B keine Root-Recht, aber auf A. Die sshd_config von B hat keinen Eintrag, die Gateways verbietet. Kann mir jemand sagen, was ich falsch mache?
Moin hier ein Auszug aus der Manpage: # -g Allows remote hosts to connect to *local* forwarded ports. Deinen Server kannst Du also nur erreichbar machen, wenn B als Proxy arbeitet. Schreib mal in Bs apache Config sowas wie: # ProxyPass /A/ http://localhost:50123/ Dann ruf mal # http://B/A/ auf. (Ich hoffe, ich bin jetzt nicht mit den ganzen As und Bs durcheinandergekommen. Liebe Grüße -- Hans-Joachim Hoetger voice: +49-5246-80-1555 Telefónica Deutschland GmbH fax: +49-5246-80-2555 "Unterstützen Sie den Verein zur Rettung von dem Dativ!"
Teilnehmer (4)
-
Hans-Joachim Hoetger
-
Holger van Lengerich
-
Jan 'RedBully' Seiffert
-
Sascha Effert