5.7. Limitation des sessions d'utilisateurs et de la mémoire pour éviter une attaque 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 un risque d'attaque 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 déni de service, 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 mémoire de 75 % (soft) / 90 % (hard).
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.slice
# systemctl edit system-cockpithttps.sliceCopy to Clipboard Copied! Toggle word wrap Toggle overflow Limitez les
TasksMaxà 100 et lesCPUQuotaà 30%:[Slice] # change existing value TasksMax=100 # add new restriction CPUQuota=30%
[Slice] # change existing value TasksMax=100 # add new restriction CPUQuota=30%Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pour appliquer les modifications, redémarrez le système :
systemctl daemon-reload systemctl stop cockpit
# systemctl daemon-reload # systemctl stop cockpitCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Désormais, les nouvelles limites de mémoire et de session utilisateur protègent le serveur web cockpit-ws contre les attaques DoS.