Локальная аутентификация в Astra Linux Smolensk и Рутокен ЭЦП (RSA) – Портал документации Рутокен

Изменение конфигурационного файла libccid

Рутокен ЭЦП 2.0, Рутокен Lite и Рутокен Magistra являются устройствами, поддерживающими стандарт CCID.

За поддержку стандарта CCID в операционных системах GNU/Linux в pcsc-lite отвечает модуль libccid. Модуль libccid имеет конфигурационный файл с описанием устройств, проверенных автором модуля на совместимость.

https://www.youtube.com/watch?v=ytaboutru

Если Вы используете новый и часто обновляемый дистрибутив GNU/Linux, то ничего делать не нужно – Рутокен заработает автоматически.

Пользователям стабильных и консервативных дистрибутивов GNU/Linux необходимо добавить в конфигурационный файл запись о Рутокен.

Локальная аутентификация в Astra Linux Smolensk и Рутокен ЭЦП (RSA) - Портал документации Рутокен

Для этого нужно открыть в любом текстовом редакторе конфигурационный файл, находящийся по адресу

 /usr/lib/pcsc/drivers/ifd-bundle/Contents/Info.plist,

в массиве {amp}lt;key{amp}gt;ifdVendorID{amp}lt;/key{amp}gt;добавить {amp}lt;string{amp}gt;0x0A89{amp}lt;/string{amp}gt;

в массиве {amp}lt;key{amp}gt;ifdProductID{amp}lt;/key{amp}gt;добавить {amp}lt;string{amp}gt;0x0030{amp}lt;/string{amp}gt;

в массиве {amp}lt;key{amp}gt;ifdFriendlyName{amp}lt;/key{amp}gt;добавить {amp}lt;string{amp}gt;Aktiv Rutoken ECP{amp}lt;/string{amp}gt;

в массиве {amp}lt;key{amp}gt;ifdProductID{amp}lt;/key{amp}gt;добавить {amp}lt;string{amp}gt;0x0025{amp}lt;/string{amp}gt;

в массиве {amp}lt;key{amp}gt;ifdFriendlyName{amp}lt;/key{amp}gt;добавить {amp}lt;string{amp}gt;Aktiv Rutoken lite{amp}lt;/string{amp}gt;

в массиве {amp}lt;key{amp}gt;ifdProductID{amp}lt;/key{amp}gt;добавить {amp}lt;string{amp}gt;0x0060{amp}lt;/string{amp}gt;

в массиве {amp}lt;key{amp}gt;ifdFriendlyName{amp}lt;/key{amp}gt;добавить {amp}lt;string{amp}gt;Aktiv Rutoken Magistra{amp}lt;/string{amp}gt;

в массиве {amp}lt;key{amp}gt;ifdProductID{amp}lt;/key{amp}gt;добавить {amp}lt;string{amp}gt;0x0061{amp}lt;/string{amp}gt;

Для использования нескольких моделей Рутокен необходимо добавить информацию для каждой из них.

Проверка работоспособности

  1. Установите утилиту pcsc_scan (обычно в присутствует в пакете pcsc-tools) и запустите её. Утилита должна выдать длинный лог, в котором есть упоминание нужного устройства.
  2. Остановите сервис pcscd, если он запущен. Запустите pcscd вручную в отладочном режиме:

    # /usr/sbin/pcscd -afddddd

    Если устройство работает, то при подключении/отключении вы заметите его упоминание в отладочном логе.

3 Проверяем что Рутокен ЭЦП работает в системе

Пуск – утилиты – Терминал Fly

$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -T 

В случае если увидите вот такую строку, значит все хорошо.

Rutoken ECP {amp}lt;no label{amp}gt; 

4 Считываем сертификат

Проверяем что на устройстве есть сертификат

$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -O 

https://www.youtube.com/watch?v=ytpolicyandsafetyru

Если после строчки 

Using slot 0 with a present token (0x0) 

