kot2003 Posted August 12, 2022 Posted August 12, 2022 Привет всем, Система: 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. Есть идеи как сделать? Заранее спасибо, Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.