Kerio Connect: IP address x.x.x.x rejected: too many connections

Wenn man im Kerio Connect Log die Meldung

IP address x.x.x.x rejected: too many connections

sieht, dann kann das diverse Ursachen haben. In meinem Fall ist der Kerio Connect Server bei einem externen Hoster untergebracht und alle Benutzer greifen, dank NAPT, alle von ein und der selben IPv4 Adresse auf den Kerio Connect Server zu. Das Limit von 100 klingt erstmal viel, aber wenn man jetzt bedenkt, dass es vielleicht pro Benutzer mehrere Clients gibt, dann kann das Limit schnell voll sein.

Im Kerio Connect Admin kann man nur die generelle maximale Anzahl an Verbindungen einstellen. Aber nicht das Limit von 100 Verbindungen pro IP verändern. Dazu muss man in den Kerio Konfigurations-Dateien eine Änderung vornehmen. Genau genommen in der mailserver.cfg

Für Linux: /opt/kerio/mailserver/mailserver.cfg
Für Windows: C:\Program Files\Kerio\MailServer\mailserver.cfg

In dieser Datei im Block service-http und service-https den Wert im Feld MaxConnectionsPerIP erhöhen zum Beispiel auf 250. ACHTUNG: Vorher Kerio Connect Server stoppen. Sonst werden die Änderungen beim Neustart von Kerio wieder überschrieben. (hier nur für Linux beschrieben, unter Windows sollte das über die Diensteverwaltung klappen)

# in der Shell
 systemctl stop kerio-connect.service

Die Datei dann z.B. wie hier aufgeführt anpassen:

 <table name="service-http">
  <variable name="Port">80</variable>
  <variable name="AutoStart">1</variable>
  <variable name="Acl"></variable>
  <variable name="MaxConnections">1000</variable>
  <variable name="MinWorkersCount">0</variable>
  <variable name="MaxWorkersCount">0</variable>
  <variable name="MaxSpareWorkers">5</variable>
  <variable name="MaxTasksHandled">0</variable>
  <variable name="ShutdownTimeout">300</variable>
  <variable name="RecvTimeout">120</variable>
  <variable name="SendTimeout">120</variable>
  <variable name="MaxConnectionsIP">250</variable>
  <variable name="NoLimitAcl"></variable>
  <variable name="Guid">UUID</variable>
</table>

Und Kerio Connect wieder starten:

# in der Shell
 systemctl start kerio-connect.service

Nun sollte das Problem behoben sein. Ggf. kann man auch mit der Zahl etwas variieren, je nach Anzahl der Benutzer und Cliets. Ich würde auf jeden Fall nur kleine Schritte machen, da dies natürlich im schlimmsten Fall für Angriffe missbraucht werden kann bzw. euer Server überlastet werden könnte.