Vil du sikre SSH-serveren din med brukervennlig tofaktorautentisering? Google tilbyr den nødvendige programvaren for å integrere Google Authenticators tidsbaserte engangspassord (TOTP) med SSH-serveren din. Du må oppgi koden fra telefonen din når du kobler til.
Google Authenticator ringer ikke Google til Google - alt arbeidet skjer på SSH-serveren din og telefonen din. Faktisk er Google Authenticator det helt åpen kildekode , slik at du til og med kan undersøke kildekoden selv.
Installer Google Authenticator
For å implementere multifaktorautentisering med Google Authenticator, trenger vi open source Google Authenticator PAM-modulen. PAM står for "pluggable authentication module" - det er en måte å enkelt koble forskjellige former for autentisering til et Linux-system.
Ubuntus programvarelager inneholder en enkel å installere pakke for Google Authenticator PAM-modulen. Hvis Linux-distribusjonen ikke inneholder en pakke for dette, må du laste den ned fra Google Authenticator-nedlastingsside på Google Code og lag det selv.
For å installere pakken på Ubuntu, kjør følgende kommando:
sudo apt-get install libpam-google-authenticator
(Dette installerer bare PAM-modulen på systemet vårt - vi må aktivere den for SSH-pålogginger manuelt.)
Opprett en godkjenningsnøkkel
Logg på som brukeren du vil logge på med eksternt, og kjør google-authenticator kommando for å opprette en hemmelig nøkkel for den brukeren.
La kommandoen oppdatere Google Authenticator-filen ved å skrive y. Deretter blir du bedt om flere spørsmål som lar deg begrense bruken av det samme midlertidige sikkerhetstokenet, øke tidsvinduet som tokens kan brukes til, og begrense tillatte tilgangsforsøk for å hindre brute-force cracking-forsøk. Disse valgene handler alt om sikkerhet for brukervennlighet.
Google Authenticator vil gi deg en hemmelig nøkkel og flere "nødskrapekoder". Skriv ned nødskrapekodene et trygt sted - de kan bare brukes én gang hver, og de er beregnet på bruk hvis du mister telefonen.
Skriv inn den hemmelige nøkkelen i Google Authenticator-appen på telefonen din (offisielle apper er tilgjengelige for Android, iOS og Blackberry ). Du kan også bruke skannestrekkodefunksjonen - gå til URL-en som ligger nær toppen av kommandoens utgang, og du kan skanne en QR-kode med telefonens kamera.
Du vil nå ha en stadig skiftende bekreftelseskode på telefonen din.
Hvis du vil logge på eksternt som flere brukere, kjører du denne kommandoen for hver bruker. Hver bruker vil ha sin egen hemmelige nøkkel og sine egne koder.
Aktiver Google Authenticator
Deretter må du kreve Google Authenticator for SSH-pålogginger. For å gjøre det, åpne /etc/pam.d/sshd filen på systemet ditt (for eksempel med Sudonano / Etc / Pam. d / shd kommandoen) og legg til følgende linje i filen:
auth kreves pam_google_authenticator.so
Deretter åpner du / etc / ssh / sshd_config fil, finn ChallengeResponseAuthentication linje, og endre den til å lese som følger:
ChallengeResponseAuthentication ja
(Hvis ChallengeResponseAuthentication linjen ikke allerede eksisterer, legg til linjen ovenfor i filen.)
Til slutt starter du SSH-serveren på nytt slik at endringene dine trer i kraft:
sudo service ssh omstart
Du blir bedt om å oppgi både passordet ditt og Google Authenticator-koden når du prøver å logge på via SSH.