ssh tünellemesinde garip çıktı: çıktı başarısız; bağlantı başarısız: Bağlantı zaman aşımına uğradı;


18

ssh user@xx.yy.zz.41 -p 1234 -D 9898Tünel oluşturma için komut kullanıyorum ve firefox socks5 ip'i 127.0.0.1'e ve bağlantı noktasını 9898'e ayarladım. Başarılı çalışıyor, ancak terminalde çıkışta hata var:

channel 39: open failed: connect failed: Connection timed out
channel 41: open failed: connect failed: Connection timed out
channel 42: open failed: connect failed: Connection timed out
channel 43: open failed: connect failed: Connection timed out
channel 44: open failed: connect failed: Connection timed out

Periyodik olarak ortaya çıkar. Bu nedir? Sorun mu? Ne yapabilirim?

Yanıtlar:


21

Benzer sorunlar yaşadım. Firefox ile ssh üzerinden tünel oluşturuyorsanız, bazı http bağlantıları sunucu yükü veya yanlış yapılandırma nedeniyle zaman aşımına uğrayabilir. Bağlantı gerçekten zaman aşımı yaptığında, belirttiğiniz gibi bir hata mesajı alırsınız.

Bu mesajları aşağıdaki komutla engelleyebilirsiniz

ssh user@xx.yy.zz.41 -p 1234 -D 9898 -q

Man sayfasından ssh(1)

 -q      Quiet mode.  Causes most warning and diagnostic messages to be sup-
         pressed.

Mesajın bastırılması, uyarıların ssh veya ekran oturumlarınızı karıştırmasını önler.


Teşekkürler bu çözüm harika çalışıyor! Bir soru: bu zaman aşımı süresi, tüm tarayıcı işlemleri kapalı olsa bile periyodik olarak gerçekleşir. Zaman aşımına neyin neden olduğunu ve isteğin gönderildiği yeri belirlemeye çalışıyorum. ssh tüneli için daha ayrıntılı hata bilgilerinin nasıl görüntüleneceği konusunda herhangi bir öneriniz var mı?
gnarbarian

3

Set GatewayPortsiçin yesve yeniden deneyin.

ssh -o 'GatewayPorts yes' user@xx.yy.zz.41 -p 1234 -D 9898

man ssh_config

 DynamicForward
         Specifies that a TCP port on the local machine be forwarded over the secure channel, and the application protocol
         is then used to determine where to connect to from the remote machine.

         The argument must be [bind_address:]port.  IPv6 addresses can be specified by enclosing addresses in square
         brackets.  By default, the local port is bound in accordance with the GatewayPorts setting.  However, an explicit
         bind_address may be used to bind the connection to a specific address.  The bind_address of “localhost” indicates
         that the listening port be bound for local use only, while an empty address or ‘*’ indicates that the port should
         be available from all interfaces.

         Currently the SOCKS4 and SOCKS5 protocols are supported, and ssh(1) will act as a SOCKS server.  Multiple for‐
         wardings may be specified, and additional forwardings can be given on the command line.  Only the superuser can
         forward privileged ports.

 GatewayPorts
         Specifies whether remote hosts are allowed to connect to local forwarded ports.  By default, ssh(1) binds local
         port forwardings to the loopback address.  This prevents other remote hosts from connecting to forwarded ports.
         GatewayPorts can be used to specify that ssh should bind local port forwardings to the wildcard address, thus
         allowing remote hosts to connect to forwarded ports.  The argument must be “yes” or “no”.  The default is “no”.

1
-O 'GatewayPorts yes' kullanıyorum ama bu hata tekrar oluştu.
Arash Mousavi

Sorun GatewayPorts değil. Ağ geçidi bağlantı noktaları, ssh sunucusunun yerel olmayan bağlantı noktalarını dinlemesini sağlar. GatewayPorts, ters tünel yaparken çok kullanışlı hale gelir - özel ağdaki ana makinelerin ssh istemci ana makinenize geri bağlanmasına izin verir. Gordolio'nun hemen üstünde: yerel ssh tarafından başlatılan SOCKS sunucusu, SOCKS istemci kullanıcıları tarafından istenen ana bilgisayara / bağlantı noktasına ulaşamadığı zaman şikayet ediyor (Gordolio örneğinde, Firefox'ta olduğu gibi).
Mark
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.