Zabezpečení VPS: SSH klíče, firewall a fail2ban
Základní zabezpečení VPS s Debianem nebo Ubuntu: SSH klíče, zákaz hesel, firewall ufw, fail2ban a automatické bezpečnostní aktualizace.
Každý server s veřejnou IP adresou během chvíle začnou zkoušet automatické boty. Pár základních kroků ale VPS zabezpečí velmi dobře. Návod je pro Debian a Ubuntu.
1. Vytvoř SSH klíč
Na svém počítači (Windows PowerShell, macOS i Linux) vygeneruj klíč:
ssh-keygen -t ed25519
Klíč se uloží do složky .ssh v tvém domovském adresáři. Veřejnou část (id_ed25519.pub) nahraj na server. Na macOS a Linuxu:
ssh-copy-id root@IP_ADRESA_VPS
Na Windows obsah souboru id_ed25519.pub zkopíruj a na serveru ho vlož na nový řádek do ~/.ssh/authorized_keys.
2. Zakaž přihlášení heslem
Než hesla vypneš, ověř v novém okně, že se přihlásíš klíčem. Původní relaci nech otevřenou, dokud vše neotestuješ – jinak si můžeš zablokovat přístup.
Otevři konfiguraci SSH serveru (případně vytvoř soubor v /etc/ssh/sshd_config.d/):
nano /etc/ssh/sshd_config
Nastav tyto hodnoty:
PasswordAuthentication no
PermitRootLogin prohibit-password
Zkontroluj konfiguraci a restartuj SSH (služba se obvykle jmenuje ssh, na některých systémech sshd):
sshd -t
systemctl restart ssh
3. Firewall ufw
apt install ufw -y
ufw allow OpenSSH
ufw enable
ufw status
Pokud SSH běží na jiném portu, povol místo OpenSSH konkrétní port, např. ufw allow 2222/tcp. Další porty otevírej až podle potřeby (web: ufw allow 80,443/tcp).
Docker publikuje porty kontejnerů mimo pravidla ufw. Pokud ho používáš, počítej s tím – viz Instalace Dockeru.
4. fail2ban
fail2ban sleduje neúspěšná přihlášení a útočící IP adresy dočasně blokuje:
apt install fail2ban -y
Vytvoř soubor /etc/fail2ban/jail.local:
[sshd]
enabled = true
backend = systemd
maxretry = 5
bantime = 1h
systemctl enable --now fail2ban
fail2ban-client status sshd
5. Automatické bezpečnostní aktualizace
apt install unattended-upgrades -y
dpkg-reconfigure -plow unattended-upgrades
V dialogu potvrď Yes. Systém pak bude bezpečnostní záplaty instalovat sám. Ruční apt upgrade občas spusť i tak.
Ještě nejsi připojený? Začni návodem První připojení přes SSH.
Pořád si nevíš rady? Rádi pomůžeme.