„OpenPGP“ išmanioji kortelė su „GnuPG“ „Fedora#

Pastaba

Toliau pateiktose instrukcijose reikalaujama, kad „Nitrokey 3“ būtų įdiegta bent jau programinės įrangos versija 1.4.0. Norėdami sužinoti, kaip ją atnaujinti, žr. programinės įrangos atnaujinimą.

GnuPG išmaniosios kortelės palaikymui reikia scdaemon. Fedora sistemoje scdaemon yra GnuPG paketo dalis.

Pastaba

scdaemon yra įdiegtas /usr/libexec/scdaemon. Šis kelias paprastai nėra PATH aplinkos kintamojo dalis.

„GnuPG“ projektas palaiko dvi sąsajos su „OpenPGP“ išmaniąja kortele sąrankas.

  1. GnuPG (scdaemon su CCID tvarkykle) → Smartcard (pvz., Nitrokey)

    Šioje sąrankoje scdaemon tiesiogiai bendrauja su „Nitrokey“, naudodamas vidinę CCID tvarkyklę ir libusb. Reikia nustatyti Udev taisykles, nes scdaemon veikia naudotojo erdvėje su prisijungusio naudotojo teisėmis.

  2. GnuPG (scdaemon su PCSC biblioteka) → pcscd → Išmanioji kortelė (pvz., Nitrokey)

    Šioje sąrankoje scdaemon bendrauja su pcscd, kuris vėliau bendrauja su „Nitrokey“.

„Fedora“ sistemoje palaikoma tik antroji sąranka, nes „GnuPG“ paketo konfigūracijoje CCID tvarkyklė nustatyta kaip išjungta, o pcsc palaikymas - kaip būtinas. Atitinkamą konfigūraciją galima rasti specifikacijų faile čia ir čia.

Trikčių šalinimas#

Įdiegus naujausią „Fedora 38“ versiją, ji turėtų veikti be problemų. Atnaujintos „Fedora“ versijos gali turėti prieštaringą konfigūraciją, todėl ją reikėtų patikrinti, kaip nurodyta toliau. Pranešta, kad „Fedora Silverblue“ turi problemų su „GnuPG“ ir išmaniosiomis kortelėmis. Toliau pateikti nurodymai taikomi tik Fedora Workstation ir Fedora Server leidimams.

Tinkamą sąrankos konfigūraciją galima patikrinti užklausus informacijos apie „Nitrokey“ naudojant gpg --card-status.

Patikrinkite atpažinimą#

Naudodami lsusb komandą patikrinkite, ar „Nitrokey“ atpažįstamas. Išvestyje turėtų būti pateiktas „Nitrokey“ sąrašas, pvz., Bus 001 Device 002: ID 20a0:42b2 Clay Logic Nitrokey 3.

Patikrinkite sistemos konfigūraciją#

  1. Įsitikinkite, kad pcscd paketas įdiegtas kartu su dnf install pcsc-lite. Be to, systemd paslauga ir lizdas turi būti įjungti ir paleisti su systemctl enable pcscd.socket pcscd.service && systemctl start pcscd.socket.

  2. scdaemon reikia libpcsclite bibliotekos, kad būtų galima prisijungti prie pcscd. Kelią į pcsc biblioteką galima aiškiai nustatyti naudojant echo "pcsc-driver /usr/lib64/libpcsclite.so.1" >> ~/.gnupg/scdaemon.conf. Taip pat biblioteką galima pasiekti naudojant simlinką taip: ln -s /usr/lib64/libpcsclite.so.1 /usr/lib64/libpcsclite.so. Įsitikinkite, kad ~/.gnupg/scdaemon.conf faile netaikomi prieštaraujantys nustatymai.

  3. scdaemon pagal nutylėjimą tikisi išskirtinės prieigos prie pcscd, kad būtų išvengta galimų problemų, susijusių su tuo pačiu metu atliekamais informacijos modifikavimais kortelėje. Dėl to prieiga nepavyksta, jei kiti klientai, dažniausiai interneto naršyklės, kreipiasi į kortelę, net jei ji skirta tik skaitymui. Bendrą prieigą galima įjungti naudojant echo "pcsc-shared" >> ~/.gnupg/scdaemon.conf (GnuPG 2.2.28 arba naujesnėje versijoje).