Comment prévenir les attaques DDoS avec Nginx

Comment prévenir les attaques DDoS avec Nginx

Les attaques DDoS (Distributed Denial of Service) , via des tactiques de communication numérique abusives, surchargent les ressources du serveur. Ces types d'attaques sont des raids organisés dans le monde informatique. D'innombrables actes d'opposition malveillante se combinent pour créer une menace suffisamment redoutable pour forcer un serveur à s'arrêter.

Pire encore, il existe de nombreux moyens de mener des « guerres » de guérilla sur le Web contre de tels hôtes. Heureusement, les serveurs peuvent être configurés pour résister à de telles attaques.

Nginx, un système serveur très populaire pour les machines Unix, est doté de suffisamment de fonctionnalités intégrées pour limiter considérablement l'efficacité des attaques DDoS.

Voici quelques options efficaces pour gérer de telles menaces avec Nginx.

Comment prévenir les attaques DDoS avec Nginx ?

Fichiers de configuration de sauvegarde

Avant de modifier des paramètres, assurez-vous de faire une sauvegarde rapide de la configuration de votre serveur. La commande suivante fonctionne à cet effet :

sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.backup-original

Comment prévenir les attaques DDoS avec Nginx

Une fois terminé, vous êtes prêt à continuer.

Vérifier le trafic

La surveillance du trafic sur votre serveur facilite l'optimisation de la sécurité et la mise en œuvre de stratégies supplémentaires. Nginx dispose d'un module créé spécifiquement à cet effet.

Configurer la page d'état

Nginx est généralement livré avec un module appelé « stub status » (http_stub_status_module), qui permet d'intégrer assez facilement ce type de fonctionnalités dans l'environnement serveur. Tout d'abord, testez-le à l'aide de la commande suivante :

nginx -V

Comment prévenir les attaques DDoS avec Nginx

Ou utilisez la commande suivante pour le trouver plus rapidement :

nginx -V 2>&1 | grep -o with-http_stub_status_module

Comment prévenir les attaques DDoS avec Nginx

Si votre résultat ressemble à celui ci-dessus, alors tout va bien. Sinon, vous devrez installer ou recompiler votre installation Nginx avec le module inclus.

Configurer une page d'état que vous pouvez vérifier est simple, mais vous devez également limiter l'accès au minimum (ordinateur uniquement) pour maintenir la sécurité. Commencez par ouvrir le fichier de configuration principal du serveur trouvé dans /etc/nginx/nginx.conf.

Ouvrez-le et ajoutez le code suivant à la « directive http » pour activer le module, en remplaçant vos propres informations dans « localhost », « /status_page » et « 127.0.0.1 ».

server {
listen 80;
listen [::]:80;
server_name localhost;
##
# Status Page Settings
##
location /status_page {
stub_status on;
allow 127.0.0.1;
allow ::1;
deny all;
}
}

Remarque : Vous aurez besoin des privilèges sudo pour modifier ce fichier.

Comment prévenir les attaques DDoS avec Nginx

Maintenant, testez votre configuration :

sudo nginx -t

Comment prévenir les attaques DDoS avec Nginx

Si tout va bien, envoyez au serveur un signal de rechargement :

sudo systemctl reload nginx

Comment prévenir les attaques DDoS avec Nginx

