Alternativa a TMOUT
Publicado por barnarasta (182 intervenciones) el 25/09/2012 17:48:58
Segun definicion de TMOUT:
La variable de entorno TMOUT nos permite definir el tiempo que queremos permitir a un usuario permanecer dentro de la shell o sesión SSH sin hacer nada (estado idle o inactivo). Para configurar esta variable, simplemente la añadimos dentro de nuestro perfil de variables/configuraciones de bash ~/.bash_profile o ~/.bashrc.
Pero eso no es totalmente cierto, TMOUT unicamente finaliza sesiones que estan inactivas en el prompt del sistema, pero NO!!!!, cuando el usuario se queda inactivo dentro de una aplicacion, - cobol, java, dialog, ....... -
Mi situacion es la siguiente:
Debian Squeeze (solo consola).
Tengo una aplicacion funcionando en un edificio de tres plantas que utilizan "putty" para atacar al servidor SQUEEZE, cuando una chica de la oficina se queda dentro de la ficha de produccion de algun producto bloquea ese acceso al taller, donde deben ir introduciendo los datos de fabricacion.
Cuando un comercial desplazado por la piel de toro accede al servidor desde su portatil, si NO cierra la sesion 'putty', - lo habitual es que cierren la tapa sin preocuparse de nada mas -
esta se queda ocupando un slot de /dev/pts por tiempos eternos.
Por mucho que insisto en la educacion sobre el tema, continuan produciendose los percances comentados.
Desde SCO-UNIX ( antes de migrar a Debian ) utilizaba la variable "idle" en /etc/default/idleout para marcar el tiempo maximo de inactividad, algo identico a nuestra querida TMOUT pero con mucha mas potencia, ya que expulsaba sin miramiento cuando se cumplia la premisa del tiempo agotado.
Pensando en que Linux no podia quedarse atras en esta funcion inicie la busqueda de algo similar - pensando incluso en crearme yo un script que lo realizara - y finalmente encontre lo que buscaba en :
" autolog "
http://packages.debian.org/stable/autolog
# aptitude install autolog
Totalmente parametrizable para controlar inactividad por grupo o usuario.
Dando aviso previo de desconexion y un periodo de gracia.
Posibilidad de proteccion de usuarios.
Los parametros se situan en el archivo /etc/autolog.conf
Seguimiento de las expulsiones en /var/log/autolog.log
El demonio "daemon" arranca en 'boot' desde /etc/rc2.d/S01autolog pero puede detenerse y reiniciarse desde /etc/init.d/autlog [start / stop ]
y como no podia ser de otra forma tambien dispone de su
# man autolog
Los datos actuales del /etc/autolog.conf son los siguientes:
idle ----------> minutos de inactividad
grace -------> periodo de gracia despues del AVISO PREVIO a la desconexion.
hard --------> expulsion total (liberacion del /dev/pts y el usuario tiene que volver a logearse).
Si alguien descubre algo mas, ve algun problema o conoce algun programilla mejor ................
encantadisimo de leerlo.
La variable de entorno TMOUT nos permite definir el tiempo que queremos permitir a un usuario permanecer dentro de la shell o sesión SSH sin hacer nada (estado idle o inactivo). Para configurar esta variable, simplemente la añadimos dentro de nuestro perfil de variables/configuraciones de bash ~/.bash_profile o ~/.bashrc.
1
2
3
# Establecemos en 2 minutos (120 segundos) el Timeout para la sesión bash/ssh
TMOUT=120
readonly TMOUT
Pero eso no es totalmente cierto, TMOUT unicamente finaliza sesiones que estan inactivas en el prompt del sistema, pero NO!!!!, cuando el usuario se queda inactivo dentro de una aplicacion, - cobol, java, dialog, ....... -
Mi situacion es la siguiente:
Debian Squeeze (solo consola).
Tengo una aplicacion funcionando en un edificio de tres plantas que utilizan "putty" para atacar al servidor SQUEEZE, cuando una chica de la oficina se queda dentro de la ficha de produccion de algun producto bloquea ese acceso al taller, donde deben ir introduciendo los datos de fabricacion.
Cuando un comercial desplazado por la piel de toro accede al servidor desde su portatil, si NO cierra la sesion 'putty', - lo habitual es que cierren la tapa sin preocuparse de nada mas -
esta se queda ocupando un slot de /dev/pts por tiempos eternos.
Por mucho que insisto en la educacion sobre el tema, continuan produciendose los percances comentados.
Desde SCO-UNIX ( antes de migrar a Debian ) utilizaba la variable "idle" en /etc/default/idleout para marcar el tiempo maximo de inactividad, algo identico a nuestra querida TMOUT pero con mucha mas potencia, ya que expulsaba sin miramiento cuando se cumplia la premisa del tiempo agotado.
Pensando en que Linux no podia quedarse atras en esta funcion inicie la busqueda de algo similar - pensando incluso en crearme yo un script que lo realizara - y finalmente encontre lo que buscaba en :
" autolog "
http://packages.debian.org/stable/autolog
# aptitude install autolog
Totalmente parametrizable para controlar inactividad por grupo o usuario.
Dando aviso previo de desconexion y un periodo de gracia.
Posibilidad de proteccion de usuarios.
Los parametros se situan en el archivo /etc/autolog.conf
Seguimiento de las expulsiones en /var/log/autolog.log
El demonio "daemon" arranca en 'boot' desde /etc/rc2.d/S01autolog pero puede detenerse y reiniciarse desde /etc/init.d/autlog [start / stop ]
y como no podia ser de otra forma tambien dispone de su
# man autolog
Los datos actuales del /etc/autolog.conf son los siguientes:
1
2
3
4
5
# idle - limits
group=tecnics idle=15 grace=20 hard
# session - limits
name=sergio idle=20 grace=20 hard
idle ----------> minutos de inactividad
grace -------> periodo de gracia despues del AVISO PREVIO a la desconexion.
hard --------> expulsion total (liberacion del /dev/pts y el usuario tiene que volver a logearse).
Si alguien descubre algo mas, ve algun problema o conoce algun programilla mejor ................
encantadisimo de leerlo.
Valora esta pregunta


1