iptables y fail2ban
Rápido: iptables -L -n –line-numbers Con resolución de nombres (lento): iptables –list –line-numbers Hacer persistentes los baneos de fail2ban Hay que modificar 2 ficheros de acciones: /etc/fail2ban/action.d/iptables.conf actionstart = iptables -N fail2ban-<name> iptables -A fail2ban-<name> -j RETURN iptables -I <chain> -p <protocol> –dport <port> -j fail2ban-<name> cat /etc/fail2ban/ip.blacklist|grep <name> | cut -f2 -d”:” | while read IP; do iptables -I fail2ban-<name> 1 -s $IP -j DROP; done actionban = iptables -I fail2ban-<name> 1 -s <ip> -j DROP echo <name>:<ip> >> /etc/fail2ban/ip.blacklist actionunban = iptables -D fail2ban-<name> -s <ip> -j DROP echo <name>:<ip> >> /etc/fail2ban/ip.blacklist.unbaned2 /etc/fail2ban/action.d/iptables-multiport.conf actionstart = iptables -N fail2ban-<name> iptables -A fail2ban-<name> -j RETURN iptables -I <chain> -p <protocol> -m multiport –dports <port> -j fail2ban-<name> cat /etc/fail2ban/ip.blacklist|grep <name> | cut -f2 -d”:” | while read IP; do iptables -I fail2ban-<name> 1 -s $I$ actionban = iptables -I fail2ban-<name> 1 -s <ip> -j DROP echo <name>:<ip> >> /etc/fail2ban/ip.blacklist actionunban = iptables -D fail2ban-<name> -s <ip> -j DROP echo <name>:<ip> >> /etc/fail2ban/ip.blacklist.unbaned Los ficheros ip.blacklist y ip.blacklist.unbaned se pueden crear al principio con touch, ya irán creciendo. touch etc/fail2ban/ip.blacklist touch etc/fail2ban/ip.blacklist.unbaned El formato que tendrán servicio:<dirección IP>, por ejemplo: postfix:X.133.82.52 apache-postflood:X.154.251.120 Siguiendo con fail2ban, en el fichero jail.local me gusta modificar las acciones para recibir correos electrónicos: %(mta)s[name=%(__name__)s, dest=”%(destemail)s”, protocol=”%(protocol)s”, chain=”%(chain)s”] Por ejemplo en mi jail.local, para la sección ssh tengo esto: [sshd] enabled = true filter = sshd action = iptables-allports %(mta)s[name=%(__name__)s, dest=”%(destemail)s”, protocol=”%(protocol)s”, chain=”%(chain)s”] logpath = /var/log/auth.log [sshd-ddos] enabled = true filter = sshd-ddos action = iptables-allports %(mta)s[name=%(__name__)s, dest=”%(destemail)s”, protocol=”%(protocol)s”, chain=”%(chain)s”] logpath = /var/log/auth.log La variable destemail […]
» Leer más