Asztali bejelentkezés és Linux felhasználói hitelesítés¶
Compatible Nitrokeys |
|||||||
|---|---|---|---|---|---|---|---|
✓ active |
✓ active |
⨯ inactive |
⨯ inactive |
✓ active |
⨯ inactive |
⨯ inactive |
✓ active |
Bevezetés¶
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.
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
rulesa Nitrokey FIDO2 felismerésére.Under
/etc/udev/rules.dletöltés41-nitrokey.rules$ cd /etc/udev/rules.d/ $ sudo wget https://raw.githubusercontent.com/Nitrokey/nitrokey-udev-rules/main/41-nitrokey.rules
És indítsa újra a
udevszolgáltatást.$ sudo systemctl restart udev
Telepítés
libpam-u2fAz Ubuntu 20.04-en közvetlenül letölthető
libpam-u2fa 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
pamu2fcfgsegédprogramot fogjuk használni, amely alibpam-u2fcsomagban található. Az egyszerűség kedvéért a segédprogram kimenetét közvetlenül au2f_keysfájlba írjuk a.config/Nitrokeyalá. 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
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
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/Nitrokeykönyvtárat aetc/könyvtár alá fogjuk áthelyezni ezzel a paranccsal:$ sudo mv ~/.config/Nitrokey /etc
Javaslat
A
.config/Nitrokeyalatti fájl neveu2f_keyskell legyen.Javasoljuk, hogy először egyetlen felhasználóval tesztelje az utasításokat. Ehhez az előző parancs a
-uopció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 kell a PAM konfigurációban az
authfileopciót megadni.
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 -nparancsot. 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
PAMAz utolsó lépés a PAM modul fájlok konfigurálása a
/etc/pam.d/alatt. Ebben az útmutatóban acommon-authfá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
A fájl tetejére pedig írja be a következő sorokat:
#Nitrokey FIDO2 config auth sufficient pam_u2f.so authfile=/etc/Nitrokey/u2f_keys cue [cue_prompt=Please touch the device.] prompt nouserok
Javaslat
Mivel a központi hitelesítési leképezést használjuk, meg kell adnunk a
pam_u2fopcióval aauthfilefájl helyét.Ha gyakran elfelejti behelyezni a kulcsot,
promptopcióval apam_u2fkiírja aInsert your U2F device, then press ENTER.és lehetőséget ad a Nitrokey behelyezésére.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.].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 lsbeírásával tesztelheti a terminálban. APlease 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 úgy is tesztelheti, hogy kijelentkezik a felhasználói munkamenetből, majd visszalép. 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-authfá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-autha fájl végén található további konfigurációs sor hozzáadásával kell módosítani.If you wish to use FIDO U2F authentication solely for Gnome’s graphic login, you might prefer to modify the
/etc/pam.d/gdm-passwordAlternatívaként egyszerűen módosíthatja a
/etc/pam.d/sudofájlt, ha asudoparancs 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. Asufficientjelző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. Aoptionaljelzőt tesztelési célokra biztonságosnak tekintjük.
Figyelem
Ha
requiredvagyrequisitevan 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
requiredvagyrequisitezászlókat használta.A
sudohasználatának lehetőségét is elveszíti, ha a Központi hitelesítési leképezést beállítja. és arequiredvagyrequisitezászlókat használta.