Prihlasovanie do počítača a overovanie používateľov systému Linux¶
Compatible Nitrokeys |
|||||||
|---|---|---|---|---|---|---|---|
✓ active |
✓ active |
⨯ inactive |
⨯ inactive |
✓ active |
⨯ inactive |
⨯ inactive |
✓ active |
Úvod¶
This guide will walk you through the configuration of Linux to use FIDO Universal 2nd Factor, i.e. FIDO U2F with libpam-u2f and Nitrokey FIDO2.
If you want to login to you computer using Nitrokey Pro 2, Nitrokey Storage 2 and Nitrokey Start you can visit the instructions available here.
Požiadavky¶
Ubuntu 20.04 so správcom zobrazenia Gnome.
Nitrokey FIDO2 nakonfigurovaný podľa týchto pokynov.
Pokyny¶
Metóda grafického rozhrania¶
V ľavom dolnom rohu kliknite na
Show Applicationsa do vyhľadávacieho riadku zadajte nasledujúce nastavenia:
Prejdite v pravom paneli nadol na
Users
V ľavom rohu kliknite na
Unlocka zobrazí sa výzva na zadanie hesla
Vyberte
Administratora zadajte zvolené používateľské meno a heslo
Po dokončení kroku 4 by ste mali byť hotoví
Metóda CLI¶
Vytvorte záložného používateľa a dajte mu práva root
Môžete tak urobiť pomocou týchto príkazov:
$ sudo adduser <backup_user> $ sudo usermod -aG sudo <backup_user>
V prípade, že uprednostňujete nastavenie U2F pre jedného používateľa a ste uzamknutí v relácii používateľa, stále sa budete môcť prihlásiť pomocou
<backup_user>a pokračovať v údržbe.Varovanie
Nasledujúci návod vás môže potenciálne zablokovať v počítači. Mali by ste si byť vedomí týchto rizík, pretože sa odporúča použiť nižšie uvedené pokyny najprv na sekundárnom počítači alebo po úplnom zálohovaní.
Po konfigurácii modulov PAM môžete stratiť prístup k svojim údajom.
Nastavenie
rulesna rozpoznanie zariadenia Nitrokey FIDO2Pod
/etc/udev/rules.dstiahnuť41-nitrokey.rules$ cd /etc/udev/rules.d/ $ sudo wget https://raw.githubusercontent.com/Nitrokey/nitrokey-udev-rules/main/41-nitrokey.rules
A reštartujte
udevslužbu$ sudo systemctl restart udev
Inštalácia
libpam-u2fV Ubuntu 20.04 je možné stiahnuť priamo
libpam-u2fz oficiálnych repozitárov$ sudo apt install libpam-u2f
Poznámka
Kliknite pre viac možností
Prípadne môžete zostaviť
libpam-u2fz Git.Ak chcete overiť, či je knižnica správne nainštalovaná, zadajte nasledujúci príkaz:
$ file /lib/x86_64-linux-gnu/security/pam_u2f.so
Výstup by mal byť podobný nasledujúcemu:
/lib/x86_64-linux-gnu/security/pam_u2f.so: \ ELF 64-bit LSB shared object, x86-64, version 1 (SYSV),\ dynamically linked, BuildID[sha1]=1d55e1b11a97be2038c6a139579f6c0d91caedb1, stripped
Príprava adresára
Vytvorte
.config/Nitrokey/v domovskom adresári$ mkdir ~/.config/Nitrokey
A pripojte zariadenie Nitrokey FIDO2.
Po dokončení prípravy môžeme začať konfigurovať počítač na používanie Nitrokey FIDO2 na overenie 2. faktora pri prihlásení a
sudo.Generovanie konfiguračného súboru U2F
Na vygenerovanie konfiguračného súboru použijeme
pamu2fcfgnástroj, ktorý sa dodáva slibpam-u2f. Pre pohodlie budeme výstup utility zapisovať priamo dou2f_keyssúboru pod.config/Nitrokey. Najprv pripojte svoj Nitrokey FIDO2 (ak ste tak ešte neurobili) a zadajte nasledujúci príkaz:$ pamu2fcfg > ~/.config/Nitrokey/u2f_keys
Once you run the command above, you will need to touch the device while it flashes. Once done,
pamu2fcfgwill append its output theu2f_keysin the following format:<username>:Zx...mw,04...0a
Pozor, výstup bude oveľa dlhší, ale citlivé časti tu boli odstránené. Pre lepšiu bezpečnosť a po vygenerovaní konfiguračného súboru presunieme týmto príkazom adresár
.config/Nitrokeypod adresáretc/:$ sudo mv ~/.config/Nitrokey /etc
Tip
Súbor pod
.config/Nitrokeymusí mať názovu2f_keysOdporúčame najprv otestovať pokyny s jedným používateľom. Na tento účel sa v predchádzajúcom príkaze použije možnosť
-u, ktorou sa určí používateľ, ako v nasledujúcom príklade:$ pamu2fcfg -u <username> > ~/.config/Nitrokey/u2f_keys
V prípade konfigurácie jednotlivých používateľov by ste mali v ďalšom kroku poukázať na domovský adresár, alebo do konfigurácie PAM nezahrnúť možnosť
authfile.
Zálohovanie
Tento krok nie je povinný, odporúča sa však mať záložný kľúč Nitrokey pre prípad straty, krádeže alebo zničenia vášho kľúča Nitrokey FIDO.
Ak chcete nastaviť záložný kľúč, zopakujte vyššie uvedený postup a použite
pamu2fcfg -n. Tým sa vynechá pole<username>a výstup môžete pripojiť k riadku s vaším<username>takto:<username>:Zx...mw,04...0a:xB...fw,04...3f
Modifikácia zásuvného modulu overovania
PAMPosledným krokom je konfigurácia súborov modulu PAM v časti
/etc/pam.d/. V tomto návode budeme upravovať súborcommon-auth, pretože spracúva nastavenia overovania, ktoré sú spoločné pre všetky služby, ale možné sú aj iné možnosti. Súbor môžete upraviť pomocou nasledujúceho príkazu:$ cd /etc/pam.d $ sudo $editor common-auth
A na začiatok súboru pridajte nasledujúce riadky:
#Nitrokey FIDO2 config auth sufficient pam_u2f.so authfile=/etc/Nitrokey/u2f_keys cue [cue_prompt=Please touch the device.] prompt nouserok
Tip
Keďže používame centrálne autentifikačné mapovanie, musíme povedať
pam_u2fumiestnenie súboru, ktorý sa má použiť pomocou možnostiauthfile.Ak často zabúdate vložiť kľúč,
promptmožnosť, abypam_u2fvypísalaInsert your U2F device, then press ENTER.a dala vám možnosť vložiť kľúč Nitro.If you would like to be prompted to touch the Nitrokey,
cueoption will makepam_u2fprintPlease touch the device.message. You can change the message in[cue_prompt=Please touch the device.].nouserok zabezpečí, že sa stále môžete prihlásiť pomocou používateľského mena a hesla, možno ho budete chcieť odstrániť v určitom okamihu, keď bude nastavenie fungovať a nebudete chcieť pravidelné prihlasovanie pomocou používateľského mena a hesla.
Po úprave
common-authmôžeme súbor uložiť a ukončiť.Konfiguráciu môžete otestovať zadaním
sudo lsv termináli. Mala by sa vám zobraziť správaPlease touch the device.a na termináli by ste mali mať podobný výstup:nitrouser@nitrouser:~$ sudo ls [sudo] password for nitrouser: Please touch the device.
Konfiguráciu môžete otestovať aj tak, že sa odhlásite z relácie používateľa a prihlásite sa späť. Podobná obrazovka by sa mala zobraziť po odpojení/zapojení zariadenia Nitrokey FIDO2 a zadaní hesla:
Používanie¶
Po úprave modulu PAM budete môcť hneď otestovať konfiguráciu, ale odporúča sa reštartovať počítač a odpojiť/zapojiť Nitrokey FIDO2.
Po správnom otestovaní pokynov v tejto príručke (a nastavení zálohovania), odporúčame použiť buď required alebo requisite kontrolný príznak namiesto sufficient.
Príznaky required a requisite zabezpečujú prísnejšiu kontrolu prístupu a na prihlásenie a/alebo používanie nakonfigurovanej služby je potrebné použiť Nitrokey FIDO2.
Ak potrebujete viac informácií o riadiacich príznakoch v konfiguračnom riadku PAM, môžete si pozrieť poslednú časť tejto príručky, aby ste pochopili rozdiel a dôsledky používania jednotlivých príznakov.
Moduly PAM¶
Existuje niekoľko súborov modulov PAM, ktoré môžete upraviť podľa svojich potrieb:
Úpravou
/etc/pam.d/common-authsúboru budete môcť používať Nitrokey FIDO pre 2. faktor autentifikácie pre grafické prihlásenie asudo. Poznámka:common-authje potrebné upraviť pridaním dodatočného konfiguračného riadku na koniec súboru.If you wish to use FIDO U2F authentication solely for Gnome’s graphic login, you might prefer to modify the
/etc/pam.d/gdm-passwordPrípadne môžete len upraviť súbor
/etc/pam.d/sudo, ak chcete používať FIDO U2F pri použití príkazusudo.
Kontrolné príznaky¶
V kroku 7 sme použili sufficient kontrolný príznak na určenie správania modulu PAM, keď je alebo nie je zapojený kľúč Nitrokey. Toto správanie je však možné zmeniť pomocou nasledujúcich riadiacich príznakov:
required: Toto je najkritickejší príznak. Výsledok modulu musí byť úspešný, aby overovanie mohlo pokračovať. Tento príznak môže zablokovať váš počítač, ak nemáte prístup ku kľúču Nitrokey.requisite: Podobne akorequired, avšak v prípade, že konkrétny modul vráti chybu, riadenie sa vráti priamo aplikácii alebo nadradenému zásobníku PAM. Tento príznak vás tiež môže zablokovať v počítači, ak nemáte prístup ku kľúču Nitrokey.sufficient: Výsledok modulu sa v prípade neúspechu ignoruje. Príznaksufficientsa považuje za bezpečný na účely testovania.optional: Úspech alebo zlyhanie tohto modulu je dôležité len vtedy, ak je to jediný modul v zásobníku spojený s týmto typom služby+. Príznakoptionalsa považuje za bezpečný na použitie na účely testovania.
Varovanie
Ak je nastavené
requiredaleborequisite, zlyhanie overovania U2F spôsobí zlyhanie celkového overovania. K zlyhaniu dôjde, ak nakonfigurovaný kľúč Nitrokey FIDO nie je zapojený, stratí sa alebo sa zničí.Prístup k počítaču stratíte, ak ste nesprávne nakonfigurovali modul PAM a použili príznaky
requiredaleborequisite.Ak nastavíte centrálne mapovanie overovania, stratíte aj možnosť používať
sudoa použili príznakyrequiredaleborequisite.