- Установить пакеты:
sudo apt install -y opensc gnutls-bin libengine-pkcs11-openssl p11-kit-modules
- Установить интерфейсные модули производителей (ИМП) в соответствии с инструкциями Ключевые носители (токены) PKCS в Astra Linux.
- Зарегистрировать установленные ИМП:
sudo mkdir -p /etc/pkcs11/modules
echo "module: /usr/lib/libjcPKCS11-2.so" | sudo tee /etc/pkcs11/modules/aladdin.module
echo "module: /usr/lib/librtpkcs11ecp.so" | sudo tee /etc/pkcs11/modules/rutoken.module
echo "module: /usr/lib/x86_64-linux-gnu/softhsm/libsofthsm2.so" | sudo tee /etc/pkcs11/modules/softhsm.module
- Исключить использование ненужных предустановленных ИМП:
echo -e "enable-in:" | sudo tee /etc/pkcs11/modules/p11-kit-trust.module > /dev/null
echo -e "enable-in:" | sudo tee /etc/pkcs11/modules/opensc-pkcs11.module > /dev/null
- Проверить список активных модулей:
p11-kit list-modules
- Далее использовать инструменты при одновременно подключенных ключевых носителях. Нужный ИМП при этом будет выбираться автоматически:
- Инструменты csp-monitor (начиная с версии libpam-csp_1.0.9+ci9) — с указанием интерфейсного модуля /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