30.6. Begrenzung von Benutzersitzungen und Speicher, um einen DoS-Angriff zu verhindern
Die Zertifikatsauthentifizierung wird durch die Trennung und Isolierung von Instanzen des Webservers cockpit-ws
gegen Angreifer geschützt, die sich als ein anderer Benutzer ausgeben wollen. Dies führt jedoch einen potenziellen Denial-of-Service-Angriff (DoS) ein: Ein entfernter Angreifer könnte eine große Anzahl von Zertifikaten erstellen und eine große Anzahl von HTTPS-Anfragen an cockpit-ws
senden, die jeweils ein anderes Zertifikat verwenden.
Um diesen DoS zu verhindern, werden die kollektiven Ressourcen dieser Webserver-Instanzen begrenzt. Standardmäßig sind die Grenzen für die Anzahl der Verbindungen und die Speichernutzung auf 200 Threads und eine Speicherbegrenzung von 75 % (weich) / 90 % (hart) festgelegt.
Das folgende Verfahren beschreibt den Ressourcenschutz durch Begrenzung der Anzahl der Verbindungen und des Speichers.
Verfahren
Öffnen Sie im Terminal die Konfigurationsdatei
system-cockpithttps.slice
:# systemctl edit system-cockpithttps.slice
Schränken Sie
TasksMax
auf 100 undCPUQuota
auf 30% ein:[Slice] # change existing value TasksMax=100 # add new restriction CPUQuota=30%
Um die Änderungen zu übernehmen, starten Sie das System neu:
# systemctl daemon-reload # systemctl stop cockpit
Jetzt schützen die neuen Speicher- und Benutzersitzungslimits den Webserver cockpit-ws
vor DoS-Angriffen.