Security Hardening: Proaktive Kontosperren, Fail2Ban-Integration, SecurityLogger, Alerting und API-Schutz

This commit is contained in:
Deploymentcenter Bot
2026-09-08 11:45:04 +02:00
parent 087f4392a9
commit edea46e342
17 changed files with 927 additions and 169 deletions
+5
View File
@@ -62,6 +62,11 @@ return [
// Bewusst asymmetrisch: geprüft wird auf fremden Systemen, dort darf
// der Signierschlüssel nicht liegen.
'release_private_key' => dc_env('DC_RELEASE_SIGNING_KEY', ''),
// Proaktive Kontosperren & Brute-Force-Schutz
'max_account_attempts' => (int)dc_env('DC_MAX_ACCOUNT_ATTEMPTS', 5),
'account_lockout_minutes' => (int)dc_env('DC_ACCOUNT_LOCKOUT_MINUTES', 15),
'max_ip_attempts' => (int)dc_env('DC_MAX_IP_ATTEMPTS', 10),
'use_syslog' => (bool)dc_env('DC_USE_SYSLOG', false),
],
'bugtracker' => [
// Projekt-Slug, unter dem das Deploymentcenter eigene Fehler meldet.
@@ -0,0 +1,11 @@
# Fail2Ban Filter-Konfiguration fuer Deploymentcenter
# Pfad auf dem Server: /etc/fail2ban/filter.d/deploymentcenter.conf
[Definition]
# Erkennt fehlgeschlagene WebUI-Logins, Kontosperren, ungueltige API-Tokens und Rate-Limit-Verstoesse
failregex = ^.*\[SECURITY\] \[(?:AUTH_FAIL|ACCOUNT_LOCKED|IP_LOCKED|API_AUTH_FAIL|API_BRUTE_FORCE|RATE_LIMITED)\] ip=<HOST>(?: |$).*$
ignoreregex =
# Zeitstempel-Muster fuer [YYYY-MM-DD HH:MM:SS]
datepattern = ^\[%%Y-%%m-%%d %%H:%%M:%%S\]
@@ -0,0 +1,12 @@
# Fail2Ban Jail-Konfiguration fuer Deploymentcenter
# Pfad auf dem Server: /etc/fail2ban/jail.d/deploymentcenter.local
[deploymentcenter]
enabled = true
port = http,https
filter = deploymentcenter
# Pfad zur persistenten Sicherheits-Logdatei des Deploymentcenters anpassen:
logpath = /var/www/deploymentcenter/var/log/security.log
maxretry = 5
findtime = 600
bantime = 3600