30.6. Limitation des sessions utilisateur et de la mémoire pour éviter une attaque par déni de service (DoS)
L'authentification par certificat est protégée en séparant et en isolant les instances du serveur web cockpit-ws contre les attaquants qui veulent se faire passer pour un autre utilisateur. Cependant, cela introduit une attaque potentielle par déni de service (DoS) : Un attaquant distant pourrait créer un grand nombre de certificats et envoyer un grand nombre de requêtes HTTPS à cockpit-ws, chacune utilisant un certificat différent.
Pour éviter ce DoS, les ressources collectives de ces instances de serveur web sont limitées. Par défaut, les limites du nombre de connexions et de l'utilisation de la mémoire sont fixées à 200 threads et à une limite de 75% (soft) / 90% (hard) de la mémoire.
La procédure suivante décrit la protection des ressources en limitant le nombre de connexions et la mémoire.
Procédure
Dans le terminal, ouvrez le fichier de configuration
system-cockpithttps.slice:# systemctl edit system-cockpithttps.sliceLimitez le
TasksMaxà 100 et leCPUQuotaà 30%:[Slice] # change existing value TasksMax=100 # add new restriction CPUQuota=30%Pour appliquer les changements, redémarrez le système :
# systemctl daemon-reload # systemctl stop cockpit
Désormais, les nouvelles limites de mémoire et de session utilisateur protègent le serveur web cockpit-ws contre les attaques de déni de service.