1. Schimbați-vă sshd
portul de ascultare
Oricât de simplu pare, schimbarea portului din valoarea implicită 22
la o valoare personalizată (de ex. 2200
) pe un IP public ar putea reduce numărul de scanări de porturi de la mii pe zi la câteva zeci. Pentru un tutorial vezi Aici.
Acestea fiind spuse, deși acest lucru reduce supărarea de a fi scanat prin port, acesta NU oferi o securitate reală. „Securitatea prin obscuritate” este un mit și nimic mai mult.
2. Utilizați autentificarea cu cheia publică și dezactivați autentificarea prin parolă
Boții ar putea ghici corect o parolă, dar sunt nu o să ghicesc corect o cheie privată. Atâta timp cât folosiți algoritmi moderni și nu vă scurgeți cheia accidental. Pentru un tutorial vezi Aici.
Rețineți că acest lucru înseamnă că nu vă veți mai putea autentifica de la nicio mașină aleatorie, cu excepția cazului în care aveți cheia cu dvs. (pe care trebuie să o asigurați prin alt mod).
3. Utilizați fail2ban
Dacă eșuează de 5 ori, interziceți-le să încerce din nou pentru o zi sau ceva. Asta le va arăta. Foarte eficient împotriva încercărilor de forță brută. Pentru un tutorial vezi Aici.
Dezavantajul este că s-ar putea să te blochezi dacă într-o zi ai degetele tremurătoare (beat sau ceva de genul ăsta, nu știu).
4. Interziceți înainte o listă de IP-uri cunoscute pentru utilizare abuzivă
Surse ca Abuz de IPDB menține liste mari de IP-uri rău intenționate cunoscute, accesibile prin API. Veți avea nevoie de o cheie API pentru ao utiliza, dar puteți înregistra un cont gratuit destul de ușor. Trageți lista și folosiți ceva de genul iptables
pentru a interzice acele IP-uri cunoscute în vrac. Configurați o lucrare cron pentru a o automatiza periodic pentru cel mai bun efect. Iată un script foarte simplu pe care l-am scris (și folosesc personal) să fac exact asta. Simțiți-vă liber să-l folosiți ca referință, dar NU-L FOLOSIȚI ÎN PRODUCȚIE.
Din experiența mea personală, această metodă este la fel de eficientă (dacă nu mai mult) ca metoda #3.
Personal, folosesc toate cele 4 metode enumerate mai sus, iar VPS-ul meu ar putea primi una sau două încercări de autentificare rău intenționate în jurnalul meu de securitate, într-o lună proastă. Iată istoricul interceptărilor iptables
prin metoda #4:
$ abip-hist
Lanț abip-ban (1 referințe)
pkts bytes target prot opt in out source destination
362 14480 DROP toate
307 12280 DROP toate
288 12672 DROP toate
277 19911 DROP all
250 11000 DROP toate
230 9200 DROP toate
215 8600 DROP toate
214 8560 DROP toate
202 8080 DROP toate
201 8040 DROP toate
199 7960 DROP toate
197 7880 DROP toate
197 7880 DROP toate
196 7840 DROP toate
196 7840 DROP toate
196 7840 DROP toate
189 7560 DROP toate
184 7360 DROP toate
184 7360 DROP toate
182 7280 DROP toate
181 7240 DROP toate
180 7200 DROP toate
176 7040 DROP toate
...
asta continuă pentru 1700 de linii...
$ timp de funcționare
06:36:49 până la 16 zile, 15:24