Cum blocați atacuri brute force pe SSH în Linux. Blocarea atacurilor brute force pe SSH este esențială pentru siguranța oricărui server Linux.
Prin combinarea măsurilor prezentate de la schimbarea portului, utilizarea cheilor SSH și instalarea Fail2Ban, până la restricții firewall și monitorizare activă vă puteți asigura că accesul la serverul dumneavoastră rămâne controlat și protejat în fața amenințărilor externe.
Cum blocați atacuri brute force pe SSH
Atacurile brute force asupra serviciului SSH sunt printre cele mai frecvente amenințări cu care se confruntă serverele Linux expuse online.
Aceste atacuri presupun încercări repetate și automate de autentificare folosind combinații de nume de utilizator și parole.
În acest articol, veți învăța cum să protejați eficient serverul Linux împotriva acestor tentative printr-o serie de metode și bune practici.
1. Schimbarea portului SSH implicit
Portul standard SSH este 22. Schimbarea acestuia poate reduce semnificativ numărul de atacuri automate.
sudo nano /etc/ssh/sshd_config
Modificați linia:
Port 2222
Salvați fișierul și reporniți serviciul:
sudo systemctl restart ssh
2. Limitarea tentativelor de autentificare cu Fail2Ban
Fail2Ban monitorizează logurile și blochează temporar IP-urile care încearcă autentificări repetate eșuate.
Instalare:
sudo apt install fail2ban -y
Configurare simplă:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local sudo nano /etc/fail2ban/jail.local
Secțiunea pentru SSH ar trebui să arate astfel:
[sshd] enabled = true port = ssh filter = sshd logpath = /var/log/auth.log maxretry = 5 bantime = 3600
Repornire serviciu:
sudo systemctl restart fail2ban
3. Dezactivarea autentificării cu parolă
Autentificarea cu chei SSH este mult mai sigură decât parolele. După ce configurați cheia publică, dezactivați autentificarea pe bază de parolă:
sudo nano /etc/ssh/sshd_config
Modificați sau adăugați următoarele linii:
PasswordAuthentication no PermitRootLogin no
Reporniți SSH:
sudo systemctl restart ssh
4. Limitarea accesului SSH la IP-uri specifice
Pentru acces securizat, permiteți doar IP-uri de încredere:
sudo nano /etc/hosts.allow
Adăugați:
sshd: 192.168.1.100
sudo nano /etc/hosts.deny
Adăugați:
sshd: ALL
5. Utilizarea firewall-ului pentru restricții suplimentare
Folosind UFW (Uncomplicated Firewall):
sudo ufw allow 2222/tcp sudo ufw enable
Permiteți doar IP-uri specifice:
sudo ufw allow from 192.168.1.100 to any port 2222 proto tcp
6. Monitorizarea logurilor de autentificare
Pentru a detecta tentative de login brute force:
sudo grep "Failed password" /var/log/auth.log
Vizualizare în timp real:
sudo tail -f /var/log/auth.log
7. Utilizarea port knocking (avansat)
Port knocking este o metodă avansată de a ascunde portul SSH și de a-l deschide doar după o serie specifică de „bătăi” (cereri de conectare) pe anumite porturi.
Se poate implementa cu ajutorul utilitarului knockd.
8. Limitarea ratei de conexiune prin iptables
Blocarea conexiunilor repetate:
sudo iptables -A INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set sudo iptables -A INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP


Comments (0)