Hvordan installere og aktivere SSH multifaktorautentisering for Linux-systemer

Hvordan installere og aktivere SSH multifaktorautentisering for Linux-systemer
Secure Shell (SSH) er en populær protokoll som brukes til ekstern tilgang til Linux -servere og systemer. Det gir en trygg, kryptert forbindelse som lar brukerne administrere og administrere systemene sine eksternt.

Å bruke bare et brukernavn og passord for å få tilgang til SSH kan imidlertid la systemene dine være sårbare for brute-force-angrep, gjetting av passord og andre sikkerhetstrusler. Det er her multifaktorautentisering (MFA) kommer godt med.

Det er et ekstra lag med sikkerhet som krever at brukerne gir to eller flere former for autentisering for å få tilgang til et system. Ved å kreve at brukerne presenterer flere faktorer, kan MFA forbedre sikkerheten ved SSH -tilgang betydelig.

MFA er avgjørende for systemer som håndterer sensitive eller konfidensielle data, da det hjelper til med å forhindre uautorisert tilgang og datainnbrudd. Ved å implementere MFA, kan du forbedre sikkerheten til Linux -systemet ditt betydelig og bedre beskytte dine data og eiendeler.

Denne artikkelen illustrerer å installere, konfigurere og aktivere MFA for SSH -tilgang på Linux -systemer. Vi vil skissere de nødvendige trinnene for å sette opp en støttet MFA -metode som Google Authenticator eller Duo Security, og teste oppsettet for SSH -tilgang.

Forbereder Linux -systemet ditt for MFA

Før du installerer og konfigurerer MFA på Linux-systemet ditt, er det viktig å sikre at systemet ditt er oppdatert og har de nødvendige pakkene installert. Oppdater systemet ditt ved å bruke følgende verktøy:

sudo apt oppdatering && sudo apt oppgradering -y

Når systemet er oppdatert, må du installere PAM (Pluggable Authentication Modules) -pakken som muliggjør MFA for SSH.

Installere og konfigurere en støttet MFA -metode

Flere MFA -metoder er tilgjengelige for SSH -tilgang inkludert Google Authenticator, Duo Security og Yubikey. I dette avsnittet vil vi fokusere på å konfigurere Google Authenticator som er en mye brukt og lett å-oppstart MFA-metoden for SSH.

Her er trinnene for å installere og konfigurere Google Authenticator for SSH MFA:

Trinn 1: Opprett en ny bruker

Først må du opprette en ny bruker for SSH -tilgang. Du kan opprette en ny bruker ved å kjøre følgende kode:

sudo adduser

Erstatte med det aktuelle navnet på brukeren du vil opprette.

Trinn 2: Bytt til den nye brukeren

Deretter bytter du til den nye brukeren ved å kjøre følgende kommando:

su -

Systemet ditt ber deg om å oppgi passordet for den nye brukeren.

Trinn 3: Installer Google Authenticator

Installer Google Authenticator ved hjelp av dette verktøyet:

sudo apt install libpam-google-authenticator -y

Følgende er en prøveutgang for forrige kommando:

Denne utgangen viser pakkebehandleren som er "passende", og installerer pakken "Libpam-Google-Authenticator" og dens avhengigheter som er "LibqRencode4". Alternativet -alternativet bekrefter installasjonspromptet automatisk. Resultatet viser også fremdriften i installasjonsprosessen, inkludert nedlasting og installasjon av pakkene og eventuell ekstra diskplass som skal brukes. Til slutt viser det at installasjonen og eventuelle relevante utløsere for prosessering etter installasjon er vellykket.

Trinn 4: Generer en ny hemmelig nøkkel

Dette verktøyet vil hjelpe deg å generere en ny hemmelig nøkkel for brukeren:

Google-Authenticator

Systemet ditt ber deg om å svare på noen få spørsmål, inkludert følgende:

  • Vil du at godkjenningstokensene skal være tidsbasert (Y/N)? y
  • Vil du at jeg skal oppdatere “/Home/YourUsername/.Google_Authenticator ”-fil (Y/N)? y
  • Vil du ikke tillate flere bruksområder med samme autentiseringstoken? (y/n) y
  • Vil du aktivere hastighetsbegrensende? (y/n) y

Du kan godta standardverdiene for de fleste spørsmålene. For spørsmålet, “Vil du at jeg skal oppdatere “/Home //.Google_Authenticator ”-fil?“Velg“ Y ”for å oppdatere konfigurasjonsfilen.

Den forrige kommandolinjen genererer en ny hemmelig nøkkel for brukeren som brukes til å opprette engangspassord for MFA.

Trinn 5: Åpne autentisator -appen på telefonen

