Indholdsfortegnelse
Sådan konfigureres SSH-nøgler på CentOS
SSH (Secure Shell) er en krypteret netværksprotokol, der bruges til at etablere sikre forbindelser mellem to computere, typisk en klient og en server. SSH-nøgleautentificering er en metode til at logge ind på en server ved hjælp af et kryptografisk nøglepar i stedet for et brugernavn og en adgangskode. Denne metode anses for at være mere sikker end adgangskodeautentificering, da den ikke er modtagelig over for brute-force-angreb eller phishing.
I denne vejledning vil vi gennemgå trinene til at konfigurere SSH-nøgleautentificering på CentOS-servere. Vi vil dække generering af nøglepar, tilføjelse af den offentlige nøgle til serveren og konfiguration af SSH-serveren til at tillade nøgleautentificering.
Forudsætninger
* En CentOS-server med root-adgang
* En SSH-klient installeret på din lokale maskine
Trin 1: Generer SSH-nøglepar
Det første trin er at generere et SSH-nøglepar på din lokale maskine. Du kan gøre dette ved at åbne en terminal og køre følgende kommando:
ssh-keygen -t rsa
Du bliver bedt om at angive en placering til at gemme nøgleparret og en adgangskode til at beskytte den private nøgle. Vælg en sikker adgangskode og huske den, da du skal indtaste den hver gang du logger ind med den private nøgle.
Trin 2: Tilføj den offentlige nøgle til serveren
Dernæst skal du tilføje den offentlige nøgle til den server, du vil logge ind på. Du kan gøre dette ved at kopiere den offentlige nøglefil (.pub) til serveren ved hjælp af kommandoen scp:
scp ~/.ssh/id_rsa.pub root@<server_ip_address>:/root/.ssh/authorized_keys
Erstat ‘
Trin 3: Konfigurer SSH-serveren
Nu skal du konfigurere SSH-serveren til at tillade nøgleautentificering. Åbn SSH-konfigurationsfilen (/etc/ssh/sshd_config) ved hjælp af en teksteditor:
sudo vi /etc/ssh/sshd_config
Find følgende linjer i filen:
#PasswordAuthentication yes
#ChallengeResponseAuthentication yes
Fjern hash-tegnene (#) fra begyndelsen af disse linjer for at aktivere dem. Skift derefter følgende linje for at tillade kun nøgleautentificering:
AuthenticationMethods keyboard-interactive,password
til:
AuthenticationMethods publickey
Gem filen og genstart SSH-serveren:
sudo systemctl restart sshd
Konklusion
Du har nu konfigureret SSH-nøgleautentificering på din CentOS-server. Ved at bruge SSH-nøgler til at logge ind, øger du sikkerheden af din server ved at fjerne behovet for adgangskoder, som kan være sårbare over for kompromittering. SSH-nøgleautentificering er en god praksis for at beskytte dine servere mod uautoriseret adgang og opretholde høj netværkssikkerhed.
Ofte stillede spørgsmål
Q: Kan jeg stadig logge ind med en adgangskode, selvom jeg har konfigureret SSH-nøgleautentificering?
A: Nej, konfigurationen af SSH-serveren til at tillade kun nøgleautentificering forhindrer login via adgangskode.
Q: Hvad skal jeg gøre, hvis jeg mister min private nøgle?
A: Hvis du mister din private nøgle, skal du generere et nyt nøglepar og tilføje den offentlige nøgle til serveren igen.
Q: Kan jeg bruge SSH-nøgler på flere servere?
A: Ja, du kan bruge det samme nøglepar til at logge ind på flere servere. Bare sørg for at tilføje den offentlige nøgle til den autoriserede nøglefil på hver server.
Q: Hvad er fordelene ved SSH-nøgleautentificering?
A: SSH-nøgleautentificering er mere sikker end adgangskodeautentificering, da den ikke er modtagelig over for brute-force-angreb eller phishing. Det er også mere praktisk, da du ikke behøver at indtaste en adgangskode hver gang du logger ind.
Q: Hvordan kan jeg kontrollere, om SSH-nøgleautentificering er konfigureret korrekt?
A: Du kan kontrollere, om SSH-nøgleautentificering er konfigureret korrekt ved at forsøge at logge ind på serveren ved hjælp af din private nøgle. Hvis du kan logge ind uden at indtaste en adgangskode, er nøgleautentificering konfigureret korrekt.
Q: Kan jeg bruge et password til at beskytte min private nøgle?
A: Ja, du kan angive en adgangskode til at beskytte din private nøgle, når du genererer nøgleparret. Dette giver et ekstra lag af sikkerhed, da en angriber skal indtaste både adgangskoden og den private nøgle for at få adgang til serveren.
Q: Hvad er risikoen ved at bruge SSH-nøgler?
A: Den største risiko ved at bruge SSH-nøgler er, at hvis din private nøgle går tabt eller bliver kompromitteret, kan en angriber få adgang til din server. Derfor er det vigtigt at opbevare din private nøgle på et sikkert sted og at generere et nyt nøglepar, hvis du mener, at din nøgle er blevet kompromitteret.
Q: Kan jeg automatisere processen med at tilføje offentlige nøgler til flere servere?
A: Ja, du kan bruge værktøjer som Ansible eller Puppet til at automatisere processen med at tilføje offentlige nøgler til flere servere. Dette kan være nyttigt i miljøer med et stort antal servere, hvor manuel administration kan være tidskrævende.
Tags: SSH, SSH-nøgleautentificering, CentOS, serversikkerhed, cybersikkerhed