Sikker SSH på CentOS: Opprett & bruk nøkler enkelt!


Konfigurering og bruk av SSH-nøkler på CentOS

Innledning

Sikker ekstern tilgang til servere er en vesentlig del av systemadministrasjon. Secure Shell (SSH) er en krypteringsprotokoll som sikrer en trygg forbindelse for ekstern tilgang og kommandoutførelse. SSH-nøkler spiller en nøkkelrolle i SSH-sikkerhet, og tilbyr et ekstra sikkerhetslag ved å eliminere behovet for passordbasert autentisering.

På CentOS, en utbredt Linux-distribusjon, er det enkelt å opprette, konfigurere og bruke SSH-nøkler for å forbedre sikkerheten ved fjernforbindelser. Denne utfyllende veiledningen vil lose deg gjennom hele prosessen, fra generering av nøkkelpar til bruk for SSH-forbindelser.

Generering av SSH-nøkler

Opprettelse av nøkkelpar

Generering av et SSH-nøkkelpar krever at du lager to nøkler: en privat nøkkel og en offentlig nøkkel. Den private nøkkelen oppbevares sikkert på klientmaskinen, mens den offentlige nøkkelen deles med serveren du ønsker å koble til.

For å generere et nøkkelpar, bruk følgende kommando på klientmaskinen:


ssh-keygen -t rsa -b 4096

Du vil bli bedt om å angi et passord for å beskytte den private nøkkelen. Sørg for at du velger et sterkt passord som er vanskelig å gjette.

Plassering av nøkkelfiler

Etter at nøkkelparet er generert, lagres de private og offentlige nøkkelfilene i følgende standardkataloger:

  • Privat nøkkel: ~/.ssh/id_rsa
  • Offentlig nøkkel: ~/.ssh/id_rsa.pub

Konfigurering av SSH-serveren

Aktivering av nøkkelbasert autentisering

For at SSH-serveren skal godta nøkkelbasert autentisering, må du redigere konfigurasjonsfilen for SSH-serveren, vanligvis kalt «sshd_config». Bruk en teksteditor som «vi» eller «nano» for å åpne filen:


sudo vi /etc/ssh/sshd_config

Finn følgende linje og endre den til «ja»:


PasswordAuthentication no

Dette deaktiverer passordbasert autentisering og tillater kun nøkkelbasert autentisering.

Legge til den offentlige nøkkelen på SSH-serveren

For å gi SSH-serveren tilgang til din offentlige nøkkel, må du legge den til autorisasjonsfilen på serveren.

Alternativ 1: Hvis du har SSH-tilgang til serveren, kan du bruke følgende kommando:


ssh-copy-id bruker@server_adresse

Alternativ 2: Hvis du ikke har SSH-tilgang, kopier den offentlige nøkkelfilen manuelt til serveren:


scp ~/.ssh/id_rsa.pub bruker@server_adresse:~/.ssh/authorized_keys

Bruk av SSH-nøkler for tilkoblinger

SSH-tilkobling med Putty

For å koble til en fjern CentOS-server ved hjelp av SSH-nøkler med Putty, følg disse trinnene:

1. Start Putty og skriv inn serverens IP-adresse eller vertsnavn i feltet «Host Name (or IP address)».
2. Velg «SSH» fra listen over protokoller.
3. Klikk på «Auth» i venstre rute og velg «SSH-2 RSA».
4. Bla til din private nøkkelfil (.ppk-fil).
5. Trykk på «Open» for å opprette SSH-tilkoblingen.

SSH-tilkobling fra terminalen

For å koble til en CentOS-server fra terminalen ved å bruke SSH-nøkler, bruk følgende kommando:


ssh [bruker]@[server_adresse]

Du vil bli bedt om å oppgi passordet for din private nøkkel.

Konklusjon

Bruk av SSH-nøkler er en effektiv metode for å styrke sikkerheten ved eksterne SSH-tilkoblinger på CentOS. Ved å generere nøkkelpar, konfigurere SSH-serveren og bruke nøklene for tilkoblinger, kan du eliminere passordbasert autentisering og redusere risikoen for uautorisert tilgang.

Ved å innføre SSH-nøkler i ditt CentOS-miljø, sikrer du at kun autoriserte brukere får tilgang til dine servere, og beskytter dem mot potensielle sikkerhetstrusler.

Ofte stilte spørsmål (FAQ)

Q1. Hvorfor er det anbefalt å bruke SSH-nøkler i stedet for passord?
A1. SSH-nøkler gir en sterkere form for autentisering enn passord, da de er vanskeligere å knekke eller gjette.

Q2. Hvorfor er det viktig å beskytte den private nøkkelen?
A2. Den private nøkkelen er avgjørende for SSH-tilgang. Hvis den går tapt eller kompromitteres, kan uautoriserte brukere få tilgang til dine servere.

Q3. Kan jeg bruke den samme nøkkelen for flere servere?
A3. Ja, du kan bruke samme nøkkel for flere servere ved å legge den til autorisasjonsfilen på hver enkelt server.

Q4. Hvordan kan jeg endre passordet for min private nøkkel?
A4. For å endre passordet for den private nøkkelen, bruk kommandoen «ssh-keygen -p».

Q5. Hvordan kan jeg slette mine SSH-nøkler?
A5. For å slette dine SSH-nøkler, bruk kommandoene «rm -f ~/.ssh/id_rsa» og «rm -f ~/.ssh/id_rsa.pub».

Q6. Hva er autorisasjonsfilen i SSH?
A6. Autorisasjonsfilen inneholder en liste over offentlige nøkler som er autorisert for tilgang til en SSH-server.

Q7. Hva er fordelen med å deaktivere passordbasert autentisering?
A7. Å deaktivere passordbasert autentisering tvinger brukere til å bruke SSH-nøkler, noe som minsker risikoen for brute force-angrep.

Q8. Hvordan kan jeg generere en SSH-nøkkel med en annen størrelse?
A8. Du kan endre størrelsen på den genererte nøkkelen ved å bruke «-b [nøkkelstørrelse]» når du genererer nøkkelen.