salida extraña en el túnel ssh: salida fallida; falló la conexión: se agotó el tiempo de espera de la conexión;

18

Uso el ssh [email protected] -p 1234 -D 9898comando para tunelizar, y configuré firefox socks5 ip en 127.0.0.1 y su puerto en 9898. Funciona con éxito, pero en la terminal tengo un error en la salida:

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

Se produce periódicamente. ¿Qué es esto? ¿Es un problema? ¿Que puedo hacer?

Arash Mousavi
fuente

Respuestas:

21

He experimentado problemas similares. Si está haciendo un túnel con Firefox a través de ssh, algunas conexiones http pueden simplemente agotar el tiempo de espera debido a la carga del servidor o la configuración incorrecta. Cuando la conexión realmente agota el tiempo de espera, recibirá un mensaje de error como el que indicó.

Puede suprimir estos mensajes con el siguiente comando

ssh [email protected] -p 1234 -D 9898 -q

Desde la página del manual ssh(1)

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

La supresión del mensaje evitará que las advertencias estropeen sus sesiones ssh o de pantalla.

Gordolio
fuente
Gracias esta solución funciona muy bien! Una pregunta: este tiempo de espera se produce periódicamente, incluso cuando todos los procesos del navegador están cerrados. Estoy tratando de determinar qué está causando el tiempo de espera y dónde se envía la solicitud. ¿Alguna sugerencia sobre cómo mostrar información de error más detallada para el túnel ssh?
gnarbarian
3

Establezca GatewayPortsa yese intente nuevamente.

ssh -o 'GatewayPorts yes' [email protected] -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”.
quanta
fuente
1
Uso -o 'GatewayPorts yes' pero este error ocurrió nuevamente.
Arash Mousavi
GatewayPorts no es el problema. Los puertos de puerta de enlace permiten que el servidor ssh escuche puertos no locales. GatewayPorts se vuelve muy útil cuando se realiza un túnel inverso, lo que permite que los hosts de la red privada se conecten nuevamente al host de su cliente ssh. Gordolio lo tiene justo arriba: el servidor SOCKS iniciado por el ssh local se queja cuando no puede llegar al host / puerto solicitado por los usuarios del cliente SOCKS (como en el ejemplo de Gordolio, Firefox).
Mark