Hoe om SSH op 'n Linux-VPS te beveilig

Deur ONIE-ingenieurspan · Opgedateer 12 November 2026 · 2 min leestyd

'n Openbare VPS ontvang binne minute na aanskakeling outomatiese aanmeldpogings. Hierdie stappe maak SSH baie moeiliker om aan te val. Dit is geskryf vir Ubuntu of Debian; as jy nog nie 'n bediener geskep het nie, kan jy 'n Linux-VPS huur en van 'n skoon image begin. Hou jou huidige SSH-sessie oop totdat jy die nuwe instellings vanuit 'n tweede venster getoets het.

1. Skep 'n normale gebruiker met sudo

adduser deploy
usermod -aG sudo deploy

2. Gebruik SSH-sleutels in plaas van wagwoorde

Op jou eie rekenaar:

ssh-keygen -t ed25519 -C "you@example.com"
ssh-copy-id deploy@YOUR_SERVER_IP
ssh deploy@YOUR_SERVER_IP

Meld een keer aan met die sleutel om te bevestig dat dit werk voordat jy wagwoorde afskakel.

3. Skakel wagwoord- en root-aanmelding uit

Skep /etc/ssh/sshd_config.d/99-hardening.conf:

PasswordAuthentication no
PermitRootLogin no
PubkeyAuthentication yes
MaxAuthTries 3

Kontroleer die sintaksis en herlaai die diens. Die diens heet ssh op Ubuntu en Debian, en sshd op RHEL-gebaseerde stelsels:

sudo sshd -t && sudo systemctl reload ssh

Maak 'n tweede terminaal oop en meld weer aan. Sluit eers dan die ou sessie.

4. Aktiveer 'n firewall

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status verbose

Maak net die poorte oop wat jy nodig het, soos 80 en 443 vir 'n webbediener. Jy kan ook SSH beperk tot jou eie IP-adres met 'n firewallreël in die wolkkonsole.

5. Blokkeer herhaalde mislukkings met Fail2ban

sudo apt install -y fail2ban

Skep /etc/fail2ban/jail.local:

[sshd]
enabled = true
maxretry = 5
findtime = 10m
bantime = 1h
sudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd

6. Installeer sekuriteitsopdaterings outomaties

sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades

7. Opsionele bykomstighede

  • Om die SSH-poort te verander verminder logruis, maar dit is nie op sy own 'n sekuriteitsmaatreël nie.
  • Beskerm die private sleutel met 'n wagfrase en hou 'n rugsteun op 'n veilige plek.
  • Hersien aanmeldings met last en sudo journalctl -u ssh --since today.
  • Neem 'n momentopname sodra die bediener opgestel is, sodat jy 'n skoon basislyn kan herstel.

As jy uitgesluit is, gebruik die blaaierkonsole in jou wolkpaneel om aan te meld en die konfigurasie reg te stel. Ons DDoS-beskermingsgids dek die volgende laag van verdediging.

Gereelde vrae

Is dit veilig om root-aanmelding uit te skakel?

Ja, as jy eers 'n sudo-gebruiker skep en toets dat die sleutel daarvan werk. Jy kan steeds administratiewe opdragte met sudo uitvoer.

Het ek Fail2ban nodig as ek net sleutels gebruik?

Dit is opsioneel. Met wagwoordaanmelding afgeskakel kan brute force nie slaag nie, maar Fail2ban verminder logruis en belasting.

Wat as ek my SSH-sleutel verloor?

Gebruik die konsole in jou wolkpaneel om aan te meld, voeg 'n nuwe publieke sleutel by ~/.ssh/authorized_keys en verwyder die ou een.

Bronne en verdere lees

Meer VPS-gidse