Slik bruker du tofaktorautentisering med Ubuntu


Over tid har den tradisjonelle autentiseringen av brukernavn og passord vist seg utilstrekkelig for å gi robust sikkerhet til applikasjoner og systemer. Brukernavn og passord kan enkelt knekkes ved hjelp av en mengde hackingverktøy, noe som gjør systemet ditt sårbart for brudd. Av denne grunn må enhver bedrift eller enhet som tar sikkerhet på alvor implementere 2-faktor-autentisering.

I daglig tale kjent som MFA (Multi-Factor Authentication), gir 2-Factor authentication et ekstra lag med sikkerhet som krever at brukere oppgir visse detaljer som for eksempel koder, eller OTP (Engangspassord) før eller etter autentisering med det vanlige brukernavnet og passordet.

I dag gir flere selskaper som Google, Facebook, Twitter og AWS, for å nevne noen, brukerne valget for å sette opp MFA for å beskytte kontoene deres ytterligere.

I denne veiledningen viser vi hvordan du kan bruke Tofaktorautentisering med Ubuntu.

Trinn 1: Installer Googles PAM-pakke

Installer først Google PAM-pakken. PAM, en forkortelse for Plugable Authentication Module, er en mekanisme som gir et ekstra lag med autentisering på Linux-plattformen.

Pakken ligger på Ubuntu-depotet, så fortsett og bruk apt-kommandoen for å installere den som følger:

sudo apt install libpam-google-authenticator

Når du blir bedt om det, trykk 'Y' og trykk ENTER for å fortsette med installasjonen.

Trinn 2: Installer Google Authenticator-appen på smarttelefonen din

I tillegg må du installere Google Authenticator-appen på nettbrettet eller smarttelefonen. Appen vil gi deg en 6-sifret OTP-kode som automatisk fornyes hvert 30 sekund.

Trinn 3: Konfigurer Google PAM i Ubuntu

Med Google Authenticator-appen på plass, fortsetter vi og konfigurerer Google PAM-pakken på Ubuntu ved å endre /etc/pam.d/common-auth< fil som vist.

sudo vim /etc/pam.d/common-auth

Legg til linjen nedenfor til filen som angitt.

auth required pam_google_authenticator.so

Lagre filen og avslutt.

Kjør nå kommandoen nedenfor for å initialisere PAM.

google-authenticator

Dette vil fremkalle et par spørsmål på terminalskjermen. Først vil du bli spurt om du vil at autentiseringstokens skal være tidsbasert.

Tidsbasert autentisering-tokens utløper etter en viss tid. Som standard er dette etter 30 sekunder, hvorpå et nytt sett med tokens genereres. Disse tokenene anses som sikrere enn ikke-tidsbaserte tokens, og skriv derfor 'y' for ja og trykk ENTER.

Deretter vil en QR-kode vises på terminalen som vist nedenfor, og rett under den vil noe informasjon vises. Informasjonen som vises inkluderer:

  • Hemmelig nøkkel
  • Bekreftelseskode
  • Nødskrapekoder

Du må lagre denne informasjonen i et hvelv for fremtidig referanse. Nødskrapekodene er ekstremt nyttige i tilfelle du mister autentiseringsenheten. Skulle noe skje med autentiseringsenheten din, bruk kodene.

Start Google Authenticator-appen på smartenheten din og velg Skann QR-kode for å skanne QR-koden som presenteres.

MERK: Du må maksimere terminalvinduet for å skanne hele QR-koden. Når QR-koden er skannet, vil en sekssifret OTP som endres hvert 30. sekund vises på appen.

Deretter velger du 'y' for å oppdatere Google-autentiseringsfilen i hjemmemappen din.

I neste ledetekst begrenser du påloggingen til bare én logg hvert 30 sekund for å forhindre angrep som kan oppstå på grunn av mann-i-midten-angrep. Så velg 'y'

I den neste ledeteksten velger du 'n' for å ikke tillate utvidelse av tidsvarigheten som adresserer tidsskjevhet mellom server og klient. Dette er det sikrere alternativet med mindre du opplever utfordringer med dårlig tidssynkronisering.

Og til slutt, aktiver hastighetsbegrensning til bare 3 påloggingsforsøk.

På dette tidspunktet har vi fullført implementeringen av 2-faktor autentisering-funksjonen. Faktisk, hvis du kjører en sudo-kommando, vil du bli bedt om en bekreftelseskode som du kan få fra Google Authenticator-appen.

Du kan bekrefte dette ytterligere ved å starte på nytt, og når du kommer til påloggingsskjermen, vil du bli bedt om å oppgi bekreftelseskoden din.

Etter at du har oppgitt koden fra Google Authenticator-appen, oppgir du bare passordet ditt for å få tilgang til systemet ditt.

Trinn 4: Integrer SSH med Google Authenticator

Hvis du har tenkt å bruke SSH med Google PAM-modulen, må du integrere de to. Det er to måter du kan oppnå dette på.

For SSH-passordautentisering

For å aktivere SSH-passordautentisering for en vanlig bruker, åpner du først standard SSH-konfigurasjonsfilen.

sudo vim /etc/ssh/sshd_config

Og sett følgende attributter til 'ja' som vist

For root-brukeren, sett «PermitRootLogin»-attributtet til 'yes'.

PermitRootLogin yes

Lagre filen og avslutt.

Deretter endrer du PAM-regelen for SSH

sudo vim /etc/pam.d/sshd

Legg deretter til følgende linje

auth   required   pam_google_authenticator.so

Til slutt, start SSH-tjenesten på nytt for at endringene skal tre i kraft.

sudo systemctl restart ssh

I eksemplet nedenfor logger vi på Ubuntu-systemet fra Putty-klienten.

For SSH Public-Key Authentication

Hvis du bruker offentlig nøkkelautentisering, gjentar du trinnene ovenfor og legger til linjen som vises nederst i /etc/ssh/sshd_config-filen.

AuthenticationMethods publickey,keyboard-interactive

Igjen, rediger PAM-regelen for SSH-demonen.

sudo vim /etc/pam.d/sshd

Legg deretter til følgende linje.

auth   required   pam_google_authenticator.so

Lagre filen og start SSH-tjenesten på nytt som vi så tidligere.

sudo systemctl restart ssh

Deaktiver tofaktorautentisering i Ubuntu

I tilfelle du mister autentiseringsenheten eller den hemmelige nøkkelen din, ikke bli gal. Du kan enkelt deaktivere 2FA-autentiseringslaget og gå tilbake til din enkle brukernavn/passordpåloggingsmetode.

Start først systemet på nytt og trykk 'e' på den første GRUB-oppføringen.

Rull og finn linjen som starter med linux og slutter med stille splash $vt_handoff. Legg til linjen systemd.unit=rescue.target og trykk ctrl+x for å gå inn i redningsmodus

Når du har fått skallet, oppgi root-passordet og trykk ENTER.

Fortsett deretter og slett .google-authenticator-filen i hjemmekatalogen din som følger. Pass på å erstatte brukernavnet med ditt eget brukernavn.


rm /home/username/.google_authenticator

Rediger deretter /etc/pam.d/common-auth-filen.


$ vim /etc/pam.d/common-auth

Kommenter eller slett følgende linje:


auth required pam_google_authenticator.so

Lagre filen og start systemet på nytt. På innloggingsskjermen vil du bare bli bedt om å oppgi brukernavn og passord for å autentisere.

Og dette bringer oss til slutten av denne artikkelen. Vi blir glade for å høre hvordan det gikk.