Pour accéder à votre page d'état, visitez l'emplacement nom_serveur suivi de «/status_page» dans un navigateur Web ou en utilisant un outil de ligne de commande comme curl. (Ceci est utile si le cache de votre navigateur n'est pas automatiquement mis à jour). Voici la commande curl pour accéder à la page dans les exemples :

curl localhost/status_page

Comment prévenir les attaques DDoS avec Nginx

Dans le navigateur, le résultat de la commande ci-dessus ressemble à l'image suivante.

Comment prévenir les attaques DDoS avec Nginx

Vérifier les journaux d'accès

Si vous remarquez un trafic inhabituel lors de la vérification de la page d'état configurée ci-dessus, vous souhaiterez peut-être consulter le journal d'accès du serveur. Le journal d'accès au serveur se trouve dans « /var/log/nginx/access.log ». Le journal répertorie les méthodes HTTP utilisées, la date/heure des tentatives d'accès, l'agent utilisateur et les pages consultées.

Comment prévenir les attaques DDoS avec Nginx

Limites de connexion

Parmi les nombreuses tactiques utiles qui valent la peine d’être essayées pour prévenir les attaques DDoS, l’une des plus simples et des plus efficaces consiste à limiter le débit du trafic entrant.

Idéalement, vous devriez limiter l’accès juste assez pour empêcher les robots malveillants de surcharger votre serveur, tout en maintenant des tarifs raisonnables. Dans Nginx, cela peut être fait avec les directives limit_req_zone et limit_req . Le code suivant définit les contraintes de mémoire et de vitesse à utiliser quel que soit l'emplacement pour lequel votre serveur est configuré :

limit_req_zone $binary_remote_addr zone=speedbump:10m rate=10r/s;

« Zone » précise le nom et la capacité (en mégaoctets dans ce cas) de l'espace mémoire où sont stockées les requêtes des utilisateurs. « Taux » définit le nombre total de requêtes que Nginx acceptera par seconde (10 requêtes dans cet exemple). Considérez ce code comme une règle et ce qui suit est l'utilisation de cette règle :

limit_req zone=speedbump burst=20;

Le code ci-dessus fait en réalité un peu plus que simplement implémenter une règle de limite. Il ajoute également une petite file d'attente pouvant contenir jusqu'à 20 requêtes pour gérer correctement les connexions légitimes, qui s'affichent un peu plus rapidement que la normale, dépassant à la fois les règles et la file d'attente, ce qui entraîne une erreur 503 pour le client. Les deux directives ressemblent à ceci dans nginx.conf :

Comment prévenir les attaques DDoS avec Nginx

Créer une liste noire d'adresses IP

Si vous obtenez l'adresse IP qui effectue l'attaque DDoS sur votre serveur, vous pouvez simplement la mettre sur liste noire et éliminer toutes les connexions provenant de cette adresse IP.

Ajoutez le code suivant à votre directive serveur :

location / {
deny 123.123.123.0/28;
# ...
}

Bloquer les demandes pour certains fichiers

Si l'attaque DDoS cible certains fichiers sur le serveur - par exemple le fichier xmlrpc.php sur WordPress (il s'agit d'un fichier couramment ciblé sur la plupart des serveurs WordPress), vous pouvez les bloquer tous selon toutes les exigences. Ajoutez ce code à votre directive serveur :

location /xmlrpc.php {
deny all;
}

Suivez le processus ci-dessus et vous pourrez limiter la plupart des attaques DDoS. Assurez-vous de consulter la documentation Nginx pour connaître les options de sécurité supplémentaires que vous pouvez appliquer.

J'espère que vous réussirez.


Comment supprimer lavis de demande de droit dauteur dans le coin droit de lécran sous Windows 10

Comment supprimer lavis de demande de droit dauteur dans le coin droit de lécran sous Windows 10

Voyez-vous une notification d’activation de Windows 10 dans le coin droit de l’écran ? Cet article vous expliquera comment supprimer l'avis de demande de droit d'auteur sous Windows 10.

Instructions de A à Z sur la façon dinstaller Windows 10 build 14393.222

Instructions de A à Z sur la façon dinstaller Windows 10 build 14393.222

Récemment, Microsoft a publié la dernière mise à jour cumulative pour les utilisateurs de PC Windows 10, appelée Build 14393.222. Cette mise à jour publiée pour Windows 10 corrige principalement des bugs basés sur les commentaires des utilisateurs et améliore l'expérience de performances du système d'exploitation.

Protégez votre réseau informatique avec lhôte Bastion en seulement 3 étapes

Protégez votre réseau informatique avec lhôte Bastion en seulement 3 étapes

Avez-vous des ordinateurs sur votre réseau local qui nécessitent un accès externe ? Utiliser un hôte bastion comme gardien de votre réseau peut être une bonne solution.

Comment créer une touche Windows si votre clavier nest pas disponible

Comment créer une touche Windows si votre clavier nest pas disponible

Si vous préférez utiliser un vieux clavier classique, comme l'IBM Model M, qui n'inclut pas de touche Windows physique, il existe une méthode simple pour en ajouter davantage, en empruntant une touche que vous n'utilisez pas souvent.

3 façons deffacer rapidement tous les journaux dévénements dans Windows 10

3 façons deffacer rapidement tous les journaux dévénements dans Windows 10

Parfois, vous devrez peut-être supprimer d’un seul coup les anciens journaux d’événements. Dans ce guide, Quantrimang.com vous montrera 3 façons de supprimer rapidement tous les journaux d'événements dans l'Observateur d'événements Windows 10.

Les fausses méthodes IP vous aident à accéder de manière anonyme

Les fausses méthodes IP vous aident à accéder de manière anonyme

Dans de nombreux articles précédents, nous avons mentionné qu’il est extrêmement important de rester anonyme en ligne. Des informations privées sont divulguées chaque année, ce qui rend la sécurité en ligne de plus en plus nécessaire. C'est aussi la raison pour laquelle nous devrions utiliser des adresses IP virtuelles. Ci-dessous, nous découvrirons les méthodes pour créer de fausses IP !

Comment créer un mode darrière-plan transparent sur Windows 10

Comment créer un mode darrière-plan transparent sur Windows 10

WindowTop est un outil qui a la capacité d'atténuer toutes les fenêtres d'application et tous les programmes exécutés sur les ordinateurs Windows 10. Vous pouvez également utiliser une interface à fond sombre sur Windows.

Comment désactiver la barre de langue sur la barre des tâches de Windows 8

Comment désactiver la barre de langue sur la barre des tâches de Windows 8

La barre de langue sous Windows 8 est une barre d'outils de langue miniature conçue pour s'afficher automatiquement sur l'écran du bureau. Cependant, de nombreuses personnes souhaitent masquer cette barre de langue dans la barre des tâches.

Comment configurer WEP, WPA, WPA2 pour le routeur Linksys

Comment configurer WEP, WPA, WPA2 pour le routeur Linksys

La connectivité sans fil est aujourd’hui une nécessité et pour cette raison, la sécurité sans fil est essentielle pour garantir la sécurité de votre réseau interne.

Conseils pour optimiser la vitesse de connexion Internet de Linksys

Conseils pour optimiser la vitesse de connexion Internet de Linksys

Maximiser la vitesse d’Internet est essentiel pour optimiser votre connexion réseau. Vous pouvez vivre une expérience de divertissement et de travail optimale en utilisant des ordinateurs, des téléviseurs connectés à Internet, des consoles de jeux, etc.