Kako konfigurirati dvofaktorsku autentifikaciju u SSH u Ubuntuu?

Dvofaktorska autentifikacija

La Dvofaktorska autentifikacija (2FA) nije nešto jedinstveno što se može koristiti na društvenim mrežama ili na bilo kojoj drugoj web stranici. Pa, ova se sigurnosna mjera može primijeniti i unutar operativnog sustava.

Zbog toga Danas ćemo vidjeti kako implementirati dvofaktorsku provjeru autentičnosti u SSH u Ubuntuu i derivati ​​koji koriste dobro poznati Google Authenticator koji će znatno povećati sigurnost vašeg OpenSSH poslužitelja.

Obično trebate unijeti lozinku ili upotrijebiti SSH ključ za daljinsku prijavu u svoj sustav.

Dvofaktorska autentifikacija (2FA) zahtijeva unos dvaju podataka za prijavu.

Stoga ćete također morati unijeti vremensku jednokratnu lozinku za prijavu na svoj SSH poslužitelj.

Ova jednokratna lozinka izračunava se pomoću algoritma TOTP, koji je IETF standard.

Instalacija i konfiguracija Google Autentifikatora u Ubuntuu i izvedenicama

Prvi korak koji ćemo poduzeti je instalacija Google Autentifikatora u naš sustav, tako da ćemo otvoriti terminal u sustavu (to se može učiniti kombinacijom tipki “Ctrl + Alt + T) i u njega ćemo upisati sljedeću naredbu:

sudo apt install libpam-google-authenticator

Instalacija gotova pokrenut ćemo novoinstaliranu aplikaciju sa sljedećom naredbom:

google-authenticator

Kada izvršavamo ovu naredbu, ono što ćemo učiniti je dodijeliti tajni ključ i to će nas pitati želimo li koristiti žetone na temelju vremena, što ćemo odgovoriti da.

Nakon ovoga, vidjet će QR kod koji mogu skenirati pomoću aplikacije TOTP na svom telefonu.

ovdje Preporučujemo upotrebu aplikacije Google Authenticator na svom mobilnom telefonu.tako da aplikaciju možete instalirati putem Google Playa ili Apple App Storea na svoj mobilni telefon.

Već imate aplikaciju na telefonu, morate skenirati QR kôd s njom. Imajte na umu da morate povećati prozor terminala za skeniranje cijelog QR koda.

QR kôd predstavlja tajni ključ, koji je poznat samo njegovom SSH poslužitelju i aplikaciji Google Authenticator.

Nakon što se QR kod skenira, na svom telefonu mogu vidjeti jedinstveni šestoznamenkasti token. Prema zadanim postavkama ovaj token traje 30 sekundi i mora se unijeti za prijavu na Ubuntu putem SSH-a.

google-autentifikator-tajni ključ

U terminalu ćete moći vidjeti i tajni kôd, kao i kontrolni kôd i kôd za hitni start.

Iz čega vam preporučujemo da ove podatke čuvate na sigurnom mjestu za kasniju upotrebu. Na ostala pitanja koja ćemo postaviti jednostavno ćemo odgovoriti da davanjem slova y.

SSH konfiguracija za upotrebu s Google Autentifikatorom

Već računajući na gore navedeno, Sada ćemo napraviti potrebnu konfiguraciju kako bismo mogli koristiti SSH vezu u našem sustavu s Google Authenticatorom.

U terminalu vUpisat ćemo sljedeću naredbu

sudo nano /etc/ssh/sshd_config

Unutar datoteke potražit ćemo sljedeće redove i promijenit ćemo ih u "da", kako slijedi:

UsePAM yes

ChallengeResponseAuthentication yes

Nakon što su promjene napravljene, spremite promjene načinjene Ctrl + O i zatvorite datoteku Ctrl + X.

U istom terminalu ponovno ćemo pokrenuti SSH sa:

sudo systemctl restart ssh

Prema zadanim postavkama provjera autentičnosti zahtijeva unos korisničke lozinke za prijavu.

Tako da uredimo datoteku PAM pravila za SSH demon.

sudo nano /etc/pam.d/sshd

Na početku ove datoteke možete vidjeti sljedeći redak koji omogućuje provjeru autentičnosti lozinke

ChallengeResponseAuthentication

Što moramo postaviti na da.

Da biste također omogućili jednokratnu provjeru autentičnosti lozinke, dodajte sljedeća dva retka.

@include common-auth

#One-time password authentication via Google Authenticator

auth required pam_google_authenticator.so

Spremite i zatvorite datoteku.

Od sada, svaki put kad se prijave u vaš sustav putem SSH veze, od njih će se tražiti da unesu korisničku lozinku i kontrolni kôd (jednokratnu lozinku koju generira Google Authenticator).


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.

  1.   Miguel dijo

    Pozdrav, prilično jednostavan vodič, međutim, nakon što napravim sve korake u koje više ne mogu ući putem ssh-a, izbacuje mi pogrešku u pogrešci lozinke, ne mogu tražiti ni 2FA.

    Imam Ubuntu Server 20.04