Asztali bejelentkezés és Linux felhasználói hitelesítés#
(Nitrokey FIDO U2F - Linux)
Bevezetés#
Ez az útmutató a Linux konfigurációját mutatja be a FIDO Universal 2nd Factor, azaz a FIDO U2F használatához a libpam-u2f
és Nitrokey FIDO2 segítségével.
Ha a Nitrokey Pro 2 segítségével szeretne bejelentkezni a számítógépére, Nitrokey Storage 2 és Nitrokey Indítás a itt elérhető útmutatót tekintheti meg.
Követelmények#
Ubuntu 20.04 Gnome Display Managerrel.
A Nitrokey FIDO2 konfigurálása a ezen utasítások szerint.
Utasítások#
GUI módszer#
A bal alsó sarokban kattintson a
Show Applications
és írja be a következő beállításokat a keresősávba:

Görgessen lefelé a jobb oldali sávban
Users

A bal sarokban kattintson a
Unlock
és ez kéri a jelszavát.

Válassza ki
Administrator
és adja meg az Ön által választott felhasználónevet és jelszót.

Ha befejezted a 4. lépést, akkor kész is vagy

CLI módszer#
Hozzon létre egy biztonsági mentési felhasználót, és adjon neki root jogosultságokat
Ezt a következő parancsok segítségével teheti meg:
$ sudo adduser <backup_user>
$ sudo usermod -aG sudo <backup_user>
Abban az esetben, ha az U2F-et inkább egyetlen felhasználó számára szeretné beállítani, és ki van zárva a felhasználói munkamenetből, akkor is be tud jelentkezni a <backup_user>
segítségével, és folytathatja a karbantartást.
Figyelem
Az alábbi útmutató potenciálisan kizárhatja Önt a számítógépéből. Tisztában kell lennie ezekkel a kockázatokkal, mivel ajánlott először egy másodlagos számítógépen, vagy egy teljes biztonsági mentés után használni az alábbi utasításokat.
A PAM modulok konfigurálása után elveszítheti az adataihoz való hozzáférést.
Elhelyezze a
rules
a Nitrokey FIDO2 felismerésére.
Under /etc/udev/rules.d
letöltés 41-nitrokey.rules
$ cd /etc/udev/rules.d/
$ sudo wget https://raw.githubusercontent.com/Nitrokey/libnitrokey/master/data/41-nitrokey.rules
És indítsa újra a udev
szolgáltatást.
$ sudo systemctl restart udev
Telepítés
libpam-u2f
Az Ubuntu 20.04-en közvetlenül letölthető libpam-u2f
a hivatalos repos-ból.
$ sudo apt install libpam-u2f
Megjegyzés
Kattintson a további lehetőségekért
Alternatívaként a
libpam-u2f
-t a Git-ből is építheted.A könyvtár megfelelő telepítésének ellenőrzéséhez adja meg a következő parancsot:
$ file /lib/x86_64-linux-gnu/security/pam_u2f.so
A kimenetnek a következőképp kell kinéznie:
/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
Készítse elő a könyvtárat
Hozzon létre .config/Nitrokey/<x>
a home könyvtárában.
$ mkdir ~/.config/Nitrokey
És csatlakoztassa a Nitrokey FIDO2-t.
Ha végeztünk az előkészületekkel, elkezdhetjük konfigurálni a számítógépet a Nitrokey FIDO2 használatára a 2. faktoros hitelesítéshez a bejelentkezéskor és sudo
.
Generálja az U2F konfigurációs fájlt
A konfigurációs fájl létrehozásához a pamu2fcfg
segédprogramot fogjuk használni, amely a libpam-u2f
csomagban található. Az egyszerűség kedvéért a segédprogram kimenetét közvetlenül a u2f_keys
fájlba írjuk a .config/Nitrokey
alá. Először csatlakoztassa a Nitrokey FIDO2-t (ha még nem tette meg), és írja be a következő parancsot:
$ pamu2fcfg > ~/.config/Nitrokey/u2f_keys
Miután futtatta a fenti parancsot, meg kell érintenie a billentyűt, miközben az villog. Ha ez megtörtént, a pamu2fcfg
a kimenetét a u2f_keys<x>
kimenetéhez csatolja a következő formátumban:
<username>:Zx...mw,04...0a
Figyelem, a kimenet sokkal hosszabb lesz, de az érzékeny részeket itt eltávolítottuk. A nagyobb biztonság érdekében, és miután a config fájl generálódott, a .config/Nitrokey
könyvtárat a etc/
könyvtár alá fogjuk áthelyezni ezzel a paranccsal:
$ sudo mv ~/.config/Nitrokey /etc
Javaslat
A
.config/Nitrokey
alatti fájl neveu2f_keys
kell legyen.Javasoljuk, hogy először egyetlen felhasználóval tesztelje az utasításokat. Ehhez az előző parancs a
-u
opciót veszi fel egy felhasználó megadására, mint az alábbi példában:
$ pamu2fcfg -u <username> > ~/.config/Nitrokey/u2f_keys
Egyéni felhasználói konfiguráció esetén a következő lépésben a home könyvtárra kell mutatni, vagy nem szabad a
authfile
opciót a PAM konfigurációba felvenni.
Backup
Ez a lépés nem kötelező, azonban ajánlatos, hogy legyen egy tartalék Nitrokey-je arra az esetre, ha a Nitrokey FIDO elvesztése, ellopása vagy megsemmisülése esetén.
A tartalékkulcs beállításához ismételje meg a fenti eljárást, és használja a pamu2fcfg -n
parancsot. Ezáltal a <username>
mező kimarad, és a kimenet a <username>
sorhoz csatolható, így:
<username>:Zx...mw,04...0a:xB...fw,04...3f
Módosítsa a csatlakoztatható hitelesítési modult
PAM
Az utolsó lépés a PAM modul fájlok konfigurálása a /etc/pam.d/
alatt. Ebben az útmutatóban a common-auth
fájlt fogjuk módosítani, mivel ez kezeli a minden szolgáltatásnál közös hitelesítési beállításokat, de más lehetőségek is lehetségesek. A fájlt a következő paranccsal módosíthatja:
$ cd /etc/pam.d
$ sudo $editor common-auth
És adjuk hozzá a következő sorokat:
#Nitrokey FIDO2 config
auth sufficient pam_u2f.so authfile=/etc/Nitrokey/u2f_keys cue prompt nouserok
Javaslat
Mivel a központi hitelesítési leképezést használjuk, meg kell adnunk a
pam_u2f
opcióval aauthfile
fájl helyét.Ha gyakran elfelejti behelyezni a kulcsot,
prompt
opcióval apam_u2f
kiírja aInsert your U2F device, then press ENTER.
és lehetőséget ad a Nitrokey behelyezésére.Ha szeretné, hogy a Nitrokey megérintésére kérjék,
cue
opcióvalpam_u2f
nyomtatja ki aPlease touch the device.
üzenetet.A nouserok biztosítja, hogy továbbra is be tudjon jelentkezni a felhasználónév és jelszó használatával, lehet, hogy ezt egy bizonyos ponton el akarja távolítani, ha a beállítás működik, és nem akar rendszeres felhasználónév & jelszó alapú bejelentkezést.
Miután módosítottuk a common-auth
, menthetjük és kiléphetünk a fájlból.
A konfigurációt a sudo ls
beírásával tesztelheti a terminálban. A Please touch the device.<x>
üzenetet kell kapnia, és hasonló kimenetet kell kapnia a terminálon:
nitrouser@nitrouser:~$ sudo ls
[sudo] password for nitrouser: Please touch the device.
A konfigurációt a felhasználói munkamenetből való kijelentkezéssel és visszalépéssel is tesztelheti. Egy hasonló képernyőnek kell megjelennie, miután kihúzta/visszadugta a Nitrokey FIDO2-t és beírta a jelszavát:

