LINUX.ORG.RU

Yubikey и gnupg

 ,


1

2

День добрый!

Не удаётся запустить ключ Yubikey 5NFC c gnugpg.

Утилиты ykman и yubico-piv-tool c ключом работают нормально.

Но «подружить» ключ с gpg не получается.

Ключ сканируется видится:

>lsusb
Bus 001 Device 009: ID 1050:0407 Yubico.com Yubikey 4/5 OTP+U2F+CCID


>pcsc_scan 

PC/SC device scanner
V 1.7.0 (c) 2001-2022, Ludovic Rousseau <ludovic.rousseau@free.fr>
Using reader plug'n play mechanism
Scanning present readers...
0: Yubico YubiKey OTP+FIDO+CCID 00 00
 
Wed Nov 19 22:51:09 2025
 Reader 0: Yubico YubiKey OTP+FIDO+CCID 00 00
  Event number: 0
  Card state: Card inserted, Shared Mode, 

gpg также определяет карту:

>gpg --card-status

gpg: Внимание: сервер 'scdaemon' старше нас (0.11.0 < 2.4.8)
gpg: Замечание: На старых серверах могут оставаться ошибки, критичные для безопасности.
gpg: Замечание: Для их перезагрузки воспользуйтесь командой "gpgconf --kill all".
Reader ...........: [none]
Application ID ...: D17600012402115031313E7AB1D71112
Application type .: OpenPGP
Version ..........: 11.50
Manufacturer .....: ?
Serial number ....: 2E6AB2D7
Name of cardholder: [не установлено]
Language prefs ...: [не установлено]
Salutation .......: 
URL of public key : [не установлено]
Login data .......: [не установлено]
Signature PIN ....: требуется
Key attributes ...: rsa48 rsa48 rsa48
Max. PIN lengths .: 0 0 0
PIN retry counter : 0 0 0
Signature counter : 0
Signature key ....: [none]
Encryption key....: [none]
Authentication key: [none]
General key info..: [none]

Но при попытке задать PIN код получаю ошибку:

>gpg --edit-card
...
...
gpg/card> passwd

gpg: OpenPGP card no. D17600012402115031313E7AB1D71112 detected
Error changing the PIN: Unspecific Assuan server fault

Проверка версии openpg завершается с ошибкой:

 gpg-connect-agent --hex "scd apdu 00 f1 00 00" /bye
ERR 536870992 Unspecific Assuan server fault <User defined source 1>

В чём может быть проблема?


Fedora release 43 (Forty Three) Linux comp 6.17.8-300.fc43.x86_64 #1 SMP gpg (GnuPG) 2.4.8 opensc-0.26.1-3 pkcs11-provider-1.0 pkcs11-helper-1.30.0 gnupg-pkcs11-scd-0.11.0


gpg: Внимание: сервер ‘scdaemon’ старше нас (0.11.0 < 2.4.8) gpg: Замечание: На старых серверах могут оставаться ошибки, критичные для безопасности. gpg: Замечание: Для их перезагрузки воспользуйтесь командой «gpgconf –kill all».

С большой вероятностью проблема вот тут.

l0stparadise ★★★★★
()
Ответ на: комментарий от l0stparadise

Что значит данное сообщение я не понял. В скобках версии указаны gnupg-pkcs11-scd-0.11.0 и gpg (GnuPG) 2.4.8.

Но это помогло найти решение.

Источник https://askubuntu.com/questions/777900/how-to-configure-gnupgs-s-gpg-agent-socket-location

    Create the .gnupg/S.gpg-agent file as described by ruhri:

    %Assuan%
    socket=/srv/scratch/joeuser/S.gpg-agent

    Add these two lines to the end of .gnupg/gpg-agent.conf (create file if it does not already exist):

    extra-socket /srv/scratch/joeuser/S.gpg-agent.extra
    browser-socket /srv/scratch/joeuser/S.gpg-agent.browser

    Create the file .gnupg/S.gpg-agent.ssh similar to the file .gnupg/S.gpg-agent:

    %Assuan%
    socket=/srv/scratch/joeuser/S.gpg-agent.ssh

$ gpg2 --card-status
Reader ...........: Yubico YubiKey OTP FIDO CCID 00 00

gpg/card> verify
Разблокируйте карту

Номер: 12 3438 649
Держатель: 
Счетчик: 0
PIN:

Вероятно, причина в несогласованности путей или необходимости размещения их в домашнем каталоге.

isdv
() автор топика