Page tree

Versions Compared

Key

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

...

Стенд

Нам понадобится токен или смарт-карта семейства Рутокен ЭЦП, отформатированные через Панель управления Рутокен.

...

Если установка завершилась корректно, то в папке /usr/lib (или /usr/lib64) появится библиотека librtpkcs11ecp.so.

3 Проверяем работу токена или смарт-карты

...

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

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

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

4 Создаем ключевую пару

...

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

...

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

...

$ openssl
OpenSSL>  engine dynamic -pre SO_PATH:/usr/lib64/openssl/engines-1.1/pkcs11.so -pre ID:pkcs11 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:/usr/lib/librtpkcs11ecp.so

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

$ openssl
OpenSSL>  engine dynamic -pre SO_PATH:/usr/lib64/openssl/engines-1.1/pkcs11.so -pre ID:pkcs11 -pre LIST_ADD:1 -pre LOAD -pre MODULE_PATH:/usr/lib64/librtpkcs11ecp.so

Создаем сертификат в PEM-формате. Внимание! При выполнении этой команды запрашивается PIN-код пользователя.

...

auth        [success=1 default=ignore]  pam_pkcs11.so pkcs11_module=/usr/lib/librtpkcs11ecp.so

...

auth        [success=1 default=ignore]  pam_pkcs11.so pkcs11_module=/usr/lib64/librtpkcs11ecp.so

...

pam_pkcs11 {
  nullok = false;
  debug = false;
  use_first_pass = false;
  use_authtok = false;
  card_only = false;
  wait_for_card = false;
  use_pkcs11_module = rutokenecp;
 
  # Aktiv Rutoken ECP
  pkcs11_module rutokenecp {
    module = /usr/lib/librtpkcs11ecp.so
    slot_num = 0;
    support_thread = true;
    ca_dir = /etc/security/pam_pkcs11/cacerts;
    crl_dir = /etc/security/pam_pkcs11/crls;
    cert_policy = signature;
  }
 
  use_mappers = opensc;
  mapper_search_path = /lib/pam_pkcs11;
 
# Search certificates from $HOME/.eid/authorized_certificates to match users
mapper opensc {
debug = false;
module = /lib64/pam_pkcs11/opensc_mapper.so;
}
}

Для 64-битной версии замените строку

module = /usr/lib/librtpkcs11ecp.so на строку module = /usr/lib64/librtpkcs11ecp.so

и строку

mapper_search_path = /lib/pam_pkcs11; на строку mapper_search_path = /lib64/pam_pkcs11;

...