Sådan sikrer du SSH på en Linux VPS
En offentlig VPS modtager automatiserede loginforsøg få minutter efter, at den er kommet online. Disse trin gør det langt sværere at angribe SSH. De er skrevet til Ubuntu eller Debian; hvis du endnu ikke har oprettet en server, kan du leje en Linux VPS og starte fra et rent image. Hold din nuværende SSH-session åben, indtil du har testet de nye indstillinger fra et andet vindue.
1. Opret en almindelig bruger med sudo
adduser deploy
usermod -aG sudo deploy2. Brug SSH-nøgler i stedet for adgangskoder
På din egen computer:
ssh-keygen -t ed25519 -C "you@example.com"
ssh-copy-id deploy@YOUR_SERVER_IP
ssh deploy@YOUR_SERVER_IPLog ind én gang med nøglen for at bekræfte, at den virker, før du slår adgangskoder fra.
3. Slå adgangskode- og root-login fra
Opret /etc/ssh/sshd_config.d/99-hardening.conf:
PasswordAuthentication no
PermitRootLogin no
PubkeyAuthentication yes
MaxAuthTries 3Kontroller syntaksen, og genindlæs tjenesten. Tjenesten hedder ssh på Ubuntu og Debian og sshd på RHEL-baserede systemer:
sudo sshd -t && sudo systemctl reload sshÅbn en ny terminal, og log ind igen. Først derefter lukker du den gamle session.
4. Aktiver en firewall
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status verboseÅbn kun de porte, du har brug for, fx 80 og 443 til en webserver. Du kan også begrænse SSH til din egen IP-adresse med en firewallregel i cloud-konsollen.
5. Bloker gentagne fejlforsøg med Fail2ban
sudo apt install -y fail2banOpret /etc/fail2ban/jail.local:
[sshd]
enabled = true
maxretry = 5
findtime = 10m
bantime = 1hsudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd6. Installer sikkerhedsopdateringer automatisk
sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades7. Valgfrie tilvalg
- Ændring af SSH-porten reducerer støj i logfilerne, men er ikke i sig selv en sikkerhedsforanstaltning.
- Beskyt den private nøgle med en adgangsfrase, og gem en sikkerhedskopi et sikkert sted.
- Gennemgå logins med
lastogsudo journalctl -u ssh --since today. - Tag et snapshot, når serveren er konfigureret, så du kan gendanne en ren baseline.
Hvis du er låst ude, skal du bruge browserkonsollen i din cloudpanel til at logge ind og rette konfigurationen. Vores guide til DDoS-beskyttelse dækker det næste lag af forsvar.
Ofte stillede spørgsmål
Er det sikkert at deaktivere root-login?
Ja, hvis du først opretter en sudo-bruger og tester, at dens nøgle virker. Du kan stadig køre administrative kommandoer med sudo.
Har jeg brug for Fail2ban, hvis jeg kun bruger nøgler?
Det er valgfrit. Når adgangskodelogin er slået fra, kan brute force ikke lykkes, men Fail2ban reducerer støj i logfilerne og belastningen.
Hvad hvis jeg mister min SSH-nøgle?
Brug konsollen i din cloudpanel til at logge ind, tilføj en ny offentlig nøgle i ~/.ssh/authorized_keys, og fjern den gamle.