Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Debian 11.2 - проблемы с USB-token eToken 5300  (Прочитано 2288 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн pavelg

  • Автор темы
  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Debian 11.2 - проблемы с USB-token eToken 5300
« : 12 Августа 2022, 11:00:09 »
Привет всем,

Модератор, если место для темы неправильно, пожалуйста, перенесите.

Система:

uname -ra
Linux ХХХХ-GW-B 5.10.0-10-amd64 #1 SMP Debian 5.10.84-1 (2021-12-08) x86_64 GNU/Linux

Проблема:

Для подключения VPN я использую openconnect VPN client с авторизацией через SmartCard с клиентским сертификатом.
Если используется SmartCard (manufacturerID: SafeNet, Inc.; model: eToken) подключенный через  Alcor Micro AU9540 reader, то всё в порядке, соединение устанавливается.
Если же я использую USB SafeNet eToken 5300 (manufacturerID: Gemalto; model: ID Prime MD), то попытки openconnect установить соединение падают с ошибкой:

Error signing test data with private key: PKCS #11 error.
Loading certificate failed. Aborting.
Failed to complete authentication


С дебагером эта ошибка выглядит так (ошибка в модуле PKCS11):

[2022-08-10 11:55:47]  Returned:  0 CKR_OK
[2022-08-10 11:55:47]  gnutls[2]: p11: Initializing module: opensc-pkcs11.module.ORIG
[2022-08-10 11:55:47]  P:37956; T:0x139638815061248 11:55:47.201 [opensc-pkcs11] pkcs11-global.c:402:C_GetInfo: C_GetInfo()
[2022-08-10 11:55:47]  gnutls[2]: p11: module opensc-pkcs11.module.ORIG is already loaded.
[2022-08-10 11:55:47]  gnutls[3]: ASSERT: ../../lib/pkcs11.c[auto_load]:951
[2022-08-10 11:55:47]  gnutls[2]: Cannot load PKCS #11 module: opensc-pkcs11.module.ORIG
[2022-08-10 11:55:47]  gnutls[2]: p11: Initializing module: softhsm2
[2022-08-10 11:55:47]  gnutls[3]: ASSERT: ../../lib/pkcs11.c[compat_load]:896
[2022-08-10 11:55:47]  gnutls[2]: p11: No login requested.
[2022-08-10 11:55:47]  Trying PKCS#11 key URL pkcs11:model=ID%20Prime%20MD;manufacturer=Gemalto;serial=09E850133ABF3E39;token=Pavel;id=%68%35%73%BD%14%9B%F5%37%02%8B%BF%CE%48%FB%71%38%B8%59%91%3E;object=EFF270AEC07D70DA;type=private
[2022-08-10 11:55:47]  PIN required for Pavel
[2022-08-10 11:55:48]  Enter PIN:
[2022-08-10 11:55:54]  gnutls[2]: p11: Login result = ok (0)
[2022-08-10 11:55:54]  gnutls[3]: ASSERT: ../../lib/pkcs11_privkey.c[gnutls_pkcs11_privkey_import_url]:561
[2022-08-10 11:55:54]  gnutls[2]: p11: No login requested.
[2022-08-10 11:55:54]  Trying PKCS#11 key URL pkcs11:model=ID%20Prime%20MD;manufacturer=Gemalto;serial=09E850133ABF3E39;token=Pavel;id=%68%35%73%BD%14%9B%F5%37%02%8B%BF%CE%48%FB%71%38%B8%59%91%3E;object=EFF270AEC07D70DA;type=private
[2022-08-10 11:55:54]  gnutls[2]: p11: Login result = ok (0)
[2022-08-10 11:55:56]  gnutls[3]: ASSERT: ../../lib/pkcs11_privkey.c[gnutls_pkcs11_privkey_import_url]:561
[2022-08-10 11:55:56]  Trying PKCS#11 key URL pkcs11:model=ID%20Prime%20MD;manufacturer=Gemalto;serial=09E850133ABF3E39;token=Pavel;id=%68%35%73%BD%14%9B%F5%37%02%8B%BF%CE%48%FB%71%38%B8%59%91%3E;type=private
[2022-08-10 11:55:56]  gnutls[2]: p11: Login result = ok (0)
[2022-08-10 11:55:56]  Using PKCS#11 key pkcs11:model=ID%20Prime%20MD;manufacturer=Gemalto;serial=09E850133ABF3E39;token=Pavel;id=%68%35%73%BD%14%9B%F5%37%02%8B%BF%CE%48%FB%71%38%B8%59%91%3E;type=private
[2022-08-10 11:55:56]  gnutls[3]: ASSERT: ../../lib/pkcs11_privkey.c[_gnutls_pkcs11_privkey_sign]:416
[2022-08-10 11:56:27]  gnutls[3]: ASSERT: ../../lib/privkey.c[privkey_sign_and_hash_data]:1300
[2022-08-10 11:56:27]  Error signing test data with private key: PKCS #11 error. 
[2022-08-10 11:56:27]  Loading certificate failed. Aborting. <-------- ошибка тут
[2022-08-10 11:56:27]  Failed to complete authentication


И USB-токен, и смарт-карта имеют одинаковые сертификаты/ключи из одного и того же файла p12. Сначала они были инициализированы, а затем был установлен файл p12.

Используя pkcs11-dump, я обнаружил, что единственная разница между USB-токеном и смарт-картой заключается в значении атрибута CKA_SIGN_RECOVER для закрытого ключа:

CKA_SIGN_RECOVER: TRUE — для смарт-карты

CKA_SIGN_RECOVER: FALSE — для USB-токена

Поскольку атрибут CKA_MODIFIABLE имеет значение TRUE для обоих токенов, я ищу способ изменить значение CKA_SIGN_RECOVER для USB-токена (согласно документам, это возможно). Потом я попытаюсь опять подключиться с openconnect.

Есть идеи как сделать?

Заранее спасибо,
Павел


Правила форума
Цитировать
2. На форуме ЗАПРЕЩЕНО
2.17. Обсуждение вопросов, напрямую не связанных с использованием дистрибутивов, входящих в официальное семейство Ubuntu. Другие дистрибутивы GNU/Linux и прочие операционные системы следует обсуждать на иных, специализированных ресурсах. Исключением является раздел "Разговоры обо всем".
Закрыто!
--ALiEN175

 
« Последнее редактирование: 12 Августа 2022, 20:19:41 от ALiEN175 »

 

Страница сгенерирована за 0.059 секунд. Запросов: 22.