Jinsi ya kusakinisha Fail2Ban ili Kulinda SSH kwenye CentOS/RHEL 8


Fail2ban ni zana isiyolipishwa ya chanzo huria na inayotumika sana ya kuzuia uvamizi ambayo huchanganua faili za kumbukumbu kwa anwani za IP zinazoonyesha ishara hasidi kama vile hitilafu nyingi za nenosiri, na mengi zaidi, na inazipiga marufuku (husasisha sheria za ngome ili kukataa anwani za IP) . Kwa chaguo-msingi, husafirishwa na vichungi kwa huduma mbalimbali ikiwa ni pamoja na sshd.

Katika makala haya, tutaeleza jinsi ya kusakinisha na kusanidi fail2ban ili kulinda SSH na kuboresha usalama wa seva ya SSH dhidi ya mashambulizi ya nguvu kwenye CentOS/RHEL 8.

Inasakinisha Fail2ban kwenye CentOS/RHEL 8

Kifurushi cha fail2ban hakiko kwenye hazina rasmi lakini kinapatikana kwenye hazina ya EPEL. Baada ya kuingia kwenye mfumo wako, fikia kiolesura cha mstari amri, kisha uwashe hazina ya EPEL kwenye mfumo wako kama inavyoonyeshwa.

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

Baadaye, sakinisha kifurushi cha Fail2ban kwa kutekeleza amri ifuatayo.

# dnf install fail2ban

Inasanidi Fail2ban ili Kulinda SSH

Faili za usanidi za fail2ban ziko kwenye saraka ya /etc/fail2ban/ na vichujio huhifadhiwa kwenye saraka /etc/fail2ban/filter.d/ (faili ya kichujio cha sshd ni /etc/fail2ban/filter.d/sshd.conf) .

Faili ya usanidi ya kimataifa ya seva ya fail2ban ni /etc/fail2ban/jail.conf, hata hivyo, haipendekezwi kurekebisha faili hii moja kwa moja, kwani pengine itaandikwa au kuboreshwa iwapo kifurushi kitasasishwa katika siku zijazo.

Kama mbadala, inashauriwa kuunda na kuongeza usanidi wako katika faili ya jail.local au kutenganisha faili za .conf chini ya saraka /etc/fail2ban/jail.d/. Kumbuka kuwa vigezo vya usanidi vilivyowekwa katika jail.local vitabatilisha chochote kilichofafanuliwa katika jail.conf.

Kwa makala haya, tutaunda faili tofauti iitwayo jail.local katika saraka ya /etc/fail2ban/ kama inavyoonyeshwa.

# vi /etc/fail2ban/jail.local

Mara faili inapofunguliwa, nakili na ubandike usanidi ufuatao ndani yake. Sehemu ya [DEFAULT] ina chaguo za kimataifa na [sshd] ina vigezo vya jela ya sshd.

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

[sshd] 
enabled = true

Wacha tueleze kwa ufupi chaguzi katika usanidi hapo juu:

  • ignoreip: inabainisha orodha ya anwani za IP au majina ya wapangishaji ambayo hayapaswi kupigwa marufuku.
  • bantime: ilibainisha idadi ya sekunde ambazo mwenyeji amepigwa marufuku (yaani muda wa kupiga marufuku).
  • maxretry: hubainisha idadi ya kushindwa kabla ya mwenyeji kupigwa marufuku.
  • findtime: fail2ban itapiga marufuku seva pangishi ikiwa imetoa maxretry katika sekunde za mwisho za findtime.
  • makatazo: kupiga marufuku kitendo.
  • nyuma: inabainisha mazingira ya nyuma yanayotumika kupata urekebishaji wa faili ya kumbukumbu.

Kwa hivyo, usanidi ulio hapo juu unamaanisha ikiwa IP imeshindwa mara 3 katika dakika 5 zilizopita, piga marufuku kwa saa 6, na upuuze anwani ya IP 192.168.56.2.

Ifuatayo, anza na uwashe huduma ya fail2ban kwa sasa na uangalie ikiwa iko na inafanya kazi kwa kutumia amri ifuatayo ya systemctl.

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

Ufuatiliaji Umeshindwa na Umepigwa Marufuku Anwani ya IP Kwa kutumia fail2ban-client

Baada ya kusanidi fail2ban ili kupata sshd, unaweza kufuatilia anwani za IP ambazo hazijafanikiwa na zilizopigwa marufuku kwa kutumia fail2ban-client. Ili kuona hali ya sasa ya seva ya fail2ban, endesha amri ifuatayo.

# fail2ban-client status

Kufuatilia jela ya sshd, kimbia.

# fail2ban-client status sshd

Ili kufuta anwani ya IP katika fail2ban (katika jela zote na hifadhidata), endesha amri ifuatayo.

# fail2ban-client unban 192.168.56.1

Kwa habari zaidi juu ya fail2ban, soma kurasa zifuatazo za mtu.

# man jail.conf
# man fail2ban-client

Hiyo ni muhtasari wa mwongozo huu! Ikiwa una maswali au mawazo yoyote ungependa kushiriki kuhusu mada hii, usisite kuwasiliana nasi kupitia fomu ya maoni iliyo hapa chini.