The following guide will show how to use fail2ban to block xmlrpc attacks. \\ \\ We need to set up rules/regex that the jail will follow, this will look for log file entries depending on what we specify: \\ Create a file called: /etc/fail2ban/filter.d/xmlrpc.conf [INCLUDES] before = common.conf [Definition] failregex = ^ .*POST .*xmlrpc\.php.* ignoreregex = The regex above will look for POST requests to the xmlrpc file. \\ Now add the following configuration to your /etc/fail2ban/jail.conf file [xmlrpc] enabled = true port = http,https filter = xmlrpc # name of the filter found in /etc/fail2ban/filter.d/ banaction = iptables-allports # block the ip address on all ports logpath = %(nginx_access_log)s # what logs files should it read to find xmlrpc? You can specify a more accurate file if you only have 1 site that has this. maxretry = 5 # 5 instances matching the regex can be found before banning findtime = 3600 # POST request found during a specific time period bantime = 7200 # how long IP will be banned for