Configuración
Creamos el archivo /etc/fail2ban/filter.d/nginx-wp-login.conf y añadimos el siguiente contenido:
[Definition] failregex = ^<HOST> .* "POST /wp-login.php ^<HOST> .* "POST .*xmlrpc.php ignoreregex =
luego creamos el siguiente archivo en /etc/fail2ban/jail.d/nginx-wp-login.conf
[nginx-wp-login] enabled = true port = http,https filter = nginx-wp-login action = iptables-multiport[name=nginx-wp-login, port="http,https", protocol=tcp] logpath = /var/log/nginx/access.log maxretry = 8 findtime = 600
Una vez completado este paso reiniciamos el servidor fail2ban.
sudo service fail2ban restart
Ver status del jail
sudo fail2ban-client status nginx-wp-login
Desbanear ip manualmente
sudo fail2ban-client set nginx-wp-login unbanip <ip>