Mein Problem ist das ich in teils massiv gespamt werde und gerne mittels fail2ban den Serverload weider in den Griff bekomme indem ich die Spammer einfach mal ausschließe. Hierzu habe ich in der jail.conf einen entsprechenden Punkt angelegt und in der filter.d einen passenden Eintrag.
Ich schaffe es jedoch nicht den failregex so zu schreiben das auch wirklich ein match stattfindet.
Ich versuch mal alles an Infos hier zu posten die von belangen sein könnten.
System: Debian 3.2.60-1+deb7u3 x86_64 / Apache / ISP Config
Eintrag zum Sperren aus der Logdatei:
Code: Alles auswählen
[05/Jan/2015:00:44:34 +0100] billigdslanbieter.de:80 185.12.45.110 - - "POST /xmlrpc.php HTTP/1.0" 401 885 "-" "Mozilla/4.0 (compatible: MSIE 7.0; Windows NT 6.0)" 'xmlrpc'
Code: Alles auswählen
LogFormat "%t %v:%p %h %l %u \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" fail2ban
Code: Alles auswählen
[apache-post]
enabled = true
port = http,https
filter = apache-post
action = iptables[name=httpd, port=80, protocol=tcp]
#sendmail-whois[name=post_block, dest=yourmail@example.com]
logpath = /var/log/apache*/other_vhosts_access.log
findtime = 10
bantime = 300
maxretry = 10
Code: Alles auswählen
# Fail2Ban configuration file
#
#
# $Revision: 1 $
#
[Definition]
# Option: failregex
# Notes.: Regexp to catch known spambots and software alike. Please verify
# that it is your intent to block IPs which were driven by
# abovementioned bots.
# Values: TEXT
#
#failregex = ^<HOST> -.*"POST.*
#failregex = ^<HOST> - - .* "POST xmlrpc.php\=.*
failregex = <HOST> - - .* "POST xmlrpc.php\=.*
# Option: ignoreregex
# Notes.: regex to ignore. If this regex matches, the line is ignored.
# Values: TEXT
#
ignoreregex =
Mit meinen eingeschränkten Kenntnissen bekomme ich das einfach nicht auf die Kette, wenn mir einer von euch mal auf die Sprünge helfen kann (gerne auch irc/skype) wäre ich dafür echt dankbar.