Giunsa ang Pag-install sa Fail2ban sa Rocky Linux ug AlmaLinux


Gisulat sa Python, ang Fail2ban usa ka libre ug open-source nga Intrusion Prevention System (IPS) nga nanalipod sa server batok sa brute-force attacks.

Human sa usa ka espesipikong gidaghanon sa sayop nga pagsulay sa password, ang IP address sa kliyente gidid-an sa pag-access sa sistema sulod sa usa ka piho nga panahon o hangtud nga ang administrador sa sistema mag-unblock niini. Niining paagiha, ang sistema gipanalipdan gikan sa balik-balik nga brute-force nga mga pag-atake gikan sa usa ka host.

[ Tingali ganahan ka usab: Unsaon Pagsiguro ug Paggahi sa OpenSSH Server ]

Ang Fail2ban kay ma-configurable kaayo ug ma-set up para ma-secure ang daghang serbisyo sama sa SSH, vsftpd, Apache, ug Webmin.

Sa kini nga giya, nagpunting kami kung giunsa nimo ma-install ug ma-configure ang Fail2ban sa Rocky Linux ug AlmaLinux.

Lakang 1: Siguruha nga ang Firewalld Nagdagan

Sa kasagaran, ang Rocky nag-uban sa Firewalld nga nagdagan. Bisan pa, kung dili kini ang kaso sa imong sistema, sugdi ang Firewalld pinaagi sa pagpatuman:

$ sudo systemctl start firewalld

Dayon himoa kini nga magsugod sa oras sa pag-boot:

$ sudo systemctl enable firewalld

Unya pamatud-i ang kahimtang sa Firewalld

$ sudo systemctl status firewalld

Dugang pa, mahimo nimong kumpirmahon ang tanan nga mga lagda sa Firewalld nga gipatuman karon gamit ang mando:

$ sudo firewall-cmd --list-all

Lakang 2: I-install ang EPEL sa Rocky Linux

Isip usa ka kinahanglanon alang sa pag-instalar sa fail2ban ug uban pang gikinahanglan nga mga pakete, kinahanglan nimo nga i-install ang EPEL repository nga naghatag og dugang nga de-kalidad nga mga pakete alang sa RHEL-based distributions.

$ sudo dnf install epel-release

Lakang 3: I-install ang Fail2ban sa Rocky Linux

Sa pag-instalar sa EPEL, ipadayon ug i-install ang fail2ban ug ang fail2ban-firewalld nga pakete.

$ sudo dnf install fail2ban fail2ban-firewalld

Gi-install niini ang fail2ban server ug ang sangkap sa firewalld kauban ang uban pang mga dependency.

Sa pagkompleto sa pag-instalar sa fail2ban, pagsugod sa serbisyo sa fail2ban.

$ sudo systemctl start fail2ban

Ug himoa kini nga magsugod sa oras sa pag-boot.

$ sudo systemctl enable fail2ban

Mahimo nimong pamatud-an ang kahimtang sa serbisyo sa fail2ban pinaagi sa pagpadagan sa mando:

$ sudo systemctl status fail2ban

Ang output usa ka kumpirmasyon nga ang Fail2ban nagdagan sama sa among gipaabut.

Lakang 4: Pag-configure sa Fail2ban sa Rocky Linux

Sa pagpadayon, kinahanglan natong i-configure ang fail2ban aron kini molihok sama sa gituyo. Maayo na lang, usbon namo ang nag-unang configuration file - /etc/fail2ban/jail.conf. Apan, kini nawad-an sa kadasig. Ingon sa usa ka workaround kopyahon ang mga sulod sa jail.conf configuration file ngadto sa jail.local file.

$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Karon, ablihi ang jail.local file gamit ang imong gusto nga editor.

$ sudo vim /etc/fail2ban/jail.local

Ubos sa seksyon nga [DEFAULT], siguroha nga naa nimo ang mosunod nga mga setting kung kini makita.

bantime = 1h
findtime = 1h
maxretry = 5

Atong ipasabut ang mga hiyas:

  • Ang bantime nga direktiba nagtino sa gidugayon sa panahon nga ang usa ka kliyente idili human sa napakyas nga pagsulay sa pag-authenticate.
  • Ang direktiba sa pagpangita sa oras mao ang gidugayon o yugto diin ang fail2ban makonsiderar kung gikonsiderar ang gibalikbalik nga sayup nga pagsulay sa password.
  • Ang maxretry nga parametro mao ang pinakataas nga gidaghanon sa sayop nga pagsulay sa password sa dili pa ang layo nga kliyente babagan sa pag-access sa server. Dinhi, ang kliyente ma-lock out human sa 5 ka kapakyasan sa pag-authenticate.