Használat#
A PAM modul módosítása után azonnal tesztelheti a konfigurációt, de ajánlott újraindítani a számítógépet, és kihúzni/visszadugni a Nitrokey FIDO2-t.
Miután megfelelően tesztelte az ebben az útmutatóban található utasításokat (és biztonsági mentést készített), ajánlott a required
vagy a requisite
vezérlőzászlót használni a sufficient
helyett.
A required
és requisite
szigorúbb hozzáférés-ellenőrzést biztosít, és a Nitrokey FIDO2 szükséges a bejelentkezéshez és/vagy a konfigurált szolgáltatás használatához.
Ha további információra van szüksége a PAM
konfigurációs sorban található vezérlőjelzőkről, akkor az útmutató utolsó részében megismerheti a különbséget, és az egyes jelzők használatának következményeit.
PAM modulok#
Számos PAM modul fájl létezik, amelyeket az Ön igényei szerint módosíthat:
A
/etc/pam.d/common-auth
fájl módosításával a Nitrokey FIDO-t használhatja a 2. faktoros hitelesítéshez a grafikus bejelentkezéshez éssudo
. Megjegyzés:common-auth
a fájl végén található további konfigurációs sor hozzáadásával kell módosítani.Ha a FIDO U2F hitelesítést kizárólag a Gnome grafikus bejelentkezéshez szeretné használni, akkor inkább a
/etc/pam.d/gdm-password
módosíthatja.Alternatívaként egyszerűen módosíthatja a
/etc/pam.d/sudo
fájlt, ha asudo
parancs használatakor a FIDO U2F-et kívánja használni.
Vezérlő zászlók#
A 7. lépésben a sufficient
vezérlőjelzőt használtuk, hogy meghatározzuk a PAM modul viselkedését, ha a Nitrokey be van dugva vagy sem. Lehetőség van azonban ennek a viselkedésnek a megváltoztatására a következő vezérlőzászlók használatával:
required
: Ez a legkritikusabb jelző. A modul eredményének sikeresnek kell lennie a hitelesítés folytatásához. Ez a flag kizárhatja Önt a számítógépéből, ha nincs hozzáférése a Nitrokey-hez.requisite
: Hasonlóan arequired
-hoz, azonban abban az esetben, ha egy adott modul hibát ad vissza, a vezérlés közvetlenül az alkalmazáshoz, vagy a felettes PAM stackhez kerül vissza. Ez a flag a számítógépből is kizárhatja Önt, ha nincs hozzáférése a Nitrokey-hez.sufficient
: A modul eredményét figyelmen kívül hagyjuk, ha nem sikerül. Asufficient
jelzőt tesztelési célokra biztonságosnak tekintjük.optional
: Ennek a modulnak a sikere vagy sikertelensége csak akkor fontos, ha ez az egyetlen modul a veremben, amely ehhez a szolgáltatás+típushoz kapcsolódik. Aoptional
jelzőt tesztelési célokra biztonságosnak tekintjük.
Figyelem
Ha
required
vagyrequisite
van beállítva, az U2F-hitelesítés sikertelensége a teljes hitelesítés sikertelenségét okozza. A sikertelenség akkor következik be, ha a konfigurált Nitrokey FIDO nincs bedugva, elveszett vagy megsemmisült.Elveszíti a számítógépéhez való hozzáférést, ha rosszul konfigurálta a PAM modult és a
required
vagyrequisite
zászlókat használta.A
sudo
használatának lehetőségét is elveszíti, ha a Központi hitelesítési leképezést beállítja. és arequired
vagyrequisite
zászlókat használta.