Työpöydän kirjautuminen ja Linux-käyttäjän todennus#
Johdanto#
Tässä oppaassa käydään läpi Linuxin konfigurointi FIDO Universal 2nd Factor -tekijän, eli FIDO U2F:n, käyttöä varten libpam-u2f
ja Nitrokey FIDO2:n kanssa.
Jos haluat kirjautua tietokoneellesi käyttämällä Nitrokey Pro 2, Nitrokey Storage 2 ja Nitrokey Pro 2:n avulla. Start voit tutustua täältä saataviin ohjeisiin.
Vaatimukset#
Ubuntu 20.04 ja Gnome Display Manager.
Nitrokey FIDO2 konfiguroidaan näiden ohjeiden mukaisesti ` <https://docs.nitrokey.com/fido2/linux>` __.
Ohjeet#
GUI-menetelmä#
Vasemmassa alakulmassa klikkaa
Show Applications
ja kirjoita asetukset hakupalkkiin seuraavasti:Rullaa oikeassa palkissa alaspäin kohtaan
Users`
Vasemmassa kulmassa klikkaa
Unlock
ja se kysyy salasanaa.Valitse
Administrator
ja syötä haluamasi käyttäjätunnus ja salasana.**Vaihe 4 pitäisi olla valmis **
CLI-menetelmä#
Luo varmuuskopiointikäyttäjä ja anna sille pääkäyttäjän oikeudet.
Voit tehdä sen käyttämällä näitä komentoja:
$ sudo adduser <backup_user> $ sudo usermod -aG sudo <backup_user>
Jos haluat asentaa U2F:n yhdelle käyttäjälle ja olet lukittu ulos käyttäjäistunnostasi, voit silti kirjautua sisään
<backup_user>
ja jatkaa ylläpitoa.Varoitus
Seuraava opas voi mahdollisesti lukita sinut ulos tietokoneesta. Sinun on syytä olla tietoinen näistä riskeistä, sillä on suositeltavaa käyttää alla olevia ohjeita ensin toissijaisella tietokoneella tai täydellisen varmuuskopioinnin jälkeen.
Saatat menettää pääsyn tietoihin, kun olet määrittänyt PAM-moduulit.
Säädä
rules
tunnistamaan Nitrokey FIDO2.Under
/etc/udev/rules.d
download41-nitrokey.rules
$ cd /etc/udev/rules.d/ $ sudo wget https://raw.githubusercontent.com/Nitrokey/libnitrokey/master/data/41-nitrokey.rules
Ja käynnistä
udev
palvelu uudelleen.$ sudo systemctl restart udev
Asennus
libpam-u2f`
Ubuntu 20.04:ssä on mahdollista ladata suoraan
libpam-u2f
virallisista reposista$ sudo apt install libpam-u2f
Muista
Klikkaa lisää vaihtoehtoja
Vaihtoehtoisesti voit rakentaa
libpam-u2f
:stä Git.Voit tarkistaa, että kirjasto on asennettu oikein, antamalla seuraavan komennon:
$ file /lib/x86_64-linux-gnu/security/pam_u2f.so
Tuloksen pitäisi olla jotakuinkin seuraavanlainen:
/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
Valmista hakemisto
Luo
.config/Nitrokey/
kotihakemistoosi.$ mkdir ~/.config/Nitrokey
Ja kytke Nitrokey FIDO2.
Kun valmistelut on tehty, voimme aloittaa tietokoneen määrittämisen käyttämään Nitrokey FIDO2:ta toisen tekijän todennukseen kirjautumisen yhteydessä ja
sudo
.Luo U2F-konfigurointitiedosto
Käytämme konfiguraatiotiedoston luomiseen
pamu2fcfg
-apuohjelmaa, joka tuleelibpam-u2f
mukana. Yksinkertaisuuden vuoksi kirjoitamme apuohjelman tulosteen suoraanu2f_keys
-tiedostoon.config/Nitrokey
. Kytke ensin Nitrokey FIDO2 (jos et ole jo kytkenyt) ja anna seuraava komento:$ pamu2fcfg > ~/.config/Nitrokey/u2f_keys
Kun olet suorittanut yllä olevan komennon, sinun on koskettava näppäintä, kun se vilkkuu. Kun se on tehty,
pamu2fcfg
liittää tulosteeseensau2f_keys
seuraavassa muodossa:<username>:Zx...mw,04...0a
Huomaa, että tuotos on paljon pidempi, mutta arkaluonteiset osat on poistettu. Paremman turvallisuuden vuoksi ja kun konfigurointitiedosto on luotu, siirrämme
.config/Nitrokey
-hakemistonetc/
-hakemiston alle tällä komennolla:$ sudo mv ~/.config/Nitrokey /etc
Vihje
.config/Nitrokey
:n alla olevan tiedoston on oltava nimeltäänu2f_keys
.On suositeltavaa testata ohjeita ensin yhdellä käyttäjällä. Tätä varten edellisessä komennossa käytetään
-u
-vaihtoehtoa käyttäjän määrittämiseksi, kuten alla olevassa esimerkissä:$ pamu2fcfg -u <username> > ~/.config/Nitrokey/u2f_keys
Yksittäisten käyttäjien konfigurointia varten sinun tulisi osoittaa kotihakemisto seuraavassa vaiheessa tai olla sisällyttämättä
authfile
-vaihtoehtoa PAM-konfiguraatioon.
Backup
Tämä vaihe on valinnainen, mutta on suositeltavaa, että sinulla on vara-avain Nitrokey FIDO:n katoamisen, varkauden tai tuhoutumisen varalta.
Jos haluat määrittää vara-avaimen, toista yllä oleva menettely ja käytä
pamu2fcfg -n
. Tällöin<username>
-kenttä jää pois, ja tulosteen voi liittää riville, jossa on<username>
näin:<username>:Zx...mw,04...0a:xB...fw,04...3f
Muokkaa liitettävissä olevaa todennusmoduulia
PAM
Viimeinen vaihe on PAM-moduulitiedostojen määrittäminen osoitteessa
/etc/pam.d/
. Tässä oppaassa muokkaamme tiedostoacommon-auth
, koska se käsittelee kaikille palveluille yhteisiä todennusasetuksia, mutta myös muut vaihtoehdot ovat mahdollisia. Voit muokata tiedostoa seuraavalla komennolla:$ cd /etc/pam.d $ sudo $editor common-auth
Lisää seuraavat rivit tiedoston alkuun:
#Nitrokey FIDO2 config auth sufficient pam_u2f.so authfile=/etc/Nitrokey/u2f_keys cue prompt nouserok
Vihje
Koska käytämme Central Authentication Mappingia, meidän on ilmoitettava
pam_u2f
-tiedoston sijainti, jota käytetäänauthfile
-vaihtoehdon avulla.Jos unohdat usein asettaa avaimen paikalleen,
prompt
-vaihtoehto tekeepam_u2f
tulostuksenInsert your U2F device, then press ENTER.
ja antaa sinulle mahdollisuuden asettaa Nitro-avain.Jos haluat, että sinua kehotetaan koskettamaan Nitrokey-näppäintä,
cue
-vaihtoehto tekeepam_u2f
tulostuksenPlease touch the device.
-viestin.nouserok varmistaa, että voit edelleen kirjautua sisään käyttäjätunnuksella ja salasanalla, saatat haluta poistaa tämän jossain vaiheessa, kun asetukset toimivat ja et halua tavallisia käyttäjätunnukseen & salasanaan perustuvia kirjautumisia.
Kun olemme muuttaneet
common-auth
, voimme tallentaa ja poistua tiedostosta.Voit testata kokoonpanon kirjoittamalla terminaaliin
sudo ls
. Sinun pitäisi saada näyttöön viestiPlease touch the device.
ja samanlainen tuloste terminaalissa:nitrouser@nitrouser:~$ sudo ls [sudo] password for nitrouser: Please touch the device.
Voit myös testata kokoonpanoasi kirjautumalla ulos käyttäjäistunnosta ja kirjautumalla takaisin. Samanlainen näyttö pitäisi tulla näkyviin, kun irrotat tai kytket Nitrokey FIDO2:n ja kirjoitat salasanasi:
Käyttö#
PAM-moduulin muuttamisen jälkeen voit testata kokoonpanoasi heti, mutta on suositeltavaa käynnistää tietokone uudelleen ja irrottaa Nitrokey FIDO2 -laite pistorasiasta.
Kun olet testannut tämän oppaan ohjeet asianmukaisesti (ja perustanut varmuuskopion), on suositeltavaa käyttää joko required
tai requisite
-ohjauslippua sufficient
sijaan.
Liput required
ja requisite
tarjoavat tiukemman pääsynvalvonnan, ja ne tekevät Nitrokey FIDO2:n välttämättömäksi sisäänkirjautumiselle ja/tai määritellyn palvelun käytölle.
Jos tarvitset lisätietoja PAM
-konfiguraatiorivillä olevista Control Flags -lippusarjoista, voit tutustua tämän oppaan viimeiseen osioon ymmärtääkseen niiden eron ja niiden käytön vaikutukset.
PAM-moduulit#
On olemassa useita PAM-moduulitiedostoja, joita voidaan muokata tarpeidesi mukaan:
Muokkaamalla
/etc/pam.d/common-auth
-tiedostoa voit käyttää Nitrokey FIDO:ta toisen tekijän todennukseen graafisessa kirjautumisessa jasudo
. Huomautus:common-auth
on muutettava lisäämällä ylimääräinen määritysrivi tiedoston loppuun.Jos haluat käyttää FIDO U2F -autentikointia vain Gnomen graafiseen kirjautumiseen, voit mieluummin muuttaa
/etc/pam.d/gdm-password
Vaihtoehtoisesti voit vain muuttaa tiedostoa
/etc/pam.d/sudo
, jos haluat käyttää FIDO U2F:ää käytettäessä komentoasudo
.
Ohjausliput#
Vaiheessa 7 olemme käyttäneet sufficient
-ohjauslippua määrittääksemme PAM-moduulin käyttäytymisen, kun Nitrokey on kytketty tai ei. Tätä käyttäytymistä on kuitenkin mahdollista muuttaa käyttämällä seuraavia ohjauslippuja:
required
: Tämä on kriittisin lippu. Moduulin tuloksen on oltava onnistunut, jotta todennusta voidaan jatkaa. Tämä lippu voi lukita sinut ulos tietokoneesta, jos sinulla ei ole pääsyä Nitrokey-avaimeen.requisite
: Samanlainen kuinrequired
kuitenkin siinä tapauksessa, että tietty moduuli palauttaa epäonnistumisen, ohjaus palautetaan suoraan sovellukselle tai ylemmälle PAM-pinolle. Tämä lippu voi myös lukita sinut ulos tietokoneesta, jos sinulla ei ole pääsyä Nitrokey-avaimeen.sufficient
: Moduulin tulos jätetään huomiotta, jos se epäonnistuu.sufficient
-lippua pidetään turvallisena testausta varten.optional
: Tämän moduulin onnistumisella tai epäonnistumisella on merkitystä vain, jos se on ainoa moduuli pinossa, joka liittyy tähän palvelu+tyyppiin.optional
-lippua pidetään turvallisena käyttää testaustarkoituksiin.
Varoitus
Jos
required
tairequisite
on asetettu, U2F-todennuksen epäonnistuminen aiheuttaa yleisen todentamisen epäonnistumisen. Epäonnistuminen tapahtuu, kun määritettyä Nitrokey FIDOa ei ole kytketty, kadonnut tai tuhoutunut.Menetät pääsyn tietokoneeseesi, jos olet konfiguroinut PAM-moduulin väärin ja käyttänyt
required
tairequisite
-lippua.Menetät myös mahdollisuuden käyttää
sudo
, jos otat käyttöön keskitetyn todennuksen kartoituksen. ja käytitrequired
tairequisite
-lippuja.