Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.8)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
Общая информация
В настоящей статье описывается настройка Astra Linux Special Edition 1.8 для использования ключевых носителей разных производителей. После применения указанных далее настроек ключевые носители определяются и становятся доступны по мере их подключения без необходимости выполнения каких-либо дополнительных действий (например, внесения изменений в конфигурационные файлы). В статье приведены базовые настройки, более подробная информация доступна по ссылке: pkcs11.conf — Configuration files for PKCS#11 modules.
Настройка единого доступа
- Установить пакеты:sudo apt install -y opensc gnutls-bin libengine-pkcs11-openssl p11-kit-modules
- Установить пакеты с интерфейсными библиотекам производителей ключевых носителей (далее - библиотеки) в соответствии с инструкциями Ключевые носители (токены) PKCS в Astra Linux. При появление новых производителей доустановить и зарегистрировать соответствующие библиотеки можно позднее.
- Зарегистрировать установленные библиотеки, для чего:
- Создать каталог /etc/pkcs11/modules если он не был создан ранее:sudo mkdir -p /etc/pkcs11/modules
- Для каждой используемой (добавляемой) библиотеки создать файл с указанием её размещения. Например:
- библиотека Аладдин на платформе x86-64:echo "module: /usr/lib/libjcPKCS11-2.so" | sudo tee /etc/pkcs11/modules/aladdin.module
- библиотека Рутокен на платформе x86-64:echo "module: /usr/lib/librtpkcs11ecp.so" | sudo tee /etc/pkcs11/modules/rutoken.module
- библиотека Softhsm на платформе x86-64:echo "module: /usr/lib/x86_64-linux-gnu/softhsm/libsofthsm2.so" | sudo tee /etc/pkcs11/modules/softhsm.module
- библиотека Аладдин на платформе x86-64:
- Создать каталог /etc/pkcs11/modules если он не был создан ранее:
- Исключить использование ненужных предустановленных библиотек. Например, исключить использование библиотеки p11-kit-trust (устанавливается по умолчанию) и библиотеки opensc-pkcs11:echo -e "enable-in:" | sudo tee /etc/pkcs11/modules/p11-kit-trust.moduleВ приведенном выше примере библиотеки исключаются для всех приложений. При необходимости можно разрешить использование библиотеки в отдельных приложениях, указав список имен исполняемых файлов этих приложений. Разделителем в списке может быть запятая или пробел. Например, для приложений gnome-keyring и p11-ki-proxy:
echo -e "enable-in:" | sudo tee /etc/pkcs11/modules/opensc-pkcs11.moduleecho -e "enable-in: gnome-keyring p11-ki-proxy" | sudo tee /etc/pkcs11/modules/p11-kit-trust.module - Проверить список зарегистрированных и активных библиотек:p11-kit list-modulesПример вывода команды (установлены и зарегистрированы библиотеки Аладдин и Рутокен, использование модулей p11-kit-trust и opensc-pkcs11 запрещено):
aladdin: /usr/lib/libjcPKCS11-2.so library-description: JaCarta PKCS#11 module library-manufacturer: Aladdin R.D. library-version: 2.11 rutoken: /usr/lib/librtpkcs11ecp.so library-description: Rutoken ECP PKCS #11 library library-manufacturer: Aktiv Co. library-version: 2.13
- Настроить инструменты для работы с токенами на работу при одновременно подключенных ключевых носителях. После выполнения настройки соответствующая ключевому носителю библиотека будет выбираться автоматически. В общем случае для единого доступа используется библиотека /usr/lib/x86_64-linux-gnu/p11-kit-proxy.so. Примеры:
- Инструменты csp-monitor (начиная с версии libpam-csp_1.0.9+ci9, обновления Astra Linux Special Edition 1.8.2, 1.7.6, 4.7.6) — с указанием библиотеки /usr/lib/x86_64-linux-gnu/p11-kit-proxy.so. В более ранних версиях использование единого доступа не поддерживается.
- Инструмент p11tool можно использовать без указания библиотеки:
p11tool --list-tokens Token 0: URL: pkcs11:model=eToken%20GOST;manufacturer=Aladdin%20R.D.;serial=0B53001841176966;token=JaCarta%20PKI Label: JaCarta PKI Type: Hardware token Flags: RNG, Requires login, uPIN low count, SO-PIN low count Manufacturer: Aladdin R.D. Model: eToken GOST Serial: 0B53001841176966 Module: /usr/lib/libjcPKCS11-2.so Token 1: URL: pkcs11:model=JaCarta%20Laser;manufacturer=Aladdin%20R.D.;serial=0B53001841176966;token=Astra%20Linux Label: Astra Linux Type: Hardware token Flags: Requires login, uPIN uninitialized Manufacturer: Aladdin R.D. Model: JaCarta Laser Serial: 0B53001841176966 Module: /usr/lib/libjcPKCS11-2.so Token 2: URL: pkcs11:model=Rutoken%20ECP;manufacturer=Aktiv%20Co.;serial=413a49ed;token=SambaDC_test Label: SambaDC_test Type: Hardware token Flags: RNG, Requires login Manufacturer: Aktiv Co. Model: Rutoken ECP Serial: 413a49ed Module: /usr/lib/librtpkcs11ecp.so
- Инструмент pkcs11-tool — использовать с указанием библиотеки /usr/lib/x86_64-linux-gnu/p11-kit-proxy.so:
pkcs11-tool --module /usr/lib/x86_64-linux-gnu/p11-kit-proxy.so -T Available slots: Slot 0 (0x11): Aladdin R.D. JaCarta [Main Interface] 00 00 token label : JaCarta PKI token manufacturer : Aladdin R.D. token model : eToken GOST token flags : login required, rng, SO PIN count low, SO PIN locked, token initialized, user PIN count low, PIN initialized hardware version : 1.0 firmware version : 1.6 serial num : 0B53001841176966 pin min/max : 6/32 Slot 1 (0x12): Aladdin R.D. JaCarta [Main Interface] 00 00 token label : Astra Linux token manufacturer : Aladdin R.D. token model : JaCarta Laser token flags : login required, token initialized hardware version : 1.0 firmware version : 1.0 serial num : 0B53001841176966 pin min/max : 4/16 Slot 2 (0x31): Aktiv Rutoken ECP 01 00 token label : SambaDC_test token manufacturer : Aktiv Co. token model : Rutoken ECP token flags : login required, rng, SO PIN to be changed, token initialized, PIN initialized, user PIN to be changed hardware version : 60.1 firmware version : 30.2 serial num : 413a49ed pin min/max : 6/32