Åpne Google Authenticator -appen på smarttelefonen din og skann QR -koden som vises på skjermen. Dette legger den nye brukeren til Google Authenticator -appen din.

Trinn 6: Rediger konfigurasjonsfilen

Rediger SSH -konfigurasjonsfilen ved å kjøre følgende kommando:

sudo nano/etc/ssh/sshd_config

Legg til følgende linje på slutten av filen:

ChallengerSponseAuthentication Ja

Denne linjen muliggjør utfordrings-respons-godkjenning for SSH.

Trinn 7: Rediger PAM -konfigurasjonsfilen

Denne kommandoen redigerer PAM -konfigurasjonsfilen for SSH:

sudo nano /etc /pam.d/sshd

Legg til følgende linje på slutten av filen for å fullføre dette trinnet:

AUTH krevde PAM_GOOGLE_AUTHENTICATOR.så

Dette verktøyet muliggjør Google Authenticator -modulen for SSH.

Trinn 8: Lagre endringene dine

Lagre endringene i konfigurasjonsfilene og start SSH -tjenesten på nytt ved å bruke følgende kommando:

sudo service ssh omstart

Denne kommandoen starter SSH -tjenesten på nytt med den nye konfigurasjonen.

Når du logger deg på Linux-systemet ditt ved hjelp av SSH, blir du bedt om et engangspassord som genereres av Google Authenticator-appen. Skriv inn engangspassordet for å fullføre påloggingsprosessen.

Testing av MFA -oppsettet for SSH -tilgang

Når du installerte og konfigurerte MFA for SSH på Linux -systemet ditt, er det viktig å teste oppsettet for å sikre at det fungerer riktig. Her er trinnene for å teste MFA -oppsettet ditt for SSH -tilgang:

1. Åpne et nytt terminalvindu og koble til Linux -systemet ditt ved hjelp av SSH, som du normalt ville gjort. For eksempel:

ssh @

Bytt ut med det nøyaktige navnet på brukeren som du opprettet tidligere og med IP -adressen eller vertsnavnet til Linux -systemet ditt. I dette tilfellet bruker vi Victoria som brukernavn. Utgangen ser ut som det som er i følgende figur:

I dette eksemplet bruker vi SSH -kommandoen til å logge inn på en ekstern maskin med IP -adressen til 192.168.1.100 Som bruker, “Victoria”. Kommandoen ber om bekreftelse av den eksterne vertens ekthet og ber deretter om passordet for brukeren, "Victoria". Når vi er autentisert, blir vi møtt med Shell -ledeteksten på den eksterne maskinen, noe som indikerer at vi med suksess etablerte en SSH -økt.

2. Skriv inn passordet for brukeren når det blir bedt om det.

3. Etter å ha lagt inn passordet, bør du bli bedt om et engangspassord fra MFA-appen din. Åpne Google Authenticator -appen på smarttelefonen din og skriv inn koden som tilsvarer brukeren som du opprettet tidligere.

4. Hvis engangspassordet er riktig, bør du være logget på Linux-systemet ditt. Hvis passordet er feil, blir du bedt om å oppgi en annen kode fra MFA -appen.

5. Når du har logget inn vellykket, kan du bekrefte at MFA fungerer riktig ved å sjekke SSH -loggene. Kjør dette verktøyet for å se loggene:

sudo hale -f/var/log/authent.Logg

Den forrige kommandoen viser SSH-godkjenningsloggene i sanntid.

Se etter en linje i loggen som sier “akseptert publicKey for” etterfulgt av “akseptert tastatur-interaktiv/PAM for”.

17. april 10:45:24 Server SSHD [2998]: Akseptert publicKey for Victoria fra 192.168.0.2 Port 57362 SSH2: RSA SHA256: XXXXXXXXXXXXXXXXXXXXX
17. april 10:45:27 Server SSHD [2998]: Akseptert tastatur-interaktiv/Pam for Victoria fra 192.168.0.2 port 57362 SSH2

For eksempel:

De to første linjene viser at brukeren “Victoria” er vellykket autentisert via en offentlig nøkkel og tastatur-interaktive metoder fra IP-adressen til 192.168.0.2.

Hvis alt fungerer riktig, kan du logge deg på Linux -systemet ditt ved å bruke SSH med Aktivert MFA.

Konklusjon

Implementering av multifaktorautentisering (MFA) for SSH-tilgang på Linux-systemet ditt kan forbedre sikkerheten til systemet ditt betydelig ved å legge til et ekstra lag med godkjenning. Ved å kreve at brukerne oppgir et engangspassord i tillegg til det vanlige passordet, gjør MFA det mye vanskeligere for angripere å få tilgang til systemet ditt.