Cum se protejează SSH cu fail2ban pe CentOS

Cuprins

Serverele nu există în mod izolat și majoritatea sunt instalate și personalizate, cu cea mai simplă configurație SSH care poate fi vulnerabilă la atacurile cu forță brută.
Instrumentul fail2ban oferă o modalitate de a proteja automat serverul de atacuri suspectate și software rău intenționat.
Programul funcționează prin scanarea fișierelor jurnal și ajută la reacția la acțiuni precum încercări repetate de conectare eșuate.
Vom începe prin instalarea fail2ban
Deoarece fail2ban nu este disponibil în CentOS, trebuie să începem prin descărcarea depozitului:
rpm- Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

Apoi instalăm fail2ban din linia de comandă cu următoarea comandă
instalează fail2ban

Copiem fișierul de configurare
Fișierul de configurare implicit fail2ban este locația din /etc/fail2ban/jail.conf. Cu toate acestea, nu ar trebui să se facă lucrări de configurare pentru acel fișier și ar trebui făcută o copie locală a acestuia, pentru backup.
cp / etc / fail2ban / jail.conf / etc / fail2ban / jail.local

Odată ce fișierul este copiat, putem face toate modificările în noul fișier jail.local. Multe dintre serviciile posibile care ar putea avea nevoie de protecție sunt în acest fișier deja preconfigurat. Fiecare este în propria secțiune, configurată și oprită.
Setați valorile implicite la Jail.Local
Deschideți noul fișier de configurare fail2ban:
 vi / etc / fail2ban / jail.local 

Prima secțiune a setărilor implicite acoperă regulile de bază pe care le va respecta fail2ban. Dacă doriți să configurați o protecție mai personalizată pentru serverul dvs. privat virtual, puteți personaliza detaliile fiecărei secțiuni.
Puteți vedea secțiunea implicită câteva detalii precum următoarele.
 [DEFAULT] # „Ignoreip” poate fi o adresă IP, o mască CIDR sau o gazdă DNS. Fail2ban nu va # Interzice un șir care se potrivește cu o adresă din această listă. Mai multe adrese pot fi #define prin separator de spațiu. ignoreip = 127.0.0.1 # „Bantime” este numărul de secunde pe care o gazdă i se interzice accesul sau este interzisă. bantime = 3600 # Timpul în secunde în care o gazdă va fi blocată dacă face un număr maxim de interogări eșuate findtime = 600 # „Maxretry” este numărul de eșecuri permise înainte de a fi interzis. maxretry = 3 

Introduceți adresa dvs. IP pe linia personală ignoreip. Puteți separa fiecare adresă cu un spațiu. IgnoreIP va afișa pe lista albă anumite adrese IP și se va asigura că nu sunt lăsate în afara VPS-ului dvs. Includerea adresei dvs. vă va asigura că nu vă interziceți din greșeală de pe propriul dvs. server virtual virtual.
Următorul pas este de a decide asupra unui timp de interzicere, numărul de secunde în care o gazdă este blocată de pe server dacă încalcă oricare dintre reguli. Acest lucru este util mai ales în cazul roboților, care odată ce accesul este interzis, vor trece pur și simplu la următoarea țintă. Valoarea implicită este de 10 minute, puteți ridica acest lucru la o oră, dacă doriți.
Maxretry este numărul de încercări incorecte de acces pe care le poate avea o gazdă înainte ca încercările sale de acces să fie interzise pe durata timpului de interzicere.
Timpul de căutare se referă la cantitatea de timp pe care o gazdă trebuie să o introducă, valoarea implicită este de 10 minute, ceea ce înseamnă că, dacă se încearcă accesarea unei gazde la un server și nu reușește, să se conecteze mai mult decât suma maximă de 3 ori în cele 10 minute desemnate, adresa IP va fi blocată și nu veți putea accesa.
Configurați secțiunea ssh - iptables în Jail.Local
Secțiunea de detalii SSH este puțin mai jos în setări și este deja instalată și activată. Deși nu ar trebui să vi se solicite să faceți modificări în această secțiune, puteți găsi detalii despre fiecare linie mai jos.
 [ssh - iptables] activat = true filter = sshd action = iptables [nume = SSH, port = ssh, protocol = tcp] sendmail-whois [nume = SSH, dest = root, [email protected]] logpath = / var / log / securitate maxretry = 5

Activat se referă pur și simplu la faptul că protecția SSH este activată. O puteți dezactiva cu cuvântul fals.
Filtrul, pe care îl utilizați în mod implicit pentru sshd, se referă la fișierul de configurare care conține regulile pe care fail2banuses le utilizează pentru a găsi potriviri. Numele este o versiune scurtată a extensiei de fișier. De exemplu, sshd se referă la /etc/fail2ban/filter.d/sshd.conf
Acțiune, descrie pașii pe care fail2ban îi va face pentru a interzice o adresă IP potrivită. La fel ca intrarea filtrului, fiecare acțiune se referă la un fișier din directorul action.d. Acțiunea de interzicere implicită, iptable, poate fi găsită în /etc/fail2ban/action.d/iptables.conf
În iptables, puteți personaliza în continuare fail2ban. De exemplu, dacă utilizați un port non-standard, puteți schimba numărul portului dintre paranteze la înălțime, făcând linia de vedere aceeași familie:
de exemplu . iptables [nume = SSH, port = 30000, protocol = tcp]
Puteți schimba protocolul de la TCP la UDP și pe această linie, în funcție de care doriți să monitorizeze fail2ban.
Dacă aveți un server de mail configurat pe serverul dvs. privat virtual, fail2ban vă poate trimite un e-mail când o adresă IP este interzisă. În cazul ocolirii, sendmail-whois se referă la acțiunile aflate în / etc / fail2ban / action.d / sendmail-whois.conf.
calea jurnalului se referă la locația jurnalului pe care fail2ban îl va urmări.
Linia de reîncercare maximă din secțiunea SSH are aceeași definiție ca și opțiunea implicită. Cu toate acestea, dacă un serviciu a fost activat și doriți să aveți valori specifice pentru fiecare dintre ele, puteți seta aici noua cantitate maximă de reîncercare pentru SSH.
Reporniți fail2ban
După ce ați făcut modificări la configurația fail2ban, asigurați-vă întotdeauna că reporniți fail2ban:
sudo reporniți serviciul fail2ban

Puteți vedea regulile pe care fail2ban le pune în aplicare în tabelul IP:
iptables- L
V-a plăcut și ați ajutat acest tutorial?Puteți recompensa autorul apăsând acest buton pentru a-i oferi un punct pozitiv

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave