![Bloc de note complet nou în Windows 11](/f/9b023e710883c14e7c41987542d86c64.png?width=100&height=100)
Îmbunătățirea securității serverului dvs. ar trebui să fie una dintre prioritățile dvs. principale atunci când vine vorba gestionarea unui server Linux. Prin examinarea jurnalelor serverului dvs., puteți găsi adesea diferite încercări de conectare cu forță brută, inundații web, căutare de exploatare și multe altele.
Cu un software de prevenire a intruziunilor precum fail2ban, puteți examina jurnalele serverului și puteți adăuga reguli iptables suplimentare pentru a bloca adresele IP problematice.
Citește și: Cum se instalează Fail2Ban pentru a proteja SSH pe CentOS / RHEL 8
Acest tutorial vă va arăta cum să instalați fail2ban și configurați configurația de bază pentru a vă proteja sistemul Linux de atacurile cu forță brută.
Fail2ban este scris în python și singura cerință este să ai python instalat:
Instalarea fail2ban este relativ ușor:
Mai întâi, actualizați-vă pachetele, activați Epel depozitare și instalare fail2ban așa cum se arată.
# yum actualizare. # yum instala epel-release. # yum install fail2ban.
Mai întâi, actualizați pachetele și instalați fail2ban așa cum se arată.
# apt-get update && apt-get upgrade -y. # apt-get install fail2ban.
Opțional, dacă doriți să activați asistența prin e-mail (pentru notificări prin e-mail), puteți instala sendmail.
# yum install sendmail [Activat CentOS / RHEL] # apt-get install sendmail-bin sendmail [ActivatDebian / Ubuntu]
Pentru a permite fail2ban și sendmail utilizați următoarele comenzi:
# systemctl start fail2ban. # systemctl activate fail2ban. # systemctl începe sendmail. # systemctl activează sendmail.
În mod implicit, fail2ban folosește .conf
fișiere aflate în /etc/fail2ban/ care se citesc mai întâi. Cu toate acestea, acestea pot fi anulate de .local
fișiere aflate în același director.
Astfel, .local
fișierul nu trebuie să includă toate setările din .conf
fișier, dar numai pe cele pe care doriți să le suprascrieți. Ar trebui făcute modificări în .local
fișiere, nu în .conf
. Acest lucru va preveni modificările de suprascriere la actualizarea pachetului fail2ban.
În scopul acestui tutorial, vom copia cele existente fail2ban.conf trimiteți la fail2ban.local.
# cp /etc/fail2ban/fail2ban.conf /etc/fail2ban/fail2ban.local.
Acum puteți efectua modificările în .local
fișier utilizând editorul de text preferat. Valorile pe care le puteți edita sunt:
Unul dintre cele mai importante fișiere din fail2ban este închisoare.conf
care îți definește închisorile. Aici definiți serviciile pentru care fail2ban ar trebui activat.
După cum am menționat mai devreme .conf
fișierele pot fi modificate în timpul actualizărilor, astfel ar trebui să creați un fișier închisoare.local în care puteți aplica modificările.
O altă modalitate de a face acest lucru este să copiați pur și simplu fișierul .conf fișier cu:
# cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local.
În cazul în care utilizați CentOS sau Fedora, va trebui să schimbați backend în închisoare.local din "auto" la „Systemd”.
Dacă utilizați Ubuntu / Debian, nu este necesar să faceți această modificare, chiar dacă și ei folosesc systemd.
Fișierul închisorii va activa SSH în mod implicit pentru Debian și Ubuntu, dar nu pe CentOS. Dacă doriți să o activați, pur și simplu schimbați următoarea linie în /etc/fail2ban/jail.local:
[sshd] enabled = adevărat.
Puteți configura circumstanța după care o adresă IP este blocată. Pentru acel scop, fail2ban utilizări bantime, găsește timp și maxretry.
Desigur, veți dori să adăugați pe lista albă anumite adrese IP. Pentru a configura astfel de adrese IP deschise /etc/fail2ban/jail.local cu editorul de text preferat și decomentați următoarea linie:
ignoreip = 127.0.0.1/8:: 1.
Apoi, puteți pune adresele IP pe care doriți să le ignorați. Adresele IP trebuie separate de spațiu sau virgulă.
Dacă doriți să primiți alerte prin e-mail la eveniment, va trebui să configurați următoarele setări în /etc/fail2ban/jail.local:
Implicit mta (agent de transfer poștal) este setat sa sendmail.
Pentru a primi notificări prin e-mail, va trebui, de asemenea, să modificați fișierul "acțiune" setare din:
Acțiune =% (acțiune_) s.
La una dintre acestea:
acțiune =% (action_mw) s. acțiune =% (action_mwl) s.
Până acum ne-am uitat la opțiunile de configurare de bază. Dacă doriți să configurați o închisoare, va trebui să o activați în închisoare.local fişier. Sintaxa este destul de simplă:
[jail_to_enable]... enabled = adevărat.
Unde ar trebui să înlocuiți jail_to_enable cu închisoarea propriu-zisă, de exemplu, „Sshd”. În închisoare.local fișier, următoarele valori vor fi predefinite pentru serviciul ssh:
[sshd] port = ssh. logpath =% (sshd_log) s.
Puteți activa filtrul care vă va ajuta să identificați dacă o linie din jurnal este una eșuată. Valoarea filtrului este de fapt o referință la un fișier cu numele serviciului urmat de .conf. De exemplu: /etc/fail2ban/filter.d/sshd.conf.
Sintaxa este:
filtru = serviciu.
De exemplu:
filter = sshd.
Puteți examina filtrele existente în următorul director: /etc/fail2ban/filter.d/.
Fail2ban vine cu un client care poate fi utilizat pentru revizuirea și modificarea configurației curente. Deoarece oferă multe opțiuni, puteți parcurge manualul său cu:
# om fail2ban-client
Aici veți vedea câteva dintre comenzile de bază pe care le puteți utiliza. Pentru a revizui starea actuală a fail2ban sau pentru închisoare specifică, puteți utiliza:
# fail2ban-statutul clientului.
Rezultatul va arăta similar cu acesta:
Pentru închisoarea individuală, puteți rula:
# fail2ban-client status sshd.
În captura de ecran de mai jos, veți vedea că am eșuat în mod intenționat mai multe conectări, astfel încât fail2ban poate bloca adresa IP de la care încercam să mă conectez:
Fail2ban este un sistem excelent, bine documentat, de prevenire a intruziunilor, care oferă o securitate suplimentară sistemului dvs. Linux. Este nevoie de ceva timp pentru a vă obișnui cu configurarea și sintaxa sa, dar odată ce vă familiarizați cu aceasta, vă veți simți liber să schimbați și să extindeți regulile sale.