Portscanner mit Crowdsec unterbinden

Datum

Um Portscans automatisch zu blockieren eignet sich Crowdsec, welches hierfür einen eigene Collection für iptables besitzt.

Anscheinend wird die Collection nicht selbstständig installiert, weshalb ich es nachträglich mit
cscli collections install crowdsecurity/iptables installieren musste.

Anschließend wird die Collection im Hub gelistet:

cscli hub list
INFO[29-10-2023 20:17:30] Loaded 105 collecs, 113 parsers, 196 scenarios, 7 post-overflow parsers
COLLECTIONS
──────────────────────────────────────────────────────────────────────────────────────────────────────────────
 Name                                📦 Status   Version   Local Path
──────────────────────────────────────────────────────────────────────────────────────────────────────────────
 crowdsecurity/base-http-scenarios   ✔️ enabled   0.6       /etc/crowdsec/collections/base-http-scenarios.yaml
 crowdsecurity/http-cve              ✔️ enabled   2.3       /etc/crowdsec/collections/http-cve.yaml
 crowdsecurity/iptables              ✔️ enabled   0.1       /etc/crowdsec/collections/iptables.yaml
 crowdsecurity/linux                 ✔️ enabled   0.2       /etc/crowdsec/collections/linux.yaml
 crowdsecurity/nginx                 ✔️ enabled   0.2       /etc/crowdsec/collections/nginx.yaml
 crowdsecurity/sshd                  ✔️ enabled   0.2       /etc/crowdsec/collections/sshd.yaml
──────────────────────────────────────────────────────────────────────────────────────────────────────────────

Anschließend braucht es noch eine Iptables Regel, damit der Traffic auch geloggt wird.
iptables -A INPUT -m state --state NEW -j LOG

Achtung

Dadurch dass nun neue Verbindungen protokolliert werden, können die Logs sehr stark anwachsen und entsprechend den Speicher vollschreiben.
In Debian 12 werden die neuen Verbindungen standardmäßig in /var/log/syslog geschrieben.

Wenn nun der Server Ziel eines Portscan wird, wird dies bemerkt und entsprechend die IP des scannenden Systems temporär gesperrt.

Autor

PRTG Map