Prijava namizja in preverjanje pristnosti uporabnika Linuxa#
✓ |
✓ |
✓ |
✓ |
⨯ |
⨯ |
⨯ |
✓ |
Uvod#
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.
Če se želite v računalnik prijaviti z Nitrokey Pro 2, Nitrokey Storage 2 in Nitrokey Start si lahko ogledate navodila, ki so na voljo tudi.
Zahteve#
Ubuntu 20.04 z Gnome Display Manager.
Nitrokey FIDO2 konfigurirajte po teh navodilih.
Navodila#
Metoda grafičnega vmesnika#
V spodnjem levem kotu kliknite
Show Applications
in v iskalno vrstico vnesite naslednje nastavitve:V desni vrstici se pomaknite navzdol do
Users
V levem kotu kliknite
Unlock
in to bo zahtevalo vaše gesloIzberite
Administrator
in vnesite izbrano uporabniško ime in gesloKo končate 4. korak, morate biti pripravljeni
Metoda CLI#
Izdelajte uporabnika varnostne kopije in mu dajte pravice korporacije root
To lahko storite s temi ukazi:
$ sudo adduser <backup_user> $ sudo usermod -aG sudo <backup_user>
Če želite nastaviti U2F za posameznega uporabnika in ste zaklenjeni iz uporabniške seje, se lahko še vedno prijavite z
<backup_user>
in nadaljujete z vzdrževanjem.Opozorilo
Naslednji vodnik vas lahko zaklene iz računalnika. Teh tveganj se morate zavedati, saj je priporočljivo, da spodnja navodila najprej uporabite na sekundarnem računalniku ali po popolni varnostni kopiji.
Po konfiguraciji modulov PAM lahko izgubite dostop do podatkov.
Nastavite
rules
za prepoznavanje naprave Nitrokey FIDO2.Pod
/etc/udev/rules.d
prenos41-nitrokey.rules
$ cd /etc/udev/rules.d/ $ sudo wget https://raw.githubusercontent.com/Nitrokey/libnitrokey/master/data/41-nitrokey.rules
In ponovno zaženite
udev
storitev$ sudo systemctl restart udev
Instalacija
libpam-u2f
V Ubuntuju 20.04 je mogoče prenesti neposredno
libpam-u2f
iz uradnih skladišč$ sudo apt install libpam-u2f
Opomba
Kliknite za več možnosti
Druga možnost je, da sestavite
libpam-u2f
iz Git.Če želite preveriti, ali je knjižnica pravilno nameščena, vnesite naslednji ukaz:
$ file /lib/x86_64-linux-gnu/security/pam_u2f.so
Rezultat mora biti podoben naslednjemu:
/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
Priprava imenika
Ustvarite
.config/Nitrokey/
v domačem imeniku$ mkdir ~/.config/Nitrokey
In priključite napravo Nitrokey FIDO2.
Ko končamo s pripravo, lahko začnemo konfigurirati računalnik za uporabo Nitrokey FIDO2 za preverjanje pristnosti drugega dejavnika ob prijavi in
sudo
.Generiranje konfiguracijske datoteke U2F
Za ustvarjanje konfiguracijske datoteke bomo uporabili
pamu2fcfg
pripomoček, ki je priloženlibpam-u2f
. Zaradi priročnosti bomo izhod pripomočka neposredno zapisali v datotekou2f_keys
pod.config/Nitrokey
. Najprej priključite napravo Nitrokey FIDO2 (če je še niste) in vnesite naslednji ukaz:$ pamu2fcfg > ~/.config/Nitrokey/u2f_keys
Ko zaženete zgornji ukaz, se morate dotakniti tipke, medtem ko utripa. Ko to storite, bo
pamu2fcfg
dodal svoj izpisu2f_keys
v naslednji obliki:<username>:Zx...mw,04...0a
Upoštevajte, da bo rezultat veliko daljši, vendar so bili občutljivi deli tukaj odstranjeni. Zaradi boljše varnosti in po generiranju konfiguracijske datoteke bomo imenik
.config/Nitrokey
s tem ukazom premaknili pod imeniketc/
:$ sudo mv ~/.config/Nitrokey /etc
Nasvet
Datoteka pod
.config/Nitrokey
se mora imenovatiu2f_keys
Priporočljivo je, da navodila najprej preizkusite z enim uporabnikom. V ta namen prejšnji ukaz uporablja možnost
-u
za določitev uporabnika, kot v spodnjem primeru:$ pamu2fcfg -u <username> > ~/.config/Nitrokey/u2f_keys
Za konfiguracijo posameznega uporabnika morate v naslednjem koraku pokazati na domači imenik ali pa v konfiguracijo PAM ne vključite možnosti
authfile
.
Zaščitna kopija
Ta korak ni obvezen, vendar je priporočljivo imeti rezervni ključ Nitrokey za primer izgube, kraje ali uničenja ključa Nitrokey FIDO.
Če želite nastaviti rezervni ključ, ponovite zgornji postopek in uporabite
pamu2fcfg -n
. Pri tem boste izpustili polje<username>
, izhod pa lahko dodate vrstici z vašim<username>
na naslednji način:<username>:Zx...mw,04...0a:xB...fw,04...3f
Modifikacija vtičnega modula za preverjanje pristnosti
PAM
Zadnji korak je konfiguriranje datotek modula PAM pod
/etc/pam.d/
. V tem vodniku bomo spremenili datotekocommon-auth
, saj obdeluje nastavitve avtentikacije, ki so skupne vsem storitvam, vendar so mogoče tudi druge možnosti. Datoteko lahko spremenite z naslednjim ukazom:$ cd /etc/pam.d $ sudo $editor common-auth
Na vrh datoteke dodajte naslednje vrstice:
#Nitrokey FIDO2 config auth sufficient pam_u2f.so authfile=/etc/Nitrokey/u2f_keys cue prompt nouserok
Nasvet
Ker uporabljamo centralno kartiranje avtentikacije, moramo
pam_u2f
sporočiti lokacijo datoteke, ki jo želimo uporabiti z možnostjoauthfile
.Če pogosto pozabite vstaviti ključ,
prompt
možnostpam_u2f
izpišeInsert your U2F device, then press ENTER.
in vam da možnost vstaviti Nitrokey.Če želite, da se vam prikaže poziv za dotik tipke Nitrokey,
cue
možnost bopam_u2f
natisnilaPlease touch the device.
sporočilo.nouserok bo zagotovil, da se lahko še vedno prijavite z uporabniškim imenom in geslom, kar boste morda želeli odstraniti, ko bo nastavitev delovala in ne boste želeli rednih prijav z uporabniškim imenom in geslom.
Ko smo spremenili
common-auth
, lahko shranimo in zaključimo datoteko.Konfiguracijo lahko preizkusite tako, da v terminal vnesete
sudo ls
. Prikazati se mora sporočiloPlease touch the device.
in podoben izpis na terminalu:nitrouser@nitrouser:~$ sudo ls [sudo] password for nitrouser: Please touch the device.
Konfiguracijo lahko preizkusite tudi tako, da se odjavite iz uporabniške seje in se ponovno prijavite. Podoben zaslon bi se moral prikazati, ko odklopite/priključite napravo Nitrokey FIDO2 in vnesete geslo:
Uporaba#
Po spremembi modula PAM boste lahko takoj preizkusili konfiguracijo, vendar je priporočljivo, da znova zaženete računalnik in odklopite/vključite napravo Nitrokey FIDO2.
Ko ste pravilno preizkusili navodila v tem priročniku (in pripravili varnostno kopijo), je priporočljivo, da namesto kontrolne oznake zadostno
uporabite kontrolno oznako zahtevno
ali pogojno
.
Zastavi required
in requisite
omogočata strožji nadzor dostopa in za prijavo in/ali uporabo konfigurirane storitve je potreben Nitrokey FIDO2.
Če potrebujete več informacij o kontrolnih zastavicah v konfiguracijski vrstici PAM
, si lahko ogledate zadnji razdelek tega priročnika, da boste razumeli razliko in posledice uporabe vsake od njih.
Moduli PAM#
Obstaja več datotek z moduli PAM, ki jih lahko spremenite glede na svoje potrebe:
S spremembo datoteke
/etc/pam.d/common-auth
boste lahko uporabljali Nitrokey FIDO za preverjanje pristnosti drugega faktorja za grafično prijavo insudo
. Opomba:common-auth
je treba spremeniti z dodajanjem dodatne konfiguracijske vrstice na koncu datoteke.Če želite avtentikacijo FIDO U2F uporabljati samo za grafično prijavo v okolju Gnome, morda raje spremenite
/etc/pam.d/gdm-password
Če želite pri uporabi ukaza
/etc/pam.d/sudo
uporabiti FIDO U2F, lahko spremenite datotekosudo
.
Kontrolne oznake#
V koraku 7 smo uporabili kontrolno zastavico sufficient
za določitev obnašanja modula PAM, ko je ključ Nitrokey priključen ali ne. Vendar je to obnašanje mogoče spremeniti z uporabo naslednjih kontrolnih zastavic:
required
: To je najbolj kritična zastavica. Rezultat modula mora biti uspešen, da se avtentikacija nadaljuje. Ta zastavica vas lahko zaklene iz računalnika, če nimate dostopa do ključa Nitrokey.requisite
: Podobno kot prirequired
, vendar se v primeru, ko določen modul vrne neuspeh, nadzor neposredno vrne aplikaciji ali nadrejenemu skladu PAM. Ta zastavica vas lahko tudi zaklene iz računalnika, če nimate dostopa do ključa Nitrokey.sufficient
: Rezultat modula se ne upošteva, če je neuspešen. Oznakasufficient
velja za varno za namene testiranja.optional
: Uspeh ali neuspeh tega modula je pomemben le, če je to edini modul v nizu, povezan s tem tipom storitve+. Oznakaoptional
velja za varno za uporabo v namene testiranja.
Opozorilo
Če je nastavljena vrednost
required
alirequisite
, bo neuspešno preverjanje pristnosti U2F povzročilo neuspešno celotno preverjanje pristnosti. Do neuspeha bo prišlo, če konfiguriranega ključa Nitrokey FIDO ne priključite, ga izgubite ali uničite.Če ste napačno konfigurirali modul PAM in uporabili oznake
required
alirequisite
, boste izgubili dostop do računalnika.Prav tako boste izgubili možnost uporabe
sudo
, če nastavite centralno kartiranje avtentikacije. in uporabili oznakerequired
alirequisite
.