15 votos

¿Por qué mi ssh tiempo de espera varían con la ubicación de la red?

Cuando estoy conectado mediante ssh en uno de nuestros servidores de office (que correr Fedora 10) de la casa, mi sesión de tiempo de espera después de un período relativamente corto de la actividad (5 minutos). He intentado usar TcpKeepAlive en el lado del cliente, a ningún efecto.

La cosa que no entiendo es que si estoy en la oficina en la LAN de la compañía, puedo dejar una sesión inactiva todo el día sin que se agote el tiempo de espera, por lo que el comportamiento parece ser dependiente de mi ubicación.

Alguna idea de por qué esto está sucediendo y cómo evitar los tiempos de espera cuando no estoy en la LAN ? Estoy usando el cliente de Terminal server en Mac OSX, si eso ayuda.

ACTUALIZACIÓN - Dave Drager la sugerencia de utilizar el ServerAliveInterval establece en cero con TcpKeepAlive=no funcionó para mí. Con respecto a algunas de las otras respuestas, la ClientAlive... valores no son aceptadas por el Mac OSX cliente SSH.

6voto

Rikalous Puntos 2996

Hay una buena valoración crítica sobre este problema aquí.

Se recomienda:

ssh -o TCPKeepAlive=yes

o:

ssh -o TCPKeepAlive=no -o ServerAliveInterval=15

Sin embargo, tengo un problema en mi sitio de trabajo donde me caigo de sesiones, donde en la casa que están bien. Creo que mi firewall (cortafuegos SonicWall) puede ser flucking con TCPKeepAlive, tal vez porque de NAT.

Mi cliente SSH, SecureCRT, afortunadamente tiene una opción para un "NO-OP" protocolo", que creo que, básicamente, envía un comando que no hace nada para el servidor. Por habilitar manualmente esta soy capaz de permanecer conectado. No está seguro de lo que el MacOSX terminal de cliente tiene que es similar a la que. Hay una valoración crítica sobre cómo implementar la "NO-OP" en la línea de comandos.

Por último, es posible que desee utilizar Wireshark o de otro sniffer para ver su real conexión TCP para averiguar lo que está pasando con él. Ese sería el final del camino para ver por qué es todavía desconectar de vez en cuando.

2voto

radius Puntos 7838

Esto es probablemente debido a que cuando se conectan desde el hogar pasa a través de un firewall que cerrar sesión TCP después de una pequeña cantidad de tiempo. Pero TcpKeepAlive debe evitar esto. ¿Habilitado TcpKeepAlive en el lado del cliente o en el servidor ?

2voto

sysadmin1138 Puntos 86362

Me sale esto todo el tiempo en mi Comcast conexión. El problema es que su cliente SSH keep-alive intervalo es demasiado largo para el tiempo de espera configurado en su ruta de acceso de red. Si estás en Linux, puede modificar el "ServerAliveInterval" y "ServerAliveCounter" valores inferiores a sus valores predeterminados. Este valor se establece en segundos. Todo el sistema de archivo de configuración se encuentra (en general) en /etc/ssh/ssh_config. La configuración de los dos Y TcpKeepAlive deben ayudar a mantener su conexión va.

1voto

nik Puntos 5456

Como la radio dice, algunas de estado-completo cortafuegos hacer "olvidar" una conexión después de algunos (generalmente configurable) tiempo y no va a permitir la comunicación para la conexión; se espera la conexión a empezar con un TCP SYN (me refiero a su comunicación SSH aquí).

Hay otra posibilidad. La ruta de acceso de red entre su hogar y la oficina puede tener pérdidas (del paquete). Cuando intenta escribir en el cliente SSH, si el enlace se ha estancado durante un tiempo, el cliente puede renunciar y no.

Keepalive de configuración en el cliente manejará el primer caso aquí, pero no puede ayudar en el segundo caso. El cortafuegos suelen ser en su oficina perímetro y por lo tanto puede ser configurable. Que también ayudaría en el primer punto.

Para comprobar si usted está teniendo intermitente link pérdidas que podría mantener un 'ping' activo en el fondo de la máquina cliente.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: