This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
сервис_fail2ban [2022/03/15 13:08] val [Интеграция fail2ban и snort] |
сервис_fail2ban [2024/12/28 11:55] (current) val [Настройка] |
||
---|---|---|---|
Line 6: | Line 6: | ||
* [[https://help.ubuntu.com/community/Fail2ban|Fail2ban]] | * [[https://help.ubuntu.com/community/Fail2ban|Fail2ban]] | ||
+ | * [[https://bugs.launchpad.net/ubuntu/+source/fail2ban/+bug/2055114|fail2ban is broken in 24.04 Noble]] | ||
<code> | <code> | ||
debian11# apt install iptables | debian11# apt install iptables | ||
+ | debian12# apt install iptables rsyslog | ||
# apt install fail2ban | # apt install fail2ban | ||
+ | |||
+ | ubuntu24# wget https://launchpad.net/ubuntu/+source/fail2ban/1.1.0-1/+build/28291332/+files/fail2ban_1.1.0-1_all.deb | ||
+ | ubuntu24# dpkg -i fail2ban_1.1.0-1_all.deb | ||
</code> | </code> | ||
Line 30: | Line 35: | ||
[sshd] | [sshd] | ||
maxretry = 6 | maxretry = 6 | ||
+ | #port = 2222 | ||
+ | #ignoreip = 192.168.X.0/24 192.168.100+X.0/24 | ||
[asterisk] | [asterisk] | ||
enabled = true | enabled = true | ||
maxretry = 3 | maxretry = 3 | ||
+ | #bantime = 30d | ||
+ | #action = iptables-allports[blocktype=DROP] | ||
+ | #action = route[blocktype=blackhole] | ||
</code> | </code> | ||
Line 88: | Line 98: | ||
* [[https://github.com/frankiejol/snortban|frankiejol/snortban]] | * [[https://github.com/frankiejol/snortban|frankiejol/snortban]] | ||
+ | * Сервис SNORT [[Сервис SNORT#Копирование alert_unified2 в syslog]] | ||
<code> | <code> | ||
Line 99: | Line 110: | ||
logpath = /var/log/auth.log | logpath = /var/log/auth.log | ||
#action = mail-admin | #action = mail-admin | ||
+ | #action = iptables-allports | ||
#action = iptables-allports-forward | #action = iptables-allports-forward | ||
#action = cisco-acl | #action = cisco-acl | ||
Line 108: | Line 120: | ||
failregex = .*snort.*Priority: 1.*} <HOST>.* | failregex = .*snort.*Priority: 1.*} <HOST>.* | ||
# .*snort.*Priority: 2.*} <HOST>.* | # .*snort.*Priority: 2.*} <HOST>.* | ||
+ | |||
+ | #failregex = .*Original Client IP: <HOST>.* | ||
</code> | </code> | ||
Line 132: | Line 146: | ||
dest = student | dest = student | ||
</code> | </code> | ||
+ | |||
+ | * [[#Запуск и отладка]] | ||
==== Блокировка через iptables ==== | ==== Блокировка через iptables ==== | ||
Line 153: | Line 169: | ||
</code> | </code> | ||
+ | * [[#Запуск и отладка]] | ||
==== Блокировка через cisco acl ==== | ==== Блокировка через cisco acl ==== | ||
Line 184: | Line 201: | ||
#!/bin/sh | #!/bin/sh | ||
- | cat > /root/firewall.acl <<EOF | + | cat > /srv/tftp/firewall.acl <<EOF |
no ip access-list extended ACL_FIREWALL | no ip access-list extended ACL_FIREWALL | ||
ip access-list extended ACL_FIREWALL | ip access-list extended ACL_FIREWALL | ||
EOF | EOF | ||
- | /root/cisco-acl-deny.sh >> /root/firewall.acl | + | /root/cisco-acl-deny.sh >> /srv/tftp/firewall.acl |
- | cat /root/cisco-acl-permit.txt >> /root/firewall.acl | + | cat /root/cisco-acl-permit.txt >> /srv/tftp/firewall.acl |
- | /usr/bin/rcp /root/firewall.acl router:running-config | + | #/usr/bin/rcp /srv/tftp/firewall.acl router:running-config |
+ | #/usr/bin/snmpset -c write -v2c router .1.3.6.1.4.1.9.2.1.53.192.168.X.10 string "firewall.acl" | ||
</code><code> | </code><code> | ||
# cat /etc/fail2ban/action.d/cisco-acl.conf | # cat /etc/fail2ban/action.d/cisco-acl.conf | ||
Line 206: | Line 224: | ||
</code> | </code> | ||
+ | * [[#Запуск и отладка]] | ||
===== Отладка собственных фильтров ===== | ===== Отладка собственных фильтров ===== | ||