Cambiando la configuración de fail2ban para bloquear con pf
Hola, soy un inútil. Hoy es un artículo de incompetencia pura.
¡¿Eh?! ¡Están apareciendo registros extraños en fail2ban.log!
Bueno, bueno, estaba echando un vistazo a lo que había sido baneado por fail2ban... y mientras lo hacía, vi esto:
2024-07-24 20:52:43,027 fail2ban.utils [39963]: INFO HINT on 127: "Command not found". Make sure that all commands
in "{ iptables -w -C f2b-sshd -j RETURN >/dev/null 2>&1; } || { iptables -w -N f2b-sshd || true; iptables -w -A f2b-sshd -j RE
TURN; }
for proto in $(echo 'tcp' | sed 's/,/ /g'); do
{ iptables -w -C INPUT -p $proto -m multiport --dports ssh -j f2b-sshd
>/dev/null 2>&1; } || { iptables -w -I INPUT -p $proto -m multiport --dports ssh -j f2b-sshd; }
done" are in the PATH of fail
2ban-server process (grep -a PATH= /proc/pidof -x fail2ban-server/environ). You may want to start "fail2ban-server -f" separa
tely, initiate it with "fail2ban-client reload" in another shell session and observe if additional informative error messages a
ppear in the terminals.
¡Vaya, parece que falta un comando...! ¡¡¡Lo había olvidado por completo!!!
En el caso de FreeBSD, se controla con pf... Para GNU/Linux, iptables está bien, pero lo había olvidado por completo a pesar de estar usando BSD... Así que voy a configurarlo de nuevo, consultando este sitio web... https://dbdemon.com/pf_and_fail2ban Por lo tanto, como mi propio servidor es $exsrv1,
# Fail2Ban
table <f2b> persist
anchor "f2b/*"
block drop in log quick on $exsrv1 from <f2b> to any
Con esto, la configuración está hecha. O sea, ¿es posible usar expresiones regulares como f2b/*...? Y luego, reconfiguré jail.conf. Lo puse en la sección Default, sin más.
[DEFAULT]
banaction = pf[actiontype=<allports>]
banaction_allports = pf[actiontype=<allports>]
[sshd]
enabled = true
port = ssh
logpath = /var/log/auth.log
bantime = 1w
findtime = 1d
maxretry = 5
[postfix]
enabled = true
port = smtp,ssmtp,submission
logpath = /var/log/maillog
bantime = 1w
findtime = 1d
maxretry = 10
[dovecot]
enabled = true
port = pop3,pop3s,imap,imaps,submission
logpath = /var/log/maillog
bantime = 1w
findtime = 1d
maxretry = 10
En cuanto a los archivos de configuración, ya está configurado por defecto en action.d/pf.conf, y al mirarlo

parece que no necesito modificar la llamada a los comandos de esta manera. Y con esto, reinicié fail2ban y pf, y al revisar los registros de fail2ban, parece que las IPs que habían sido baneadas hasta ahora se mantienen.
# fail2ban-client status sshd
Status for the jail: sshd
|- Filter
| |- Currently failed: 1
| |- Total failed: 1
| `- File list: /var/log/auth.log
`- Actions
|- Currently banned: 37
|- Total banned: 37
`- Banned IP list: *
Con esto, observaré la situación de nuevo.
Hasta entonces. Gracias de nuevo.