Website-Icon Frankys Web

Sophos UTM: Sehr langsame Verbindung via WAF / Sensor für PRTG

Ein Leser berichtete mir kürzlich von einem Problem mit der Web Application Firewall der Sophos UTM.

Aufgrund der Corona Krise sind viele der Mitarbeiter ins HomeOffice gewechselt und nutzen seitdem verstärkt Verbindungen zum Exchange Server, welche durch die WAF der Sophos UTM geschützt werden. Nachdem es also tagsüber zu einer höheren Last auf der UTM aufgrund der vielen HomeOffice User kam, wurden Verbindungen welche über die WAF liefen sehr langsam. Tagsüber kam es zu Ladezeiten von über 60 Sekunden. Die CPU und RAM Auslastung der UTM zeigte allerdings keine Engpässe an.

Der Leser hat daraufhin ein Ticket beim Sophos Support geöffnet, der Support konnte feststellen, dass die WAF zu wenige freie Worker Prozesse hat und es daher zu Timeouts und langen Ladezeiten kommt, wenn via WAF auf die Services zugegriffen wird.

Im ReverseProxy Log der UTM (/var/log/reverseproxy.log) fand sich in diesem Fall die folgende Meldung:

2020:03:31-17:24:14 vpn2-1 httpd[8532]: [mpm_worker:error] [pid 8532:tid 4147619520] AH00288: scoreboard is full, not at MaxRequestWorkers

Laut Sophos Support hat die WAF der UTM 800 Worker Prozesse zur Verfügung, sind alle Worker Prozesse ausgelastet, kommt es zu dem oben beschriebenen Problem.

Das Problem konnte schließlich gelöst werden, indem die Anzahl der Worker Prozesse erhöht wurde (siehe Ende des Artikels). Dies war allerdings nicht der Grund, warum ich eine nette Mail des Lesers erhalten habe. Hier mal ein Auszug aus besagter Mail:

Ich bin beim Suchen bei Sophos auf diesen Artikel gestoßen:
https://community.sophos.com/kb/en-us/123512
Es gibt eine Statusseite für die WAF, die jedoch nur über einen SSH-Tunnel aufrufbar ist.
Ich bastel gerade mit Powershell und versuch die Seite zu parsen um das ins PRTG auszugeben, jedoch hab ich noch nichts gefunden, wie ich aus dem Script ein SSH Tunnel aufbauen kann.

WAF, PRTG und PowerShell haben dann mein Interesse geweckt und wir haben gemeinsam (Vielen Dank an dieser Stelle!) einen Sensor für PRTG gebastelt, welche die Leistungsdaten der UTM in PRTG darstellt.

Die Übersichtsseite der WAF sieht beispielsweise so aus:

Ein kleiner PowerShell Sensor, welcher einen SSH Tunnel zur UTM aufbaut und die Daten aus der Statuspage liest, stellt nun die Werte in PRTG dar:

Der Screenshot zeigt einen ersten Versuch für den Sensor, die aktuelle Version des Sensors kann nun die folgenden Werte darstellen:

Falls jemand ebenfalls die Leistungsdaten der WAF in PRTG darstellen möchte, kann der Sensor hier runtergeladen werden:

Der Sensor benötigt das PowerShell Moduls Posh-SSH. Falls es bei dem PowerShell Modul zu Problemen in Verbindung mit Windows Server 2019 kommt, bitte hier schauen. Die Zeilen 2 bis 4 müssen im Script müssen entsprechend angepasst werden.

Hinweis: Die Anzahl der Worker Prozesse der UTM lässt sich in der Datei /var/storage/chroot-reverseproxy/usr/apache/conf/mpm.conf” erhöhen:

In diesem Fall sollte aber die CPU und RAM Auslastung der UTM im Auge behalten werden.

Die mobile Version verlassen