Bloqueo automático de la pantalla al retirarse#
Esta guía le guiará a través de la configuración de su ordenador, para bloquear automáticamente su sesión cuando retire la Nitrokey.
La configuración requiere la creación de dos archivos en dos directorios diferentes.
Requisitos#
Ubuntu 20.04 o Debian 10 (Buster), ambos con Gnome Display Manager instalado.
Nitrokey Pro 2, Nitrokey Storage 2 o Nitrokey HSM 2
Configuración#
Crear el archivo .rules
.#
Con tu editor de texto favorito crea un archivo llamado 85-nitrokey.rules
$ sudo editor /etc/udev/rules.d/85-nitrokey.rules
Añade la siguiente línea al archivo
ACTION=="remove", ENV{PRODUCT}=="20a0/4108/101" RUN+="/usr/local/bin/gnome-screensaver-lock"
Guarde el archivo y salga del editor.
Este archivo configura una nueva regla de hardware que ejecuta el gnome-screensaver-lock
al retirar el dispositivo Nitrokey.
Debe cambiar la configuración de acuerdo con el dispositivo que está utilizando como sigue:
Nitrokey Pro:
ENV{PRODUCT}=="20a0/4108/101"
Nitrokey HSM:
ENV{PRODUCT}=="20a0/4230/101"
Almacenamiento de Nitrokey:
ENV{PRODUCT}=="20a0/4109/101"
Si tienes un dispositivo diferente y necesitas averiguar la cadena ENV{PRODUCT}
puedes usar el siguiente comando para averiguar los infos al enchufar:
$ udevadm monitor --property --udev
Crear el script gnome-screensaver-lock
#
Con tu editor de texto favorito crea un archivo llamado gnome-screensaver-lock
$ sudo editor /usr/local/bin/gnome-screensaver-lock
Añada el siguiente texto
user=`ps axo user:30,comm | egrep "gdm-(wayland|x)" | awk '{print $1}'`
if [ -n $user ]; then
su $user -c "/usr/bin/dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock"
fi
En el primer paso, este script busca el nombre de usuario de la sesión de gnome, es decir, user
.
Cuando se llama a la eliminación de Nitrokey, el script consulta user
, cambia a su sesión, y bloquea la pantalla solicitando la pantalla del salvapantallas.
Ejecutar el script#
Una vez configurado todo, ejecute el script una vez, y bloqueará la pantalla. No importa si la Nitrokey está conectada o no para esta primera ejecución.
Uso#
Ahora puedes volver a entrar en tu sesión introduciendo tu contraseña, y (re)conectar tu Nitrokey si no lo has hecho antes.
La próxima vez que desenchufes tu Nitrokey del ordenador, se bloqueará automáticamente la pantalla.