Настройка системы
Перед началом работы, установите следующие пакеты:
|
Проверьте, что у вас установлен openssl версии 1.1 и выше
Скачайте pam модуль и положите его по адресу /usr/lib64
Для этого из папки с pam модулем выполните команду:
|
Установите права доступа:
|
Загрузите модуль librtpkcs11ecp.so и установите:
|
Проверяем, что все настроили правильно:
|
Далее потребуется скачать сертификат с токена, если его нету, то генерируем его согласно следующему пункту
Генерация сертификата и запись его на Рутокен
Создаем ключи на токене
|
Скачайте и разархивируйте комплект разработчика
|
В sdk находится необходимый нам rtengine. Поместите его в engines-1.1
|
Зайдите в файл конфигурации openssl.cnf
|
И впишите туда следующее:
[ openssl_def ] engines = engine_section [ engine_section ] rtengine = gost_section [ gost_section ] engine_id = rtengine dynamic_path = /usr/lib64/engines-1.1/rtengine.so pkcs11_path = /usr/lib64/librtpkcs11ecp.so default_algorithms = CIPHERS, DIGEST, PKEY, RAND |
Отредактируйте файл /etc/crypto-policies/back-ends/openssl.config
|
Далее необходимо выполнить следующую команду
|
Теперь создадим самоподписанный сертификат для наших ключей на токене. Для ключей ГОСТ 512 необходимо выполнить следующую команду
|
Загружаем его на токен
|
Регистрация сертификата в системе
Добавляем сертификат в список доверенных сертификатов
|
Настройка аутентификации
Открываем файл /etc/pam.d/system-auth
|
И записываем в самом начале следующую строчку:
|
Аналогично делаем с /etc/pam.d/password-auth.
Пробуем пройти аутентификацию
|
Если все прошло успешно, то появится просьба ввести PIN токена.
В окне экрана приветствия аналогично:
Настройка автоблокировки
В состав пакета libpam-pkcs11 входит утилита pkcs11_eventmgr, которая позволяет выполнять различные действия при возникновении событий PKCS#11.
Для того, чтобы аутентификация корректно работала на лок скрине. В настройках pkcs11_eventmgr нужно указать название сервиса, использующегося при аутентификации через лок скрин, чтобы сделать его доверенным. У каждой графической оболочки свое название данного сервиса. Узнать название вашей графической оболочки можно с помощью команды:
Название графической оболочки
|
Вот список соответствий названий графических оболочек и сервиса, используемого лок скрином. Данный список не является полным.
MATE → mate-screensaver
X-Cinnamon → cinnamon-screensaver
fly → <Отсутствует>
KDE → kde
GNOME → xdg-screensaver
Для настройки pkcs11_eventmgr служит файл конфигурации - /etc/pam_pkcs11/pkcs11_eventmgr.conf
Пример файла конфигурации представлен ниже:
|
После этого добавьте приложение pkcs11_eventmgr в автозагрузку и перезагрузите компьютер.
Для этого создайте папку ~/.config/autostart. И в данной директории создайте файл ~/.config/autostart/smartcard-screensaver.desktop
|
Содержание файла smartcard-screensaver.desktop должно быть следующим:
|