Kuidas installida Fail2Ban SSH kaitsmiseks saidil CentOS/RHEL 8
Fail2ban on tasuta avatud lähtekoodiga ja laialt kasutatav sissetungi vältimise tööriist, mis kontrollib logifaile IP-aadresside leidmiseks, mis näitavad pahatahtlikke märke, näiteks liiga palju paroolirikke ja palju muud, ning keelab need (värskendab tulemüüri reegleid IP-aadresside tagasilükkamiseks) . Vaikimisi tarnitakse filtrid erinevatele teenustele, sealhulgas sshd.
Selles artiklis selgitame, kuidas installida ja konfigureerida fail2ban, et kaitsta SSH-d ja parandada SSH-serveri turvalisust jõhkrate rünnakute vastu CentOS/RHEL 8-le.
Fail2bani installimine CentOS/RHEL 8-le
Pakett fail2ban pole ametlikes hoidlates, kuid see on saadaval EPEL-i hoidlas. Pärast oma süsteemi sisselogimist avage käsurea liides ja lubage oma süsteemis EPEL-hoidla, nagu näidatud.
# dnf install epel-release OR # dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Seejärel installige Fail2bani pakett, käivitades järgmise käsu.
# dnf install fail2ban
Fail2bani konfigureerimine SSH kaitsmiseks
Fail2bani konfiguratsioonifailid asuvad kataloogis/etc/fail2ban/ja filtrid salvestatakse kataloogi /etc/fail2ban/filter.d/ (sshd filtrifail on /etc/fail2ban/filter.d/sshd.conf) .
Fail2bani serveri üldine konfiguratsioonifail on /etc/fail2ban/jail.conf, kuid seda faili ei ole soovitatav otseselt muuta, sest tulevikus paketi uuendamise korral kirjutatakse see tõenäoliselt üle või täiustatakse.
Alternatiivina on soovitatav luua ja lisada oma konfiguratsioonid faili jail.local või eraldada failid .conf
kataloogi /etc/fail2ban/jail.d/ alla. Pange tähele, et jail.local seadistatud konfiguratsiooniparameetrid alistavad kõik, mis on defineeritud jail.conf-is.
Selle artikli jaoks loome kataloogi/etc/fail2ban/kataloogi eraldi faili nimega jail.local, nagu näidatud.
# vi /etc/fail2ban/jail.local
Kui fail on avatud, kopeerige ja kleepige sinna järgmine konfiguratsioon. Jaotis [DEFAULT]
sisaldab üldisi valikuid ja [sshd]
sisaldab sshd vangla parameetreid.
[DEFAULT] ignoreip = 192.168.56.2/24 bantime = 21600 findtime = 300 maxretry = 3 banaction = iptables-multiport backend = systemd [sshd] enabled = true
Selgitame lühidalt ülaltoodud konfiguratsioonis olevaid valikuid:
- ignoreip: määrab keelatavate IP-aadresside või hostinimede loendi.
- bantime: täpsustas sekundite arvu, milleks host on keelatud (st tegeliku keelamise kestus).
- maxretry: määrab rikete arvu enne hosti keelamist.
- findtime: fail2ban keelab hosti, kui see on viimase "findtime" sekundi jooksul genereerinud "maxretry".
- keeldumine: tegevuse keelamine.
- taustaprogramm: määrab logifaili muutmiseks kasutatud taustaprogrammi.
Seega tähendab ülaltoodud konfiguratsioon, kui IP on viimase 5 minuti jooksul 3 korda ebaõnnestunud, keelake see 6 tunniks ja eirake IP-aadressi 192.168.56.2.
Järgmisena käivitage ja lubage fail2ban-teenus praegu ning kontrollige järgmise käsu systemctl abil, kas see töötab ja töötab.
# systemctl start fail2ban # systemctl enable fail2ban # systemctl status fail2ban
Ebaõnnestunud ja keelatud IP-aadressi jälgimine fail2ban-kliendi abil
Pärast fail2bani konfigureerimist sshd-i turvaliseks muutmiseks võite nurjunud ja keelatud IP-aadresse jälgida fail2ban-kliendi abil. Fail2bani serveri praeguse oleku kuvamiseks käivitage järgmine käsk.
# fail2ban-client status
Sshd vangla jälgimiseks käivitage.
# fail2ban-client status sshd
IP-aadressi tühistamiseks fail2banis (kõigis vanglates ja andmebaasis) käivitage järgmine käsk.
# fail2ban-client unban 192.168.56.1
Fail2bani kohta lisateabe saamiseks lugege järgmisi man-lehti.
# man jail.conf # man fail2ban-client
See võtab selle juhendi kokku! Kui teil on selle teema kohta küsimusi või mõtteid, võtke meiega ühendust allpool oleva tagasisidevormi kaudu.