Pametna kartica OpenPGP z GnuPG na Fedori#

Opomba

V skladu z naslednjimi navodili mora biti v napravo Nitrokey 3 nameščena vsaj različica vdelane programske opreme 1.4.0. Če želite izvedeti, kako posodobiti vdelano programsko opremo, si oglejte posodobitev vdelane programske opreme.

Podpora pametne kartice GnuPG zahteva scdaemon. V Fedori je scdaemon del paketa GnuPG.

Opomba

Demon scdaemon je nameščen v /usr/libexec/scdaemon. Ta pot običajno ni del okoljske spremenljivke PATH.

Projekt GnuPG podpira dve nastavitvi povezovanja s pametno kartico OpenPGP.

  1. GnuPG (scdaemon z gonilnikom CCID) → pametna kartica (npr. Nitrokey)

    V tej nastavitvi scdaemon komunicira neposredno z Nitrokeyjem s svojim notranjim gonilnikom CCID in libusb. Potrebno je nastaviti pravila Udev, saj se scdaemon izvaja v uporabniškem prostoru z dovoljenji prijavljenega uporabnika.

  2. GnuPG (scdaemon s knjižnico PCSC) → pcscd → Pametna kartica (npr. Nitrokey)

    V tej nastavitvi scdaemon komunicira s pcscd, ki nato komunicira s ključem Nitrokey.

V operacijskem sistemu Fedora je podprta le druga nastavitev, saj je v konfiguraciji paketa GnuPG gonilnik CCID onemogočen, podpora pcsc pa zahtevana. Ustrezno konfiguracijo najdete v specifikacijski datoteki tukaj in tukaj.

Odpravljanje težav#

Najnovejša različica Fedora 38 bi morala po namestitvi delovati brez težav. Pri nadgrajenih različicah Fedore lahko pride do konfliktnih konfiguracij, zato jih je treba preveriti, kot je opisano spodaj. Fedora Silverblue naj bi imela težave z GnuPG in pametnimi karticami. Spodnja navodila veljajo samo za Fedora Workstation in Fedora Server izdaje.

Pravilno konfiguracijo nastavitve lahko preverite tako, da poizvedujete po informacijah o ključu Nitrokey s gpg --card-status.

Preverite prepoznavanje#

Z ukazom lsusb preverite, ali je ključ Nitrokey prepoznan. V izpisu mora biti naveden ključ Nitrokey, npr. Bus 001 Device 002: ID 20a0:42b2 Clay Logic Nitrokey 3.

Preverite konfiguracijo sistema#

  1. Prepričajte se, da je paket pcscd nameščen s dnf install pcsc-lite. Nadalje je treba omogočiti in zagnati storitev systemd in vtičnico z systemctl enable pcscd.socket pcscd.service && systemctl start pcscd.socket.

  2. Demon scdaemon potrebuje knjižnico libpcsclite za povezavo s pcscd. Pot do knjižnice pcsc je mogoče izrecno nastaviti s echo "pcsc-driver /usr/lib64/libpcsclite.so.1" >> ~/.gnupg/scdaemon.conf. Druga možnost je, da je knjižnica na voljo s simlinkom, kot sledi ln -s /usr/lib64/libpcsclite.so.1 /usr/lib64/libpcsclite.so. Prepričajte se, da v datoteki ~/.gnupg/scdaemon.conf niso uporabljene nasprotujoče si nastavitve.

  3. Demon scdaemon privzeto pričakuje izključni dostop do pcscd, da bi se izognil morebitnim težavam s hkratnimi spremembami informacij na kartici. Zaradi tega je dostop neuspešen, če drugi odjemalci, običajno spletni brskalniki, dostopajo do kartice, tudi če gre le za branje. Skupni dostop lahko omogočite s echo "pcsc-shared" >> ~/.gnupg/scdaemon.conf (v različici GnuPG 2.2.28 ali višji).