Я пытаюсь настроить поддержку браузера смарт-карт для всех пользователей системы на LTS 20.04. Я прочитал довольно много руководств, в том числе это:
https://help.ubuntu.com/community/CommonAccessCard
но большинство из них, похоже, заканчиваются командой, подобной этой:
modutil -dbdir sql:.pki/nssdb/ -add "OpenSC" -libfile /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so
Что работает, но каждый пользователь должен будет запустить это (в каждой системе, которую они используют). Если я попытаюсь создать /etc/pki/nssdb и использовать аналогичную команду, она ничего не сделает.
Я столкнулся со следующим:
dpkg-divert --rename --add /usr/lib/firefox/libnssckbi.so
dpkg-divert --rename --add /usr/lib/x86_64-linux-gnu/nss/libnssckbi.so
ln -s /usr/lib/x86_64-linux-gnu/pkcs11/p11-kit-trust.so /usr/lib/firefox/libnssckbi.so
ln -s /usr/lib/x86_64-linux-gnu/pkcs11/p11-kit-trust.so /usr/lib/x86_64-linux-gnu/nss/libnssckbi.so
что, по-видимому, сработало для других, но даже после этого, если я не изменю ~/.pki/nssdb, Chrome не будет работать, и если я не добавлю устройство безопасности в Firefox (что я могу, по крайней мере, сделать для всей системы с файлом . json) он также не «видит» мою смарт-карту.
(Я даже установил Edge и попробовал его, но он ведет себя идентично Chrome. Не могу заставить приложение Teams увидеть мою смарт-карту, несмотря ни на что, но это уже другая история.)