Vil du sikre din SSH-server med brugervenlig tofaktorautentificering? Google leverer den nødvendige software til at integrere Google Authenticators tidsbaserede engangsadgangskode (TOTP) med din SSH-server. Du bliver nødt til at indtaste koden fra din telefon, når du opretter forbindelse.
Google Authenticator "ringer ikke hjem" til Google - alt arbejdet sker på din SSH-server og din telefon. Faktisk er Google Authenticator det helt open source , så du selv kan undersøge kildekoden.
Installer Google Authenticator
For at implementere multifaktorautentificering med Google Authenticator har vi brug for open source Google Authenticator PAM-modulet. PAM står for "pluggable authentication module" - det er en måde at nemt tilslutte forskellige former for godkendelse til et Linux-system.
Ubuntus softwarelager indeholder en nem at installere pakke til Google Authenticator PAM-modulet. Hvis din Linux-distribution ikke indeholder en pakke til dette, skal du downloade den fra Google Authenticator downloads page på Google Code og kompilér det selv.
For at installere pakken på Ubuntu skal du køre følgende kommando:
sudo apt-get install libpam-google-authenticator
(Dette installerer kun PAM-modulet på vores system - vi bliver nødt til at aktivere det til SSH-login manuelt.)
Opret en godkendelsesnøgle
Log ind som den bruger, du vil logge på med, og kør google-authenticator kommando til at oprette en hemmelig nøgle til den bruger.
Tillad kommandoen at opdatere din Google Authenticator-fil ved at skrive y. Derefter bliver du bedt om flere spørgsmål, der giver dig mulighed for at begrænse brugen af det samme midlertidige sikkerhedstoken, øge det tidsvindue, som tokens kan bruges til, og begrænse tilladte adgangsforsøg på at hindre brutale kræftforsøg. Disse valg handler alle med en vis sikkerhed for brugervenlighed.
Google Authenticator præsenterer dig med en hemmelig nøgle og adskillige "nødskrabekoder". Skriv nødskrabekoder et sikkert sted - de kan kun bruges én gang hver, og de er beregnet til brug, hvis du mister din telefon.
Indtast den hemmelige nøgle i Google Authenticator-appen på din telefon (officielle apps er tilgængelige for Android, iOS og Blackberry ). Du kan også bruge scanningsstregkodefunktionen - gå til webadressen placeret øverst på kommandoens output, og du kan scanne en QR-kode med din telefons kamera.
Du får nu en konstant skiftende bekræftelseskode på din telefon.
Hvis du ønsker at logge på eksternt som flere brugere, skal du køre denne kommando for hver bruger. Hver bruger vil have sin egen hemmelige nøgle og deres egne koder.
Aktivér Google Authenticator
Derefter bliver du nødt til at kræve Google Authenticator for SSH-login. For at gøre det skal du åbne /etc/pam.d/sshd fil på dit system (f.eks. med Sudonano / Etc / Pam. d / shd kommando) og tilføj følgende linje til filen:
auth kræves pam_google_authenticator.so
Åbn derefter / etc / ssh / sshd_config fil, find den ChallengeResponseAuthentication linje, og skift den til at læse som følger:
ChallengeResponseAuthentication ja
(Hvis ChallengeResponseAuthentication linje findes ikke allerede, tilføj ovenstående linje til filen.)
Til sidst skal du genstarte SSH-serveren, så dine ændringer træder i kraft:
sudo service ssh genstart
Du bliver bedt om både din adgangskode og Google Authenticator-kode, hver gang du prøver at logge ind via SSH.