Trinn 1: Forutsetninger
Trinn 2: Installere Google Authenticator Library
Trinn 3: Konfigurer Google Authenticator for hver bruker
Trinn 4: Konfigurer SSH for å bruke Google Authenticator
Merk
Konklusjon
Det er flere måter å logge på en server over SSH. Metoder inkluderer passordpålogging, nøkkelbasert pålogging og tofaktorautentisering.
Tofaktorautentisering er en mye bedre type beskyttelse. I tilfelle datamaskinen din blir kompromittert, vil angriperen fortsatt trenge en tilgangskode for å logge på.
I denne opplæringen lærer du hvordan du setter opp tofaktorautentisering på en Ubuntu-server ved å bruke Google Authenticator og SSH.
Trinn 1: Forutsetninger
- En Ubuntu 14.04-server (eller nyere).
- En ikke-rootbruker med sudo-tilgang.
- En smarttelefon (Android eller iOS) med Google Authenticator-appen installert. Du kan også bruke Authy eller en annen app som støtter TOTP-baserte pålogginger.
Trinn 2: Installere Google Authenticator Library
Vi må installere Google Authenticator Library-modulen som er tilgjengelig for Ubuntu, som lar serveren lese og validere koder. Kjør følgende kommandoer.
sudo apt-get update
sudo apt-get install libpam-google-authenticator
For å konfigurere modulen, kjør bare følgende kommando.
google-authenticator
Når du kjører kommandoen, vil du bli stilt visse spørsmål. Det første spørsmålet vil være:
Do you want authentication tokens to be time-based (y/n)
Trykk yog du vil få en QR-kode, hemmelig nøkkel, bekreftelseskode og nødhjelpskoder.
Ta frem telefonen og åpne Google Authenticator-appen. Du kan enten skanne QR-koden eller legge til den hemmelige nøkkelen for å legge til en ny oppføring. Når du har gjort det, noter sikkerhetskopikodene og oppbevar dem trygt et sted. I tilfelle telefonen din blir feilplassert eller skadet, kan du bruke disse kodene til å logge på.
For de resterende spørsmålene, trykk ynår du blir bedt om å oppdatere .google_authenticatorfilen, yfor å ikke tillate flere bruk av samme token, nfor å øke tidsvinduet og for yå aktivere hastighetsbegrensning.
Du må gjenta trinn 3 for alle brukerne på maskinen din, ellers vil de ikke kunne logge på når du er ferdig med denne opplæringen.
Nå som alle brukere på maskinen din har satt opp sin Google-autentiseringsapp, er det på tide å konfigurere SSH til å bruke denne autentiseringsmetoden over den gjeldende.
Skriv inn følgende kommando for å redigere sshdfilen.
sudo nano /etc/pam.d/sshd
Finn linjen @include common-authog kommenter den som nedenfor.
# Standard Un*x authentication.
#@include common-auth
Legg til følgende linje nederst i denne filen.
auth required pam_google_authenticator.so
Trykk for Ctrl + Xå lagre og avslutte.
Deretter skriver du inn følgende kommando for å redigere sshd_configfilen.
sudo nano /etc/ssh/sshd_config
Finn termen ChallengeResponseAuthenticationog sett verdien til yes. Finn også begrepet PasswordAuthentication, fjern kommentarer og endre verdien til no.
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no
Neste trinn er å legge til følgende linje nederst i filen.
AuthenticationMethods publickey,keyboard-interactive
Lagre og lukk filen ved å trykke på Ctrl + X. Nå som vi har konfigurert SSH-serveren til å bruke Google Authenticator, er det på tide å starte den på nytt.
sudo service ssh restart
Prøv å logge på serveren igjen. Denne gangen vil du bli bedt om autentiseringskoden din.
ssh user@serverip
Authenticated with partial success.
Verification code:
Skriv inn koden som appen din genererer, og du vil bli logget på.
Merk
I tilfelle du mister telefonen din, bruk sikkerhetskopikodene fra trinn 2. Hvis du har mistet sikkerhetskopikodene, kan du alltid finne dem i .google_authenticatorfilen under brukerhjemmekatalogen etter at du har logget på via Vultr-konsollen.
Konklusjon
Å ha multifaktorautentisering forbedrer serverens sikkerhet betraktelig og lar deg hjelpe til med å hindre vanlige brute force-angrep.
Andre versjoner