Я использовал fail2ban / iptables на сервере Centos 6.
Я перешел на Centos 7 и теперь использую fail2ban / firewallD (установленный Webmin / Virtualmin со значениями по умолчанию)
Это cat /var/log/maillog | grep "disconnect from unknown"
снимки экрана cat /var/log/fail2ban.log | grep Ban
отображается только
2019-10-27 16: 52: 22,975 fail2ban.actions [8792]: УВЕДОМЛЕНИЕ [proftpd] Запрет 111.225.204.32
Кроме того, tailf /var/log/fail2ban.log
отображает несколько «уже забаненных» одного и того же IP. В этом случае fail2ban после достижения maxretry
пытается заблокировать IP.
Вот мои настройки (частичные), я оставил их по умолчанию, но изменил время блокировки.
jail.local
[постфикс]
enabled = true
порт = smtp, 465, отправка
bantime = -1[postfix-sasl]
enabled = true
порт = smtp, 465, отправка, imap3, imaps, pop3, pop3s
bantime = -1[dovecot]
enabled = true
port = pop3, pop3s, imap, imaps, submission, 465, sieve
bantime = -1
jail.conf
[ПО УМОЛЧАНИЮ]
findtime = 600
maxretry = 5
backend = auto
filter =% (__ name __) s
port = 0: 65535
banaction = iptables-multiport
banaction_allports = iptables-allports
action_ =% (banaction) s [name =% (__ name __) s, bantime = "% (bantime) s", port = "%> (port) s", protocol = "% ( протокол) s ", цепочка ="% (цепочка) s "]
действие =% (действие_) s
jail.d / 00-firewalld.conf
[ПО УМОЛЧАНИЮ]
banaction = firewallcmd-ipset
Существуют следующие файлы: action.d / firewallcmd-ipset.conf и filter.d / postfix.conf
firewall-cmd --direct --get-all-rules
ipv4 filter INPUT_direct 0 -p tcp -m multiport --dports ssh -m set --match-set fail2ban-default src -j REJECT --reject-with icmp-port-unreachable
ipv4 filter INPUT 0 -p tcp - m multiport --dports ssh -m set --match-set fail2ban-sshd src -j REJECT --reject-with icmp-port-unreachable
фильтр ipv4 INPUT 0 -p tcp -m multiport --dports 10000 -m set --match-set fail2ban-webmin-auth src -j REJECT --reject-with icmp-port-unreachable
фильтр ipv4 INPUT 0 -p tcp -m multiport --dports ssh, sftp -m set --match -set fail2ban-ssh-ddos src -j REJECT --reject-with icmp-port-unreachable
После запуска вручную firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='193.56.28.0/24' reject"
и firewall-cmd --reload
этот вывод tailf /var/log/fail2ban.log
остановлено.
Как я могу заблокировать все эти IP-адреса после того, как они достигнут значения maxretry
? Будут ли они заблокированы навсегда, несмотря на перезапуск или перезагрузку службы?
Изменить 1: из fail2ban.log с действием = firewalld-cmd ipset
Из fail2ban.log с действием = iptables-allports
Редактировать 2:
Кажется (я думаю) что-то сбрасывает конфигурации (я думаю, это будет Webmin), потому что через некоторое время я начинаю получать журналы ошибок, такие как failed to execute ban jail 'dovecot' action iptables-allports
, поэтому я пытаюсь это: в действиях .d создал banning.conf
[Definition]
actionban = /usr/bin/firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='<IP>' reject"; ; /usr/bin/firewall-cmd --reload
и в jail.local
[DEFAULT]
banaction = iptables-multiport
banning
Но я получаю Error in action definition banning
. Я знаю, что это не решение.
Перед перемещением сервера я годами использовал fail2ban / iptables (не firewalld), не обращая внимания на настройки по умолчанию.