Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

включая Astra Linux

0 Проверка модели устройства

  1. Подключите USB-токен к компьютеру.
  2. Для определения названия модели USB-токена откройте Терминал и введите команду:

...

В результате в окне Терминала отобразится название модели USB-токена:Image Removed

Code Block
languagebash
 $ 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

...

Загружаем библиотеку через браузер

https://download.rutoken.ru/Rutoken/PAM/1.0.0/x86_64/librtpam.so.1.0.0

или через Терминал

Code Block
languagebash
 $ wget --no-check-certificate https://download.rutoken.ru/Rutoken/PAM/1.0.0/x86_64/librtpam.so.1.0.0


Копируем в системную папку, открыв консоль в папке с PAM-модулями

Code Block
languagebash
$ sudo cp -Prv *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

...

Загружаем библиотеку через браузер.

Для 64-битной системы используйте ссылку:

https://download.rutoken.ru/Rutoken/PKCS11Lib/Current/Linux/x64/librtpkcs11ecp.so

Для 32-битной системы используйте ссылку:

https://download.rutoken.ru/Rutoken/PKCS11Lib/Current/Linux/x32/x86_64/librtpkcs11ecp.so

или через Терминалчерез консоль

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

Для 64-битной системы используйте:

Code Block
languagebash
 $ wget --no-check-certificate https://download.rutoken.ru/Rutoken/PKCS11Lib/Current/Linux/x64/librtpkcs11ecp.so

Для 32-битной системы используйте:

Code Block
languagebash
$ wget --no-check-certificate https://download.rutoken.ru/Rutoken/PKCS11Lib/Current/Linux/x86_64x32/librtpkcs11ecp.so

Копируем в системную папку  папку  

Code Block
languagebash
$ sudo cp librtpkcs11ecp.so /usr/lib/x86_64-linux-gnu/
$ sudo chmod 644 /usr/lib/x86_64-linux-gnu/librtpkcs11ecp.so

...

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

Info


Собирайте ветку pkcs11-tool с поддержкой ГОСТ-

2012 из нашего GitHub-а, пока не выпущен релиз OpenSC новее чем 0.19.0.
Или можно собирать утилиту из ветки master OpenSC взяв коммит 8cf1e6f

2012, или используйте релиз OpenSC 0.20.0 или новее

Откройте Терминал

Генерируем ключевую пару с параметрами:

...

создаем самоподписанный сертификат. Для этого сначала надо установить и настроить для работы с Рутокен OpenSSL 1.1 или новее через специальный модуль rtengine по инструкции: Установка и настройка OpenSSL для работы с rtengine 0.7.x

Чтобы использовать этот id ключевой пары, созданной через pkcs11-tool, в OpenSSL – надо использовать hex-символы из таблицы ASCII, соответствующие этим кодам.

...

Code Block
languagebash
$ sudo nano /usr/share/pam-configs/p11rtpam-gost

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

Code Block
languagebash
Name: Pam_p11 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

...

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

8 Проверка

Откройте Терминал

...

Для настройки 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

 /usr/lib/x86_64-linux-gnu/librtpkcs11ecp.so;
 
    # Действия с картой
    # Карта вставлена:
    event card_insert {
        # Оставляем значения по умолчанию (ничего не происходит)
        on_error = ignore ;
 
        action = "/bin/false";
    }
 
    # Карта извлечена
    event card_remove {
        on_error = ignore;
         

        #

        # Вызываем функцию блокировки экрана
       
       

 

# Для

Ubuntu 

GNOME 

        action

        action = "dbus-send --type=method_call --dest=org.gnome.ScreenSaver /org/gnome/ScreenSaver org.gnome.ScreenSaver.Lock";

            # Для XFCE
            # action = "xflock4";

            # Для Astra Linux (FLY)
            # action = "fly-wmfunc FLYWM_LOCK";
    }
 
    # Карта долгое время извлечена
    event expire_time {
        # Оставляем значения по умолчанию (ничего не происходит)
        on_error = ignore;
 
        action = "/bin/false";
    }
}



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

...