нет ничего, значит устройство пустое. Обратитесь к администратору или создайте ключи и сертификат самостоятельно следуя пункту 4.1

Локальная аутентификация в Astra Linux Smolensk и Рутокен ЭЦП (RSA) - Портал документации Рутокен

Если после строчки

Using slot 0 with a present token (0x0)

выводится информация о ключах и сертификатах то необходимо считать сертификат

$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -r -y cert --id {id} {amp}gt; cert.crt

вместо {id} нужно подставить ID который вы увидите в выводе команды

$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -O

В случае, если файл cert.crt создан переходим к пункту 5

генерируем ключевую пару 

$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so --keypairgen --key-type rsa:2048 -l --id 45

создаем самоподписанный сертификат

$ openssl
OpenSSL{amp}gt; engine dynamic -pre SO_PATH:/usr/lib/engines/engine_pkcs11.so -pre ID:pkcs11 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:/usr/lib/librtpkcs11ecp.so
OpenSSL{amp}gt; req -engine pkcs11 -new -key 0:45 -keyform engine -x509 -out cert.crt -outform DER

загружаем сертификат на устройство

$ pkcs11-tool --module /usr/lib/librtpkcs11ecp.so -l -y cert -w cert.crt --id 45

Если после строчки 

Если после строчки

5 Регистрируем сертификат в системе

Локальная аутентификация в Astra Linux Smolensk и Рутокен ЭЦП (RSA) - Портал документации Рутокен

Конвертируем сертификат в текстовый формат

OpenSSL{amp}gt; x509 -in cert.crt -out cert.pem -inform DER -outform PEM

Добавляем сертификат в список доверенных сертификатов

$ mkdir ~/.eid
$ chmod 0755 ~/.eid
$ cat cert.pem {amp}gt;{amp}gt; ~/.eid/authorized_certificates
$ chmod 0644 ~/.eid/authorized_certificates

6 Настраиваем аутентификацию 

$ sudo nano /usr/share/pam-configs/p11

записываем в файл следующую информацию

Name: Pam_p11
Default: yes
Priority: 800
Auth-Type: Primary
Auth: sufficient pam_p11_opensc.so /usr/lib/librtpkcs11ecp.so

сохраняем файл, нажимаем Alt X, а затем Y

после этого выполняем

в появившемся окне ставим галку в Pam_p11 и нажимаем OK

8 Блокировка компьютера при извлечении токена

В состав пакета libpam-pkcs11 входит утилита pkcs11_eventmgr, которая позволяет выполнять различные действия при возникновении событий PKCS#11.

Локальная аутентификация в Astra Linux Smolensk и Рутокен ЭЦП (RSA) - Портал документации Рутокен

Для настройки pkcs11_eventmgr служит файл конфигурации – /etc/pam_pkcs11/pkcs11_eventmgr.conf

pkcs11_eventmgr
{	# Запуск в бэкграунде daemon = true;	# Настройка сообщений отладки	debug = false;	# Время опроса в секундах	polling_time = 1;	# Установка тайм-аута на удаление карты	# По-умолчанию 0	expire_time = 0;	# Выбор pkcs11 библиотеки для работы с Рутокен	pkcs11_module = /usr/lib/librtpkcs11ecp.so;	# Действия с картой	# Карта вставлена:	event card_insert {	# Оставляем значения по умолчанию (ничего не происходит)	on_error = ignore ;	action = "/bin/false";	}	# Карта извлечена	event card_remove {	on_error = ignore;	# Вызываем функцию блокировки экрана	action = "fly-wmfunc FLYWM_LOCK";	}	# Карта долгое время извлечена	event expire_time {	# Оставляем значения по умолчанию (ничего не происходит)	on_error = ignore;	action = "/bin/false";	}
}

https://www.youtube.com/watch?v=upload

После этого добавьте приложение pkcs11_eventmgr в автозагрузку и перезагрузитесь.

Читайте также:  криптопро csp класс защиты
Оцените статью
ЭЦП Эксперт