01 octubre 2008

Shell auto-logout

¿Te gustaría que ciertas sesiones shell se cierren automáticamente después de un tiempo? Las sesiones root que se quedan abiertas en un ordenador ajeno o las sesiones SSH abiertas a un servidor importante pueden resultar un grave agujero de seguridad, especialmente si permanecen abiertas largo tiempo. Aunque su cierre automático no elimina el agujero de seguridad, sí minimiza su impacto.

Solución


La solución es muy sencilla, pero la implementación depende del tipo de shell usado.

bash, zsh, ksh:
  1. Edita el script de inicio (para una shell bash en este ejemplo) con tu editor favorito (vi en el ejemplo):
  2. vim ~/.bashrc
  3. Al añadir la siguiente linea al final del fichero se configuran 1800s (30min) como tiempo de espera antes de cerrar la sesión automáticamente:
  4. export TMOUT=1800
tcsh:
  1. Edita el script de inicio (lo siento, pero no sé cual es el fichero correspondiente en este caso) con tu editor favorito.
  2. Al añadir la siguiente linea al final del fichero se configuran 30min como tiempo de espera antes de cerrar la sesión automáticamente:
  3. set autologout=30
¡Y listo!

Explicación

Todas las shells mencionadas tienen soporte para cierre automático de sesión después de un tiempo de espera, simplemente hay que configurar el tiempo de espera activando la variable de entorno correspondiente. Échale un vistazo a la documentación de tu shell (man bash, por ejemplo) para ver más información al respecto.

Créditos: Descubrí esta configuración al dar con esta página

No hay comentarios: