TTY [1-6]: pantalla de bloqueo después del retraso (como un protector de pantalla)

10

Al usar los terminales virtuales en TTY 1-6 [*] , a veces es fácil olvidar cerrar sesión: la pantalla se queda en blanco después de un tiempo, pero todavía estoy conectado; no se requiere contraseña, cualquiera puede usar mi cuenta. (O cambio a otro TTY y olvido el otro ...)

Me gustaría tener una funcionalidad similar a un protector de pantalla que bloquee el terminal después de 3 minutos y luego requiera una contraseña. ¿Cómo configuro esto?


[*] Con TTY 1-6, quiero decir CTRLALTF1- CTRLALTF6( sin servidor X )

Chris Lercher
fuente

Respuestas:

6

Sé que esto es viejo, pero te encontré en Google buscando la misma pregunta.

Si estás usando bash, no hay problema. Simplemente use la variable de entorno 'TMOUT' que es utilizada por bash para un cierre de sesión automático (cerrar sesión, no bloquear) en los segundos dados.

Puede escribir '' TMOUT = 5 '' en cualquier bash y see, lo que sucede.

Para la configuración en mi bashrc estoy usando

# autologout en tty1-6 después de 30 minutos
if [[$ (tty) = ~ / dev \ / tty [1-6]]]; entonces TMOUT = 1800; fi

así que no me desconecto en un emulador de terminal que normalmente está en / dev / pty / # y ya está bloqueado por mi protector de pantalla como parte de mi escritorio

blaimi
fuente
5

Implementar un protector de pantalla de esa manera para los TTY es difícil, ya que no puede consultar el servidor X por el tiempo de inactividad.

Si se disciplina, puede usar el vlockcomando para bloquear explícitamente un terminal.

Una solución alternativa para el enfoque de tiempo de espera sería ssh a localhost y dejar que el tiempo de espera de conexión ssh se encargue del resto. El tiempo de espera se especifica en LoginGraceTimein /etc/ssh/sshd_configy es de 120 segundos de forma predeterminada.

Si ejecuta exec ssh localhost, su sesión se cerrará automáticamente cuando se agote el tiempo de espera de la conexión ssh. Para mantener sus programas funcionando más allá del tiempo de espera, puede ejecutarlos a través de screen.

Egil
fuente
Tanto vlocky exec ssh localhostson grandes ideas (volveré a usar ellos)! Tienes razón, probablemente sea difícil consultar el tiempo de inactividad sin un servidor X. Sin embargo, me pregunto por qué la pantalla se queda en blanco después de un tiempo (y se activa al presionar una tecla). ¿Entonces quizás el mismo "disparador" podría usarse para bloquear la pantalla automáticamente de alguna manera?
Chris Lercher
Me acabo de enterar de que la pantalla en blanco (no el bloqueo) se puede ajustar setterm -blank [0-60], consulte la página de manual .
Chris Lercher
@Egil exec ssh localhostno cierra sesión automáticamente después LoginGraceTimede mí. ¡Esperé unos 8 minutos pero no ocurrió nada!
PHP Learner