Hvordan sette opp SSH -nøkler på Ubuntu 20.04

How Set Up Ssh Keys Ubuntu 20



Dette er en gjennomgang der du lærer hvordan du konfigurerer SSH -nøkler på Ubuntu 20.04. SSH -nøkler sørger for at sikkerheten til serverne dine og at prosessen med brukere som logger seg på det ikke setter sikkerheten i fare. Det gjør det ved å gjøre det vanlige passordgodkjenningssystemet til side.

I et nøtteskall er SSH eller ‘safe shell’ en kryptert protokoll, som du kan koble til en server eksternt og få tilgang til informasjonen knyttet til. Det gir en mye tryggere måte å logge på for å gi en sikker måte å logge på uten å gå på kompromiss med sikkerheten.







Trinn 1: Lag nøkkelparet

Vi starter med å opprette et nøkkelpar på klientsystemet først med root -tilgang etter type i følgende:



$ssh-keygen



Dette utløser den siste ssh-keygen til å lage et 3072-biters RSA-nøkkelpar som standard. Du kan legge til –b 4086 -flagget for å generere en større nøkkel. Trykk enter, og det vil lagre nøkkelparet i .ssh/ underkatalog. Vær oppmerksom på at hvis du er gjest på en server som allerede hadde en nøkkel installert, vil spørringen spørre deg om du vil overskrive den eller ikke. Hvis det er tilfelle, skriver du 'y' for å signalisere et ja.





Deretter vil spørringen spørre deg om du vil legge til en passordfrase. Du kan velge bort, men vi anbefaler at du legger til en. Det styrker sikkerhetsprotokollen ved å betjene et ekstra beskyttelseslag som skal omgås for en uautorisert bruker.

Trinn 2: Kopier den offentlige nøkkelen til serveren din

Deretter må vi overføre den offentlige nøkkelen til ubuntu -serveren din.



Du kan bruke verktøyet ssh-copy-id ved å bruke følgende kommando:

$ssh-copy-id brukernavn@server_host

Dette bør gjøre susen innen bare noen få sekunder. Hvis nøkkelen er kopiert, går du videre til det tredje trinnet.

Noen ganger hender det at ssh-copy-id-metoden mislykkes, eller rett og slett ikke er tilgjengelig. I dette tilfellet må du kopiere det via passordbasert SSH. Dette kan du gjøre ved å bruke cat -kommandoen og sørge for å legge til >> -symbolet for å legge til innholdet i stedet for å overskrive det.

$katt~/.ssh/id_rsa.pub| ssheksternt_brukernavn@server_ip_adresse
'mkdir -p ~/.ssh && cat >> ~/.ssh/autoriserte_nøkler'

Hvis dette er første gang du kobler deg til en ny vert, viser systemet deg noe slikt:

Bare skriv ja og trykk Enter -knappen. Skriv deretter inn passordet til brukerens tilgangskonto, og den offentlige nøkkelen blir kopiert til Ubuntu -serveren din.

Hvis den passordbaserte SSH-tilgangen av en eller annen grunn nektes til deg, kan du alltid kopiere den offentlige nøkkelen manuelt. Legg til ~/.ssh/autoriserte_nøkler i filen id_rsa.pub på den eksterne maskinen. Logg deretter på den eksterne serverkontoen og sjekk om ~ SSH -katalogen eksisterer. Hvis den ikke gjør det, skriver du inn:

$mkdir -s~/.ssh

Nå må du bare legge til nøkkelen:

$kastet utpublic_key_string>>~/.ssh/autoriserte_nøkler

$chmod -R = ~/.ssh

Sørg også for at du bruker ~ SSH/ BRUKER katalog og IKKE rotkatalogen:

$chown -Ryounis: younis ~/.ssh

Trinn 3: Autentiser SSH -tastene

Det neste trinnet er å autentisere SSH -nøklene på Ubuntu -serveren. Logg deg først på din eksterne vert:

$sshbrukernavn@remote_host

Du blir bedt om å skrive inn passordfrasenøkkelen du la til i trinn 2. Skriv den ned og fortsett. Godkjenningen vil ta litt tid, og når den er ferdig, blir du ført til et nytt interaktivt skall på Ubuntu -serveren din

Trinn 4: Deaktiver passordautentisering

Med SSH -nøklene godkjent trenger du ikke lenger passordgodkjenningssystemet.

Hvis passordgodkjenning er aktivert på serveren din, vil den fortsatt være utsatt for uautorisert brukertilgang via brute force -angrep. Så det ville være bedre hvis du deaktiverer passordbasert autentisering.

Sjekk først om du har den SSH-nøkkelbaserte godkjenningen primet for rot konto på denne serveren. Hvis det er det, bør du endre den til den sudo -privilegerte brukeradgangskontoen på denne serveren, slik at administratortilgangen er åpen for deg i nødstilfeller eller når systemet står overfor noen mistenkelige aktiviteter.

Etter å ha gitt administratorrettigheter til ekstern tilgangskonto, logger du på den eksterne serveren med SSH -nøkler med enten root- eller sudo -privilegier. Bruk deretter følgende kommando for å få tilgang til SSH -demonens konfigurasjonsfil:

$sudogedit/etc/ssh/sshd_config

Når filen er åpnet nå, søker du etter 'PasswordAuthentication' -katalogen og skriver inn følgende for å deaktivere passordautentisering og passordbaserte SSH-pålogginger.

$/etc/ssh/sshd_config
. . .
Passord Autentiseringsnr
. . .

For å se disse endringene i kraft, må du starte sshd -tjenesten på nytt ved å bruke følgende kommando:

$sudosystemctl starter på nyttssh

For en sikkerhets skyld, åpne et nytt terminalvindu og test at SSH -tjenesten fungerer som den skal før du avslutter den nåværende økten.

Med de bekreftede SSH -nøklene dine bør du kunne se at alt fungerer som normalt. Du kan avslutte alle gjeldende serverøkter.

Konklusjon

Nå som du har et SSH-nøkkelbasert autentiseringssystem på plass, trenger du ikke lenger det sårbare passordgodkjenningssystemet, ettersom du ganske enkelt kan logge deg på uten passord. Jeg håper du har funnet denne opplæringen nyttig.