Biztonság
SSH biztonság beállítása
SSH kulcs alapú hitelesítés, jelszavas auth kikapcsolása, portváltás és Fail2Ban védelem HestiaCP szerveren.
Miért fontos az SSH biztonság?
Az SSH a szerver elsődleges adminisztrációs kapuja. Ha az SSH nincs megfelelően biztonságossá téve, brute-force támadók másodpercenként próbálgathatják a különféle jelszó-kombinációkat. A jelszavas SSH hitelesítés önmagában nem elég biztonságos – a kulcs alapú hitelesítés az ajánlott megoldás.
SSH kulcs alapú hitelesítés beállítása
- Kulcspár generálása a kliensen (a saját gépeden, nem a szerveren!): generálj egy modern ED25519 kulcspárt.
- Publikus kulcs másolása a szerverre: az
ssh-copy-idparancs bemásolja a publikus kulcsot a szerver~/.ssh/authorized_keysfájljába. - Kulcsos bejelentkezés tesztelése: még a jelszavas auth kikapcsolása előtt ellenőrizd, hogy a kulcsos belépés működik!
- Jelszavas hitelesítés kikapcsolása az
/etc/ssh/sshd_configfájlban. - SSH daemon újraindítása a változtatások alkalmazásához.
1. Kulcspár generálása (kliensen)
bash
# ED25519 kulcspár generálása (ajánlott, modern algoritmus)
ssh-keygen -t ed25519 -C "szerver-admin"
# RSA kulcspár (régebbi rendszerekkel kompatibilis, 4096 bit)
ssh-keygen -t rsa -b 4096 -C "szerver-admin"2. Publikus kulcs másolása a szerverre
bash
ssh-copy-id root@SZERVER-IP
# Ha nem az alapértelmezett 22-es portot használja az SSH:
ssh-copy-id -p 2222 root@SZERVER-IP3. Kulcsos bejelentkezés tesztelése
bash
# Belépés tesztelése – ha jelszó nélkül megy, működik a kulcsos auth
ssh root@SZERVER-IP
# Vagy verbose móddal a részletekért:
ssh -v root@SZERVER-IP4. sshd_config módosítása
A szerveren szerkeszd az SSH konfigurációs fájlt:
bash
nano /etc/ssh/sshd_configMódosítsd vagy add hozzá a következő sorokat:
text
# Jelszavas hitelesítés KIKAPCSOLVA
PasswordAuthentication no
# Root belépés csak kulccsal engedélyezett (jelszóval tiltott)
PermitRootLogin prohibit-password
# Üres jelszavak tiltása
PermitEmptyPasswords no
# X11 forwarding kikapcsolása (ha nem kell)
X11Forwarding noFONTOS: A
PasswordAuthentication no beállítást CSAK akkor kapcsold be, ha már meggyőződtél arról, hogy a kulcsos hitelesítés működik! Ha jelszavas auth kikapcsolod és a kulcs nem működik, kizárod magad a szerverről, és csak VNC konzolon vagy a hoszting rescue módján tudsz visszajutni.5. SSH daemon újraindítása
bash
systemctl restart sshd
# Ellenőrzés: az SSH fut-e?
systemctl status sshdSSH port megváltoztatása (opcionális)
Az SSH port 22-ről más portra váltása nem növeli érdemben a biztonságot, de jelentősen csökkenti az automatikus brute-force botok általi próbálkozások számát a naplókban. Ha portot váltasz, ne felejtsd el a tűzfalban is megnyitni az új portot és bezárni a 22-est!
text
# /etc/ssh/sshd_config - portváltás
Port 2222bash
# Új port megnyitása a tűzfalban
v-add-firewall-rule ACCEPT tcp 2222
# SSH újraindítása
systemctl restart sshd
# Régi 22-es port bezárása a tűzfalban (csak UTÁNA!)
# v-delete-firewall-rule [régi szabály ID]Fail2Ban és SSH: A Fail2Ban alapból védi az SSH-t az
sshd jail-lel. Ellenőrizd, hogy aktív-e: fail2ban-client status sshd. Ha portot váltottál, a /etc/fail2ban/jail.local fájlban frissítsd az SSH port beállítást is: [sshd]\nport = 2222