поставить keychain для упрощения управлением ssh-агентами
sudo apt install keychain
заполнить ~/.bashrc для автостарта и дедуплекации агентов
положить скрипт ~/.kde/Autostart/screenlock-yubikey-unload.sh (должно быть можно и в более общем X session стартапе). висит демоном и слушает события скринлока
положить скрипт /usr/local/bin/yubikey-screen-lock.sh (форс скринлока. протестировано только на kde4)
заполнить /etc/udev/rules.d/85-yubikey-screen-lock.rules (чтобы вызывался скрипт скринлока). после этого sudo udevadm control --reload-rules
NB: средствами своего DE обязательно настроить жесткий форс скринлока через 5 мин неактивности. желательно еще средствами DE через 30 мин запуск скрипта типа такого:
#!/bin/bash
keepass2 --lock-all
qdbus org.kde.kwalletd /modules/kwalletd org.kde.KWallet.closeAllWallets
eval $(/usr/bin/keychain -q --eval --noask --agents ssh) ; ssh-add -e /usr/lib/x86_64-linux-gnu/libykcs11.so 2>/dev/null
опционально, еще поставить blueproximity
, в нем Locking command qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock
при Distance 10 / Duration 20