CentOS/RHEL 8-de SSH-ni goramak üçin Fail2Ban-y nädip gurmaly


Fail2ban erkin, açyk çeşme we giňden ulanylýan çozuşyň öňüni alyş guraly bolup, parol näsazlyklary ýaly zyýanly alamatlary görkezýän IP adresleri üçin faýllary skanirleýär we olary gadagan edýär (IP adreslerini ret etmek üçin firewall düzgünlerini täzeleýär) . Düzgüne görä, sshd ýaly dürli hyzmatlar üçin süzgüçler bilen iberilýär.

Bu makalada SSH-ni goramak we CentOS/RHEL 8-de gazaply hüjümlerden SSH serweriniň howpsuzlygyny gowulandyrmak üçin fail2ban-y nädip gurmalydygyny we sazlamalydygyny düşündireris.

CentOS/RHEL 8-de Fail2ban gurmak

“Fail2ban” bukjasy resmi ammarlarda däl, ýöne EPEL ammarynda bar. Ulgamyňyza gireniňizden soň, buýruk setiriniň interfeýsine giriň, soňra görkezilişi ýaly ulgamyňyzdaky EPEL ammaryny işlediň.

# dnf install epel-release
OR
# dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Ondan soň, aşakdaky buýrugy işledip, Fail2ban paketini guruň.

# dnf install fail2ban

SSH-ni goramak üçin Fail2ban sazlamak

Fail2ban konfigurasiýa faýllary/etc/fail2ban/katalogynda ýerleşýär we süzgüçler /etc/fail2ban/filter.d/ katalogynda saklanýar (sshd üçin süzgüç faýly /etc/fail2ban/filter.d/sshd.conf) .

“Fail2ban” serweri üçin global konfigurasiýa faýly /etc/fail2ban/jail.confdyr, ýöne bu faýly gönüden-göni üýtgetmek maslahat berilmeýär, sebäbi geljekde bukjanyň täzelenmegi ähtimal ýazylar ýa-da gowulaşar.

Muňa alternatiw hökmünde, konfigurasiýalaryňyzy türme.local faýlyna döretmek ýa-da /etc/fail2ban/jail.d/ bukjasynyň aşagyndaky .conf faýllaryny döretmek we goşmak maslahat berilýär. Türme.local-da düzülen konfigurasiýa parametrleriniň türme.conf-da kesgitlenenleriň hemmesini ýok etjekdigine üns beriň.

Bu makala üçin görkezilişi ýaly/etc/fail2ban/katalogynda prison.local atly aýratyn faýl dörederis.

# vi /etc/fail2ban/jail.local

Faýl açyk bolansoň, aşakdaky konfigurasiýany göçüriň we göçüriň. [DEFAULT] bölüminde global opsiýalar we [sshd] sshd türmesiniň parametrleri bar.

[DEFAULT] 
ignoreip = 192.168.56.2/24
bantime  = 21600
findtime  = 300
maxretry = 3
banaction = iptables-multiport
backend = systemd

[sshd] 
enabled = true

Aboveokardaky konfigurasiýadaky wariantlary gysgaça düşündireliň:

  • ignoreip: gadagan etmezlik üçin IP adresleriň ýa-da atlaryň sanawyny görkezýär.
  • nahar wagty: öý eýesiniň gadagan edilen sekunt sanyny kesgitledi (ýagny täsirli gadaganlygyň dowamlylygy).
  • maxretry: öý eýesi gadagan edilmezden ozal näsazlyklaryň sanyny kesgitleýär.
  • findtime: fail2ban soňky gözleg wagty sekuntda maxretry döreden bolsa, öý eýesini gadagan eder.
  • gadaganlyk: hereketi gadagan etmek.
  • arkasy: gündelik faýly üýtgetmek üçin ulanylýan arka tarapy kesgitleýär.

Şonuň üçin ýokardaky konfigurasiýa, soňky 5 minutda bir IP 3 gezek şowsuz bolsa, 6 sagatlap gadagan ediň we IP adresini 192.168.56.2 äsgermezlik edýär.

Ondan soň, “fail2ban” hyzmatyny şu wagt başlaň we işlediň we aşakdaky systemctl buýrugy bilen işleýändigini ýa-da işlemeýändigini barlaň.

# systemctl start fail2ban
# systemctl enable fail2ban
# systemctl status fail2ban

Fail2ban-müşderi ulanyp, şowsuz we gadagan IP adrese gözegçilik

Sshd-ni goramak üçin fail2ban sazlansoň, şowsuz2ban-müşderi ulanyp, şowsuz we gadagan IP adreslerine gözegçilik edip bilersiňiz. Fail2ban serweriniň häzirki ýagdaýyny görmek üçin aşakdaky buýrugy işlediň.

# fail2ban-client status

Sshd türmesine gözegçilik etmek üçin ylga.

# fail2ban-client status sshd

Fail2ban (ähli türmelerde we maglumatlar bazasynda) IP adresini açmak üçin aşakdaky buýrugy işlediň.

# fail2ban-client unban 192.168.56.1

Fail2ban hakda has giňişleýin maglumat üçin aşakdaky adam sahypalaryny okaň.

# man jail.conf
# man fail2ban-client

Bu gollanmany jemleýär! Bu mowzuk hakda paýlaşmak isleýän soraglaryňyz ýa-da pikirleriňiz bar bolsa, aşakdaky seslenme formasy arkaly bize ýüz tutuň.