[32] Fail2ban

27 stycznia 2022 Wyłączono przez Adam [zicherka] Nogły

Fail2ban to usługa, która monitoruje pliki dziennika w celu wykrywania potencjalnych prób włamań i nakłada zakazy przy użyciu różnych metod.

[1] Przede wszystkim zainstaluj pakiet epel-release, aby skonfigurować repozytorium EPEL yum w systemie CentOS 8. Następnie zainstaluj pakiet rpm fail2ban za pomocą następujących poleceń.

[root@vlsr01 ~]# dnf install epel-release
[root@vlsr01 ~]# dnf install fail2ban

[2] Fail2ban trzyma pliki konfiguracyjne w katalogu /etc/fail2ban/, zaś filtry składowane są w /etc/fail2ban/filter.d/ (dla sshd będzie to ścieżka: /etc/fail2ban/filterd.d/sshd.conf). Konfiguracja serwera fail2ban znajduje się w: /etc/fail2ban/jail.conf. My jednak, żeby nie mieszać w oryginalnych plikach i zabezpieczyć się przed ewentualnym nadpisaniem w czasie aktualizacji, stworzymy konfigurację w nowym pliku.

My jednak, żeby nie mieszać w oryginalnych plikach zrobimy kopię pliku konfiguracyjnego i w niej ustawimy to co nas interesuje.

[root@vlsr01 ~]# cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
[root@vlsr01 ~]# mcedit /etc/fail2ban/jail.local
[DEFAULT]
        ignoreip = 192.168.100.0/24
        bantime = 86500
        findtime = 300
        maxretry = 3
        banaction = iptables-multiport
        backend = systemd
[sshd]
        enabled = true
        port = 22

#uruchamiamy fail2ban
[root@vlsr01 ~]# systemctl enable --now fail2ban

[3] Monitoring fail2ban.

Możemy sprawdzić pracę fail2ban, podejrzeć ilość klatek (jail) oraz co nadzoruje i blokuje.

[root@vlsr01 ~]# fail2ban-client status
Status
|- Number of jail:      1
`- Jail list:   sshd

[root@lsr01 ~]# fail2ban-client status sshd
Status for the jail: sshd
|- Filter
|  |- Currently failed: 0
|  |- Total failed:     0
|  `- Journal matches:  _SYSTEMD_UNIT=sshd.service + _COMM=sshd
`- Actions
   |- Currently banned: 0
   |- Total banned:     0
   `- Banned IP list: