I did some more testing, it seems to block and ban at exactly 2 MB. But from what I can see, neither the defaults nor the configs have anything with a 2MB limit. There's also no .hiawatha file in any of the directories that could overwrite the settings.
# Hiawatha main configuration file
#
# VARIABLES
# With 'set', you can declare a variable. Make sure the name of the
# variable doesn't conflict with any of the configuration options.
# The variables are case-sensitive and cannot be redeclared.
#
#set LOCALHOST = 127.0.0.0/8
# GENERAL SETTINGS
#
ServerId = http
ConnectionsTotal = 1000
ConnectionsPerIP = 25
SystemLogfile = /var/log/hiawatha/system.log
GarbageLogfile = /var/log/hiawatha/garbage.log
# BINDING SETTINGS
# A binding is where a client can connect to.
#
Binding {
Port = 80
Interface = <IP>
MaxUploadSize = 1024
}
#
Binding {
Port = 443
TLScertFile = <SSL-Cert>
Interface = <IP>
MaxRequestSize = 2048
TimeForRequest = 30
MaxUploadSize = 1024
}
# BANNING SETTINGS
# Deny service to clients who misbehave.
#
BanOnGarbage = 300
BanOnMaxPerIP = 60
BanOnMaxReqSize = 300
KickOnBan = yes
RebanDuringBan = yes
# COMMON GATEWAY INTERFACE (CGI) SETTINGS
# These settings can be used to run CGI applications.
#
CGIhandler = /usr/bin/perl:pl
#CGIhandler = /usr/bin/php-cgi:php
#CGIhandler = /usr/bin/python:py
#CGIhandler = /usr/bin/ruby:rb
#CGIhandler = /usr/bin/ssi-cgi:shtml
#CGIextension = cgi
#TriggerOnCGIstatus = no
#
FastCGIserver {
FastCGIid = PHP7
ConnectTo = /run/php-fpm/php-fpm.sock
Extension = php
SessionTimeout = 30
}
UrlToolkit {
ToolkitID = wordpress
RequestURI exists Return
Match [^?]*(\?.*)? Rewrite /index.php$1
}
UrlToolkit {
ToolkitID = subdomains
}
# URL TOOLKIT
# This URL toolkit rule was made for the Banshee PHP framework,
# which can be downloaded from http:/www.banshee-php.org/
#
#UrlToolkit {
# ToolkitID = banshee
# RequestURI isfile Return
# Match ^/(css|files|fonts|images|js)($|/) Return
# Match ^/(favicon.ico|robots.txt)$ Return
# Match [^?]*(\?.*)? Rewrite /index.php$1
#}
# DIRECTORY SETTINGS
# You can specify some settings per directory.
#
#Directory {
# DirectoryID = static
# Path = /css, /fonts, /images, /js
# ExpirePeriod = 2 weeks
#}
#
#Directory {
# DirectoryID = files
# Path = /files
# ShowIndex = yes
# StartFile = index.html
# ExecuteCGI = no
#}
# DEFAULT WEBSITE
# It is wise to use your IP address as the hostname of the default website
# and give it a blank webpage. By doing so, automated webscanners won't find
# your possible vulnerable website.
#
Hostname = <IP>
WebsiteRoot = /srv/http/hiawatha
StartFile = index.php
AccessLogfile = /var/log/hiawatha/access.log
ErrorLogfile = /var/log/hiawatha/error.log
UseFastCGI=PHP7
include enabled/
VHost:
VirtualHost {
Hostname = <hostname>
WebsiteRoot = <root>
StartFile = index.php
RequireTLS = yes
AccessLogfile = /var/log/hiawatha/hostname.access.log
ErrorLogfile = /var/log/hiawatha/hostname.error.log
TimeForCGI = 86400
UseFastCGI = PHP7
Alias = /oc:/usr/share/webapps/owncloud
EnablePathInfo = yes
FollowSymlinks = yes
AllowDotFiles = yes
WebDAVapp = yes
UseToolkit = subdomains
}