Geekflare est soutenu par notre public. Nous pouvons gagner des commissions d'affiliation en achetant des liens sur ce site.
Partager sur:

Comment installer et configurer ModSecurity sur Nginx

sécurité du mod nginx
Scanner de sécurité des applications Web Invicti – la seule solution qui offre une vérification automatique des vulnérabilités avec Proof-Based Scanning™.

Le serveur Web Nginx est utilisé sur plus de 30 % de site Web dans le monde entier et en croissance.

Compte tenu de l'augmentation des menaces Web en ligne, l'un des défis pour l'ingénieur Web est de bien durcissement et sécurisation de Nginx.

part de marché nginx

Nginx est bien connu pour ses performances et son serveur / proxy Web léger et utilisé sur de nombreux sites les plus fréquentés.

  • Pinterest.com
  • Reddit.com
  • wordpress.com
  • Stackoverflow.com
  • Mail.ru

Si vous hébergez vos applications Web sur Nginx et que vous êtes préoccupé par la sécurité, l'une des premières choses que vous souhaitez mettre en œuvre est Pare-feu d'applications Web (WAF).

Mod Security est un WAF Open Source de Trustwave SpiderLabs et a été rendu disponible pour Nginx en 2012.

Dans ce guide, je vais vous expliquer comment Télécharger, installer et configurer Mod Security avec Nginx.

La démonstration suivante est effectuée sur CentOS hébergé avec DigitalOcean.

Si vous êtes nouveau sur Nginx, je vous recommanderais de prendre ceci cours fondamental.

Download Nginx and ModSecurity

Vous pouvez soit télécharger le nginx directement sur votre serveur, soit sur votre PC local puis le transférer.

  • Téléchargez la dernière version à partir du lien ci-dessous

http://nginx.org/en/download.html

  • Si vous téléchargez directement sur le serveur, vous pouvez utiliser wget comme ci-dessous
wget http://nginx.org/download/nginx-1.9.15.tar.gz
  • Extrayez-les en utilisant la commande gunzip
gunzip -c nginx-1.9.15.tar.gz | tar xvf -
  • Vous verrez le nouveau dossier créé
drwxr-xr-x 8 1001 1001 4096 19 avril 12:02 nginx-1.9.15
  • Téléchargez la dernière version de Mod Security à partir du lien ci-dessous

https://github.com/SpiderLabs/ModSecurity

  • Vous pouvez utiliser les commandes ci-dessous à partir du serveur directement
wget https://www.modsecurity.org/tarball/2.9.1/modsecurity-2.9.1.tar.gz
gunzip -c modsecurity-2.9.1.tar.gz | tar xvf -

Faisons les installer

Install Nginx with Mod Security

Il est important de compiler le code source de sécurité Nginx et mod.

  • Connectez-vous à un serveur et assurez-vous d'avoir l'autorisation root.

Remarque : si vous faites sur un tout nouveau serveur, vous devrez peut-être installer les bibliothèques suivantes.

yum installer gcc make automake autoconf libtool pcre pcre-devel libxml2 libxml2-devel curl curl-devel httpd-devel

Prénom, compilons la sécurité des mods. Aller à modsecurity-2.9.1 dossier et utilisez les commandes ci-dessous.

./configure --enable-standalone-module make

Suivant, installez Nginx avec la sécurité mod

./configure --add-module = .. / modsecurity-2.9.1 / nginx / modsecurity make make install

Cela conclut que Nginx est installé avec Mod Security et qu'il est temps de le configurer.

Configure Mod Security with Nginx

Copier modsecurity.conf-recommandé & mappage unicode fichier du dossier extrait du code source ModSecurity téléchargé ci-dessus vers le dossier nginx conf. Vous pouvez également utiliser le trouver commander.

find / -name modsecurity.conf-recommandé find / -name unicode.mapping
[root@GeekFlare-Lab conf]# cp /opt/nginx/binary/modsecurity-2.9.1/modsecurity.conf-recommended /usr/local/nginx/conf/ [root@GeekFlare-Lab conf]# cp /opt/ nginx/binary/modsecurity-2.9.1/ unicode.mapping /usr/local/nginx/conf/ [root@GeekFlare-Lab conf]#

Renommons modsecurity.conf-recommandé à modsecurity.conf

mv modsecurity.conf-recommandé modsecurity.conf
  • Faites une sauvegarde du fichier nginx.conf
  • Ouvrez le fichier nginx.conf et ajoutez ce qui suit sous la directive «location /»
ModSecurityEnabled on; ModSecurityConfig modsecurity.conf;

Donc ça devrait ressembler à ça

location / {ModSecurityEnabled on; ModSecurityConfig modsecurity.conf; }

Désormais, Mod Security est intégré à Nginx. Redémarrez le Nginx pour vous assurer qu'il monte sans aucune erreur.

Vérifions…

Il existe deux méthodes possibles pour confirmer que Nginx est compilé avec Mod Security.

Première…

Répertoriez le module compilé en utilisant –V avec le fichier exécutable nginx.

[root@GeekFlare-Lab sbin]# ./ nginx -V
version de nginx : nginx/1.9.15 construit par gcc 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC) configure arguments : --add-module=../modsecurity-2.9.1/nginx/modsecurity [root @GeekFlare-Lab sbin]#

Seconde…

Accédez au dossier des journaux et affichez le fichier d'erreur, vous devriez voir ce qui suit

2016/05/21 21:54:51 [notice] 25352 # 0: ModSecurity pour nginx (STABLE) /2.9.1 (http://www.modsecurity.org/) configuré. 2016/05/21 21:54:51 [notice] 25352 # 0: ModSecurity: APR version compilée = "1.3.9"; version chargée = "1.3.9" 2016/05/21 21:54:51 [notice] 25352 # 0: ModSecurity: version compilée PCRE = "7.8"; version chargée = "7.8 2008-09-05" 2016/05/21 21:54:51 [notice] 25352 # 0: ModSecurity: version compilée LIBXML = "2.7.6"

Cela conclut que vous avez configuré avec succès ModSecurity avec Nginx.

Par défaut, la configuration est en mode détection uniquement, ce qui signifie qu'elle n'exécutera aucune action et protégez vos applications web.

Dans mon prochain article, j'ai expliqué comment configurer Ensemble de règles OWASP et activation de la sécurité des mods pour se protéger des vulnérabilités de sécurité Web.

Merci à nos commanditaires
Plus de bonnes lectures sur Nginx
Alimentez votre entreprise
Certains des outils et services pour aider votre entreprise à se développer.
  • Invicti utilise Proof-Based Scanning™ pour vérifier automatiquement les vulnérabilités identifiées et générer des résultats exploitables en quelques heures seulement.
    Essayez Invicti
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, moteur de recherche et tout ce dont vous avez besoin pour collecter des données Web.
    Essayez Brightdata
  • Semrush est une solution de marketing numérique tout-en-un avec plus de 50 outils de référencement, de médias sociaux et de marketing de contenu.
    Essayez Semrush
  • Intruder est un scanner de vulnérabilités en ligne qui détecte les failles de cybersécurité de votre infrastructure, afin d'éviter des violations de données coûteuses.
    Essayez Intruder