SecAuditEngine On
SecAuditLogRelevantStatus "403,404,500"
SecAuditLog /var/log/modsec_audit.log
sudo apt install fail2ban -y
sudo nano /etc/fail2ban/filter.d/modsecurity.conf
failregex = \[.*?\] \[.*?\] \[client <HOST>\] ModSecurity: .*Matched "Operator .*"
You can customize the failregex based on the ModSecurity version and log format you're using.
sudo nano /etc/fail2ban/jail.d/modsecurity.conf
[modsecurity]
enabled = true
filter = modsecurity
action = iptables-multiport[name="modsecurity", port="http,https"]
logpath = /var/log/modsec_audit.log
maxretry = 3
findtime = 600
bantime = 3600
sudo systemctl restart fail2ban
sudo fail2ban-client status modsecurity
| Feature | Supported in CloudPanel? | Manual Setup Required |
| ModSecurity | ||
| Fail2Ban Integration |