Table of Contents | ||||
---|---|---|---|---|
|
Info |
---|
Подключите устройств семейства Рутокен ЭЦП к компьютеру. |
Перед началом работы, установите следующие пакеты:
Code Block |
---|
sudo yumdnf update sudo yumdnf install ccid opensc pam_pkcs11 gdm-plugin-smartcard p11-kit |
Загрузите модуль librtpkcs11ecp.so и установите:
Code Block |
---|
sudo rpm -i librtpkcs11ecp-2X.0X.4X.0X-1X.x86_64.rpm |
Создание ключей и сертификатов
Для Проверьте наличие libpkcs11.so по пути: /usr/lib64/engines-1.1/
. Если ее нет, то для начала установите libpkcs11.so для того, чтобы OpenSSLL OpenSSL смог общаться к Рутокеном.
...
Для этого соберите библиотеку libp11 из репозитория. Вместе с ней идет libpkcs11.so начиная с версии 0.4.
...
Code Block |
---|
openssl
OpenSSL> openssl engine dynamic -pre SO_PATH:/usr/lib64/engines-1.1/libpkcs11.so -pre ID:pkcs11 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:/usr/lib64/librtpkcs11ecp.so
OpenSSL> req -engine pkcs11 -new -key 0:45 -keyform engine -x509 -out cert.crt -outform DER
|
...
Code Block |
---|
openssl
OpenSSL> openssl engine dynamic -pre SO_PATH:/usr/lib64/engines-1.1/libpkcs11.so -pre ID:pkcs11 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:/usr/lib64/librtpkcs11ecp.so
OpenSSL> req -engine pkcs11 -new -key 0:45 -keyform engine -out request.req
|
...
Проверьте, что токен подключен и на нем сохранены сертификаты и ключи.
Добавление сертификата в список доверенных
Создайте базу данных доверенных сертификатов
Code Block |
---|
sudo mkdir /etc/pam_pkcs11/nssdb sudo chmod 0644777 /etc/pam_pkcs11/nssdb sudo certutil -d /etc/pam_pkcs11/nssdb -N # создание базы данных sudo modutil -dbdir /etc/pam_pkcs11/nssdb/ -add p11-kit-trust -libfile /usr/lib64/pkcs11/p11-kit-trust.so |
...
Code Block |
---|
sudo cp cert.crt /etc/pki/ca-trust/source/anchors/ # команда вводится из директории, в которую был помещён сертификат sudo update-ca-trust force-enable sudo update-ca-trust extract # может занять некоторое время |
Настройка pam_pkcs11
Создайте (например, на рабочем столе) текстовый файл pam_pkcs11.conf со следующим содержимым:
...
Code Block |
---|
cd /etc/pam_pkcs11/ sudo mv pam_pkcs11.conf pam_pkcs11.conf.default #резервное копирование sudo mkdir cacerts crls sudo cp /path/to/your/pam_pkcs11.conf /etc/pam_pkcs11/ |
...
Регистрация модуля PAM PKCS11 для аутентификации в системе
Подключите модуль к системе авторизации PAM:
...
В результате отобразится сообщение:
|
Скопируйте строчку с описанием сертификата в файл /etc/pam_pkcs11/digest_mapping в формате:
Code Block |
---|
<вывод команды pkcs11_inspect> -> <имя_пользователя> |
...
Пример заполнения файла:
|
Попробуйте аутентифицироваться:
Code Block |
---|
su <username> |
...
Терминал должен запросить PIN код рутокена:
|
В окне экрана приветствия аналогично:
Настройка автоблокировки
В состав пакета libpam-pkcs11 входит утилита pkcs11_eventmgr, которая позволяет выполнять различные действия при возникновении событий PKCS#11.
...