включая Astra Linux
0 Проверка модели устройства
- Подключите USB-токен к компьютеру.
- Для определения названия модели USB-токена откройте Терминал и введите команду:
...
В результате в окне Терминала отобразится название модели USB-токена:
Code Block | ||
---|---|---|
| ||
$ lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 005: ID 0a89:0030 Aktiv Rutoken ECP
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub |
Убедитесь, что используете: Aktiv Rutoken ECP
1 Устанавливаем необходимые пакеты
Code Block | ||
---|---|---|
| ||
sudo apt-get install libccid pcscd opensc openssl libpam-pkcs11 |
2 Добавляем PAM модуль с поддержкой ГОСТ-2012
Загружаем библиотеку через браузер
...
Code Block | ||
---|---|---|
| ||
$ sudo cp librtpam.so.1.0.0 /usr/lib/x86_64-linux-gnu/ $ sudo chmod 644 /usr/lib/x86_64-linux-gnu/librtpam.so.1.0.0 |
3 Добавляем библиотеку librtpkcs11ecp.so
Загружаем библиотеку через браузер.
...
Code Block | ||
---|---|---|
| ||
$ sudo cp librtpkcs11ecp.so /usr/lib/x86_64-linux-gnu/ $ sudo chmod 644 /usr/lib/x86_64-linux-gnu/librtpkcs11ecp.so |
4 Проверяем что Рутокен ЭЦП работает в системе
В Терминале
Code Block | ||
---|---|---|
| ||
$ pkcs11-tool --module /usr/lib/x86_64-linux-gnu/librtpkcs11ecp.so -T |
В случае если увидите вот такую строку, значит все хорошо.
Rutoken ECP <no label>
5 Считываем сертификат
Проверяем что на устройстве есть сертификат
...
- нет ничего, значит устройство пустое. Обратитесь к администратору или создайте ключи и сертификат самостоятельно следуя следующему шагу
5.1 Создаем самоподписанный сертификат
Info |
---|
Собирайте ветку pkcs11-tool с поддержкой ГОСТ-2012 из нашего GitHub-а2012, или используйте релиз OpenSC 0.20.0 или новее |
Откройте Терминал
Генерируем ключевую пару с параметрами:
...
создаем самоподписанный сертификат. Для этого сначала надо установить и настроить для работы с Рутокен OpenSSL 1.1 или новее через специальный модуль rtengine
по инструкции: Установка и настройка OpenSSL для работы с rtengine 0.7.x
Чтобы использовать этот id
ключевой пары, созданной через pkcs11-tool, в OpenSSL – надо использовать hex-символы из таблицы ASCII, соответствующие этим кодам.
...
Code Block | ||
---|---|---|
| ||
$ pkcs11-tool --module /usr/x86_64-linux-gnu/librtpkcs11ecp.so -l -y cert -w cert.crt --id 3132 |
6 Регистрируем сертификат в системе
Откройте Терминал
Конвертируем сертификат в текстовый формат
...
Code Block | ||
---|---|---|
| ||
mkdir ~/.eid chmod 0755 ~/.eid cat cert.pem >> ~/.eid/authorized_certificates chmod 0644 ~/.eid/authorized_certificates |
7 Настраиваем аутентификацию
Откройте Терминал
Code Block | ||
---|---|---|
| ||
$ sudo nano /usr/share/pam-configs/rtpam-gost |
...
Code Block | ||
---|---|---|
| ||
Name: Rutoken PAM GOST
Default: yes
Priority: 800
Auth-Type: Primary
Auth: sufficient /usr/lib/x86_64-linux-gnu/librtpam.so.1.0.0 /usr/lib/x86_64-linux-gnu/librtpkcs11ecp.so |
...
в появившемся окне ставим галку в "Rutoken PAM GOST" и нажимаем OK
8 Проверка
Откройте Терминал
Code Block | ||
---|---|---|
| ||
$ sudo login |
введите имя пользователя и в случае если система потребует PIN-код от устройства значит все настроено правильно
9 Блокировка компьютера при извлечении токена
В состав пакета libpam-pkcs11 входит утилита pkcs11_eventmgr, которая позволяет выполнять различные действия при возникновении событий PKCS#11.
...
|
...