Automatiskt skärmlås vid avlägsnande

Den här guiden hjälper dig att konfigurera datorn så att sessionen automatiskt låses när du tar bort Nitrokey.

Konfigurationen kräver att två filer skapas i två olika kataloger.

Krav

  • Ubuntu 20.04 eller Debian 10 (Buster), båda med Gnome Display Manager installerad.

  • Nitrokey Pro 2, Nitrokey Storage 2 eller Nitrokey HSM 2

Konfiguration

Skapa filen .rules.

Med din favorittextredigerare skapar du en fil som heter 85-nitrokey.rules.

$ sudo editor /etc/udev/rules.d/85-nitrokey.rules

Lägg till följande rad i filen

ACTION=="remove", ENV{PRODUCT}=="20a0/4108/101" RUN+="/usr/local/bin/gnome-screensaver-lock"

Spara filen och avsluta redigeringen.

Den här filen skapar en ny hårdvaruregel som utför gnome-screensaver-lock när Nitrokey-enheten tas bort.

Du bör ändra konfigurationen enligt följande beroende på vilken enhet du använder:

  • Nitrokey Pro: ENV{PRODUCT}=="20a0/4108/101"

  • Nitrokey HSM: ENV{PRODUCT}=="20a0/4230/101"

  • Nitrokey Storage: ENV{PRODUCT}=="20a0/4109/101"

Om du har en annan enhet och behöver ta reda på ENV{PRODUCT} -strängen kan du använda följande kommando för att ta reda på informationen när du ansluter:

$ udevadm monitor --property --udev

Skapa skriptet gnome-screensaver-lock.

Med din favorittextredigerare skapar du en fil som heter gnome-screensaver-lock.

$ sudo editor /usr/local/bin/gnome-screensaver-lock

Lägg till följande text

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

I det första steget letar skriptet efter användarnamnet för Gnome-sessionen, t.ex. user.

När det anropas när Nitrokey tas bort frågar skriptet user, växlar till sin session och låser skärmen genom att visa skärmsläckaren.

Exekvera skriptet

När allt är klart, kör skriptet en gång och skärmen låses. Det spelar ingen roll om Nitrokey är inkopplad eller inte vid denna första körning.

Användning

Nu kan du logga tillbaka till din session genom att ange ditt lösenord och (åter)ansluta din Nitrokey om du inte gjort det tidigare.

Nästa gång du kopplar bort Nitrokey från datorn låser den automatiskt skärmen.