CrowdSec auf der OPNsense ist eine feine Sache und erkennt und blockiert standardmäßig bereits gängige Reconnaissance-Angriffe wie z.B. Port-Scanning. Wer aber NGINX als Reverse Proxy auf der OPNsense einsetzt, der möchte eventuell den Schutz auch auf NGINX ausweiten. Hierzu kann man einfach das NGINX-Szenario aus CrowdSec nachinstallieren, und auf den ersten Blick funktioniert danach auch zunächst alles – aber nur auf den ersten Blick.
Spätestens nach ein paar Tagen wird nämlich bei Betrachtung der Logs auffallen, dass anscheinend keine neuen Angriffe geloggt bzw. geblockt werden – ein Neustart von CrowdSec löst dann das Problem, aber wieder nur vorübergehend. Das mag zunächst verwunderlich wirken, wo doch der CrowdSec Daemon ordnungsgemäß läuft – das Problem ist aber eigentlich recht einfach zu finden. Die Kurzfassung: CrowdSec liest die NGINX logs standardmäßig über Symlinks, also quasi Verweise auf die jeweils aktuellen Log-Dateien ein. OPNsense rotiert diese Logdateien jedoch regelmäßig, was dazu führt, dass CrowdSec sozusagen „die Spur verliert“ und nun eine alte oder nicht mehr existierende Log-Datei einliest. Das passiert deshalb, weil CrowdSec zu Beginn dem Symlink zur eigentlichen Logdatei folgt, aber dann nicht bemerkt, wenn die Logdatei rotiert wird. Um das zu beheben, müssen wir ein paar Konfig-Dateien anpassen bzw. anlegen, aber das ist in wenigen Minuten erledigt.
Weiterlesen