Konfigurer SSH-server for nøkkelautentisering på Ubuntu 17.04 | 17.10

  • Michael Arnold
  • 0
  • 3349
  • 146

Denne korte opplæringen viser studenter og nye brukere hvordan du konfigurerer OpenSSH-server for nøkkelautentisering eller passordfri autentisering. Dette oppsettet lar brukere av Ubuntu-serveren logge på via SSH uten å skrive inn passord.

Dette er et mye sikrere alternativ til SSH-passordgodkjenning. Hver gang en bruker ønsker å logge på med passordgodkjenning, må han / hun alltid skrive inn et passord. En annen svakhet er at passord kan gjettes noen.

Med nøkkelautentisering blir det aldri skrevet inn noe passord. Bare klientdatamaskiner med riktig samsvarende nøkkelpar til serveren er tillatt.

Følg trinnene nedenfor for å konfigurere SSH med nøkkelautentisering:

Trinn 1: Generer en SSH-nøkkel for hver bruker

For å logge på via SSH-nøkkelautentisering, må du først generere et nøkkelpar. To nøkler opprettes: en offentlig og den andre private. Den private nøkkelen må være på serveren og den offentlige nøkkelen som deles med klienter på en sikker måte.

Logg inn via SSH som brukeren du vil konfigurere, og kjør deretter kommandoene nedenfor for å generere et SSH-nøkkelpar.

ssh-keygen -t rsa

Når du blir bedt om det, trykk Enter for å godta standardplasseringen for å lagre nøklene ... som standard er den lagret i brukerens hjemmekatalog i den skjulte .ssh-mappen..

richard @ ubuntu1704: ~ $ ssh-keygen -t rsa Genererer offentlig / privat rsa-nøkkelpar. Skriv inn filen der du vil lagre nøkkelen (/home/richard/.ssh/id_rsa): Gå inn i opprettet katalog '/home/richard/.ssh'. Skriv inn passordfrase (tom uten passordfrase): Angi Angi samme passordfrase igjen: Skriv inn Din identifikasjon er lagret i /home/richard/.ssh/id_rsa. Den offentlige nøkkelen din er lagret i /home/richard/.ssh/id_rsa.pub. 

Trinn 2: Del den offentlige nøkkelen med klient-PC-en

Etter å ha opprettet nøkkelparet ovenfor, ringte en offentlig nøkkel id_rsa.pub lagres i ~ / .ssh /. En mappe også kalt autoriserte_taster vil også bli opprettet i den katalogen. SSH-serveren ser i ~ / .ssh / autoriserte_taster for alle autoriserte nøkler som kan logge på serveren.

Så kjør kommandoene nedenfor for å flytte den offentlige nøkkelen som er opprettet ovenfor, inn i ~ / .ssh / autorisert_keys fil.

mv ~ / .ssh / id_rsa.pub ~ / .ssh / autoriserte_taster

Etter å ha kjørt ovennevnte kommandoer, logg på klientdatamaskinen ... forhåpentligvis en annen Linux-maskin og kjør kommandoene nedenfor for å kopiere den offentlige nøkkelen til klientmaskinen..

mkdir ~ / .ssh scp richard @ server_name: /home/richard/.ssh/id_rsa ~ / .ssh / 

Nøkkelen skal kopieres til klientmaskinen.

Trinn 3: Logg på SSH uten passord

Etter å ha fått nøkkelen til klientdatamaskinen, logger du på serveren og åpner SSH-standardkonfigurasjonsfilen ved å kjøre kommandoene nedenfor

sudo nano / etc / ssh / sshd_config

Gjør deretter de markerte endringene nedenfor og lagre filen.

# For å deaktivere tunnelert klartekstpassord, endre til nei her! PasswordAuthentication no ChallengeResponseAuthentication no UsePAM yes #PermitEmptyPasswords no 

Lagre filen og start SSH på nytt

sudo systemctl start ssh på nytt

Beskytt nøklene dine.

Kjør kommandoene nedenfor på serveren for å beskytte SSH-nøklene.

chmod 600 ~ / .ssh / autoriserte_taster

Nå er det kun klienter med matchende nøkkelpar som får tillatelse til serveren. For å koble til, kjør kommandoene nedenfor og erstatt servernavn med originale servere.

ssh richard @ server_name

Vil logge på uten å skrive inn passord.

Hvis du kan få nøkkelen til en Windows-maskin, kan du bruke PuTTY til å logge på automatisk også.

Kos deg ~




Ingen har kommentert denne artikkelen ennå.

En samling nyttig informasjon om Linux-operativsystemet og ny teknologi
Nye artikler, praktiske tips, detaljerte anmeldelser og guider. Føl deg hjemme i Linux-operativsystemets verden