Cómo evitar que las conexiones SSH desatendidas permanezcan conectadas

Cómo evitar que las conexiones SSH desatendidas permanezcan conectadas

Si es administrador de Linux, conoce el valor de Secure Shell. Sin esta herramienta, tendría dificultades para realizar mucha administración remota en sus servidores. De hecho, es probable que entres y salgas de máquinas todo el día. O bien, puede ingresar a SSH en un servidor y dejar esa conexión sin darse cuenta durante todo el día.

Y eso, amigos míos, está invitando a los problemas.

Qué pasa si dejas esa conexión en funcionamiento y alguien pasa por tu escritorio mientras no estás. Que alguien podría tener un asiento y tener en su servidor. No quieres eso. ¿O qué pasa si tiene otros usuarios que aseguran shell en esos servidores y no puede mirar por encima de sus hombros todo el día?

Esto no es algo que debas dejar al azar.

¿Puedes hacer algo al respecto? Ciertamente puedes. Secure Shell incluye una función de tiempo de espera que le permite configurar el servidor SSH de manera que desconecte a un usuario, después de un período de inactividad establecido.

Déjame mostrarte cómo se hace esto.

CONSULTE: Seguridad de Windows 10: Una guía para líderes empresariales (TechRepublic Premium)

Qué necesitará

  • Un servidor Linux con SSH instalado y funcionando correctamente

  • Un usuario con privilegios sudo

Cómo configurar Secure Shell para los tiempos de espera en el servidor

la configuración del demonio no configura las opciones necesarias para habilitar los tiempos de espera inactivos. Eso está bien porque podemos agregarlos fácilmente. Sin embargo, hay dos tipos de configuraciones que queremos cuidar. La primera es evitar que las sesiones inactivas permanezcan conectadas en el extremo del servidor.

Para encargarse de esto, abra el archivo de configuración en el servidor para editarlo con el comando:

 sudo nano /etc/ssh/sshd_config 

Desplácese hasta la parte inferior de ese archivo y agregue las siguientes tres líneas:

 TCPKeepAlive yesClientAliveInterval 30ClientAliveCountMax 2 

La interfaz de cliente predeterminada es en segundos. También puede usar:

 ClientAliveInterval 5m 

Sin embargo, el truco está en la opción ClientAliveCountMax. Esto informa al demonio SSH cuántas veces debe contar el intervalo de tiempo de espera. Por lo tanto, si establece ClientAlivecountMax en 2, contaría dos veces la interval ClientAliveInterval. Si establece ClientAliveInterval en 5m y ClientAliveCountMax en 2, el tiempo de espera total sería de 10 minutos.

También puede establecer las opciones en:

 ClientAliveInterval 10mClientAliveCountMax 0 

La configuración anterior también expiraría después de 10 minutos de inactividad.

Una vez que haya realizado sus configuraciones, reinicie el demonio SSH con el comando:

 sudo systemctl restart sshd 

La configuración anterior se encargará de cualquier sesión inactiva desde el servidor.

Cómo configurar Secure Shell para los tiempos de espera del cliente

Ahora vamos a establecer el tiempo de espera en el extremo del cliente. No tiene que hacer esto, ya que la configuración del servidor debe encargarse de los tiempos de espera inactivos. Pero, si eres de la persuasión demasiado cautelosa, es posible que desees evitar que cualquier cliente permanezca conectado a cualquier servidor remoto, a través de SSH. Desafortunadamente, esto no se puede configurar globalmente en el servidor, sino que debe atenderse en los clientes individuales.
La configuración se maneja en el .archivo bashrc. Pero en lugar de ir a través de ~ / de cada usuario.archivo bashrc, puede hacer esto en el archivo global con el comando:

 sudo nano /etc/bash.bashrc 

En ese archivo desplácese hacia abajo hasta la parte inferior y agregue las siguientes líneas:

 TMOUT=300readonly TMOUTexport TMOUT 

La opción TMOUT establece la cantidad de tiempo (en segundos) que se permitirá una conexión inactiva. Una configuración de TMOUT=300 interrumpirá las conexiones inactivas después de cinco minutos.

Cómo probar la configuración

Ahora que ha configurado el intervalo de tiempo de espera, abra una nueva ventana de terminal, conéctese a cualquiera de sus servidores Linux remotos, a través de SSH, no haga nada en el terminal. Debe ser expulsado de la sesión tan pronto como pase el tiempo de inactividad asignado.

Y eso es todo lo que hay que desconectar las sesiones SSH después de un período de inactividad. Haga esto para evitar que cualquier persona pueda realizar varias travesuras después de que usted (o cualquier persona) haya dejado sus escritorios con una conexión SSH en funcionamiento.

También consulte

  • Cómo convertirse en administrador de red: Una hoja de trucos (TechRepublic)

  • Cómo convertirse en un profesional de la ciberseguridad: Una hoja de trucos (TechRepublic)

  • El estafador de la mente maestra detrás de Catch Me If You Can talks ciberseguridad (TechRepublic download)

  • Seguridad en línea 101: Consejos para proteger su privacidad de hackers y espías (ZDNet)

  • Todos los términos de VPN que necesita saber (CNET)

  • Ciberseguridad y ciberguerra: Más información cobertura (TechRepublic en Flipboard)

Protección de la red de seguridad de la computadora y proteja su concepto de datos. Desarrollo de programa de codificación con tecla en el teclado
Imagen: / marchmeena29

Deja una respuesta

Tu dirección de correo electrónico no será publicada.