Автоматическая блокировка экрана при удалении#
⨯ |
⨯ |
⨯ |
⨯ |
✓ |
✓ |
⨯ |
✓ |
Это руководство поможет вам настроить компьютер для автоматической блокировки сеанса при извлечении ключа Nitrokey.
Конфигурация требует создания двух файлов в двух разных каталогах.
Требования#
Ubuntu 20.04 или Debian 10 (Buster), оба с установленным Gnome Display Manager.
Nitrokey Pro 2, Nitrokey Storage 2 или Nitrokey HSM 2
Конфигурация#
Создайте файл .rules
.#
В вашем любимом текстовом редакторе создайте файл с именем 85-nitrokey.rules
.
$ sudo editor /etc/udev/rules.d/85-nitrokey.rules
Добавьте в файл следующую строку
ACTION=="remove", ENV{PRODUCT}=="20a0/4108/101" RUN+="/usr/local/bin/gnome-screensaver-lock"
Сохраните файл и выйдите из редактора.
Этот файл устанавливает новое аппаратное правило, которое выполняет gnome-screensaver-lock
при удалении устройства Nitrokey.
Вы должны изменить конфигурацию в соответствии с используемым устройством следующим образом:
Nitrokey Pro:
ENV{PRODUCT}=="20a0/4108/101"`
Nitrokey HSM:
ENV{PRODUCT}=="20a0/4230/101"
Хранилище Нитрокей:
ENV{PRODUCT}=="20a0/4109/101"`
Если у вас другое устройство и вам нужно узнать строку ENV{PRODUCT}
, вы можете использовать следующую команду, чтобы узнать информацию при подключении:
$ udevadm monitor --property --udev
Создайте сценарий gnome-screensaver-lock
.#
В вашем любимом текстовом редакторе создайте файл с именем gnome-screensaver-lock
.
$ sudo editor /usr/local/bin/gnome-screensaver-lock
Добавьте следующий текст
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
На первом этапе этот скрипт ищет имя пользователя сессии gnome, т.е. user
.
Когда он вызывается при удалении Nitrokey, скрипт запрашивает user
, переключается на свою сессию и блокирует экран, вызывая экран заставки.
Выполнить сценарий#
Когда все настроено, выполните скрипт один раз, и он заблокирует экран. При первом выполнении не имеет значения, подключен Nitrokey или нет.
Использование#
Теперь вы можете вернуться в свою сессию, введя пароль, и (повторно) подключить Nitrokey, если вы не сделали этого раньше.
В следующий раз, когда вы отключите Nitrokey от компьютера, он автоматически заблокирует экран.