Sa kasagaran, ang fail2ban nagtrabaho sa mga iptables. Bisan pa, kini wala na gigamit pabor sa firewalld. Kinahanglan namon nga i-configure ang fail2ban aron magtrabaho kauban ang firewalld imbes sa mga iptables.

Busa, pagdagan uban ang mando:

$ sudo mv /etc/fail2ban/jail.d/00-firewalld.conf /etc/fail2ban/jail.d/00-firewalld.local

Aron magamit ang mga pagbag-o, i-restart ang fail2ban:

$ sudo systemctl restart fail2ban

Lakang 5: Pagsiguro sa serbisyo sa SSH gamit ang Fail2ban

Sa kasagaran, ang fail2ban dili makababag sa bisan unsang hilit nga host hangtod nga mahimo nimo ang pag-configure sa prisohan alang sa usa ka serbisyo nga gusto nimo masiguro. Ang configuration sa prisohan gitakda sa /etc/fail2ban/jail.d nga dalan ug i-override ang configuration nga gipiho sa jail.local file.

Sa kini nga pananglitan, maghimo kami usa ka file sa pagsumpo sa bilanggoan aron mapanalipdan ang serbisyo sa SSH. Busa, paghimo sa SSH jail file.

$ sudo vim /etc/fail2ban/jail.d/sshd.local

Sunod, idikit ang mosunod nga mga linya:

[sshd]
enabled = true

# Override the default global configuration
# for specific jail sshd
bantime = 1d
maxretry = 3

Sa configuration sa ibabaw, ang usa ka hilit nga host pagdili sa pag-access sa sistema sulod sa 1 ka adlaw human sa 3 ka pakyas nga pagsulay sa pag-login sa SSH. I-save ang mga pagbag-o ug i-restart ang serbisyo sa fail2ban.

$ sudo systemctl restart fail2ban

Sunod, pamatud-i ang kahimtang sa pagsumpo sa bilanggoan gamit ang fail2ban-client command-line utility.

$ sudo fail2ban-client status

Gikan sa output, atong makita nga kita adunay 1 ka prisohan nga gi-configure para sa serbisyo nga gitawag og 'sshd'.

Dugang pa, mahimo nimong kumpirmahon ang maxretry nga kantidad sa sshd jail gamit ang kapilian nga makuha.

$ sudo fail2ban-client get sshd maxretry

3

Ang kantidad nga giimprinta nga 3 kinahanglan nga mohaum sa imong gipiho sa sshd.local file.

Lakang 6: Pagsulay sa Fail2ban Configuration

Human sa pag-set up sa fail2ban ug paghimo og jail configuration file alang sa SSH nga serbisyo, maghimo kami og test run ug mag-simulate sa 3 ka napakyas nga mga logins pinaagi sa pagpiho sa usa ka sayop nga password alang sa matag password prompt.

Busa pangadto sa usa ka hilit nga sistema sa Linux ug pagsulay sa pag-log in gamit ang sayup nga password. Human sa 3 ka pakyas nga mga pagsulay, ang koneksyon ihulog ug ang bisan unsang sunod nga pagsulay sa pagkonektar pag-usab mababagan hangtud nga ang gidugayon sa pagdili molapas.

Aron makolekta ang mga panabut sa mga sistema sa kliyente nga gibabagan susihon ang kahimtang sa bilanggoan.

$ sudo fail2ban-client status sshd

Aron i-unban o tangtangon ang kliyente gikan sa prisohan, ipatuman ang mando:

$ sudo fail2ban-client unban 192.168.2.102

Sa makausa pa, susiha ang kahimtang sa bilanggoan aron masiguro nga ang kliyente wala maapil sa gidili nga listahan sa IP.

$ sudo fail2ban-client status sshd

Sama sa among nakita, ang Fail2ban usa ka mapuslanon kaayo nga himan sa pagpugong sa mga manunulong nga nagtinguha sa paglapas sa imong sistema sa Linux. Naglihok kini kauban sa Firewalld aron idili ang mga sistema sa kliyente sa usa ka piho nga gidugayon pagkahuman sa usa ka piho nga gidaghanon sa napakyas nga pagsulay sa pag-login. Sa pagbuhat sa ingon, naghatag kini usa ka dugang nga layer sa proteksyon alang sa imong server sa Linux.