Como usuario habitual de Windows, tiendo a tener problemas con cosas bastante básicas en MacOS, ya que no estoy acostumbrado a trabajar con él a diario. En un viaje que realicé recientemente, tuve que trabajar con mi Macbook Pro ya que esta fue la laptop que elegí para este viaje. Durante este viaje tuve que conectarme a un servidor a través de SSH y ejecutar algunos scripts. Uso Putty en Windows para conectarme a mis servidores, sin embargo, en este caso, decidí usar la utilidad cli integrada de OpenSSH en la terminal MacOS. Me di cuenta después de algunas conexiones que si no escribía nada durante unos 5 minutos, la conexión simplemente se cerraba y necesitaba conectarme de nuevo.
Como siempre hago esto de abrir una conexión SSH, me quedo desconectado por un tiempo y luego lo vuelvo a usar, tuve que investigar cómo configurarlo para que funcione correctamente y compartiré con ustedes cómo mantener abiertas sus conexiones SSH en MacOS Monterey.
1. Modifique su archivo de configuración de cliente OpenSSH SSH
Lo primero que debe hacer es ubicar el archivo de configuración SSH del sistema. En MacOS se encuentra en /etc/ssh/ssh_config
. Puede modificarlo usando el siguiente comando ( para obtener más información sobre este archivo de configuración, lea la página de manual aquí ):
sudo nano /etc/ssh/ssh_config
Alternativamente, si no desea realizar las modificaciones a nivel de todo el sistema sino al nivel de usuario actual, modifique en su lugar ~/.ssh/config file
:
sudo nano ~/.ssh/config
En cualquiera de estos archivos, deberá realizar la modificación del siguiente paso para mantener las conexiones vivas.
2. Mantener vivas las conexiones SSH
Ahora todo lo que necesita hacer es agregar el ServerAliveInterval
parámetro a su configuración. Este ajuste se puede realizar para todas las conexiones SSH o para un host específico. Desplácese hacia abajo hasta el final del archivo y agregue el parámetro con un valor numérico que corresponda al intervalo en segundos en el que el cliente enviará un encabezado de mantenimiento y evitará que la conexión se caiga. Si desea hacer esto globalmente (a cualquier host que pueda conectar, se enviará el encabezado de mantenimiento), configúrelo de esta manera:
Host *
ServerAliveInterval 30
Con esta configuración, el encabezado se enviará cada 30 segundos y debería mantener viva la conexión. En caso de que este valor no sea suficiente y sus conexiones sigan cayendo, reduzca este valor a sus necesidades (por ejemplo, a 10 segundos).
Si necesita mantener viva la conexión solo en ciertos hosts, también puede especificar la configuración de esta manera:
Host mywebsite.com
ServerAliveInterval 30
Su archivo de configuración debería tener este aspecto después de realizar la modificación:
Guarde los cambios en el archivo de configuración y vuelva a conectarse a sus servidores, la conexión ahora debería estar siempre activa siempre que el proceso de la terminal esté abierto (siéntase libre de ver un video de YouTube y regresar a su lugar de trabajo sin perder la conexión a su servidor 😳) .
Que te diviertas ❤️!
Conviertete en un programador más sociable