Naxsi est un logiciel qui étend Nginx (module). Il fournit un WAF (Web Application Firewall) et protège vos sites des injections XSS et SQL, deux vulnérabilités bien connues. Selon ses développeurs, Naxsi est un module nécessitant peu d'entretien, donc une fois installé, vous devriez voir une augmentation considérable de la sécurité de votre site sans trop de tracas.
Dans cette doc, vous allez voir comment nous pouvons ajouter le module Naxsi à une installation Nginx nouvelle ou existante sur Ubuntu 14.04.
Étape 1A: Installation de Naxsi sans une installation Nginx existante
Si vous n'avez pas encore installé Nginx sur votre serveur, vous devez suivre cette étape. Si vous disposez déjà d'une installation Nginx existante, suivez l'étape 1B. Avant d'installer Naxsi, il pourrait être judicieux de mettre à jour notre système. Pour ce faire, exécutez:
apt-get update
Ensuite, nous pouvons installer Naxsi. En utilisant apt-get
pour l'installation, Naxsi et ses dépendances seront installés. Naxsi sera automatiquement démarré au démarrage.
apt-get install nginx-naxsi
Étape 1B: Installation de Naxsi avec une installation Nginx existante
L'étape 1A ne peut pas être suivie si Nginx est déjà installé, car le nginx-naxsi
package sera Nginx + Naxsi. Si vous avez déjà Nginx et que vous voulez Naxsi en plus de cela, généralement, le remplacement du nginx-core
package par le nginx-naxsi
package devrait fonctionner correctement. Il est judicieux de créer une sauvegarde de préférence de l'ensemble de votre serveur, et le /etc/nginx/
répertoire doit également être sauvegardé.
Si possible, déployez un nouveau serveur avec une toute nouvelle installation Nginx à l'aide du nginx-naxsi
package. Sinon, sauvegardez votre serveur et tapez:
apt-get install nginx-naxsi
Cela devrait installer Naxsi et remplacer le Nginx existant, mais conserver tous vos fichiers.
Étape 2: Modification des paramètres Naxsi
Afin d'activer Naxsi, ouvrez le fichier /etc/nginx/nginx.conf
:
vi /etc/nginx/nginx.conf
et recherchez la section suivante:
# nginx-naxsi config
##
# Uncomment it if you installed nginx-naxsi
##
# include /etc/nginx/naxsi_core.rules;
Retirez le #
devant de include
pour charger les règles Naxsi, ce qui activera Naxsi. Après avoir fait ce changement, la ligne devrait ressembler à ceci:
inclure /etc/nginx/naxsi_core.rules;
La configuration de Naxsi se trouve dans /etc/nginx/naxsi.rules
. Vous pouvez voir ce qu'il fait et éventuellement modifier certains paramètres, en fonction de vos besoins et du type de site Web que vous hébergez.
Après avoir activé Naxsi et modifié la configuration, nous devons activer Naxsi pour notre site par défaut manuellement. Ouvert /etc/nginx/sites-enabled/default
:
vi /etc/nginx/sites-enabled/default
Afin d'activer Naxsi sur cet emplacement, supprimez le #
si présent, sinon laissez la include
ligne de cette façon et n'ajoutez pas de a #
.
# Uncomment to enable naxsi on this location
include /etc/nginx/naxsi.rules;
Étape 3: désactivation du mode d'apprentissage
Afin de permettre à Naxsi de protéger votre site, nous devons désactiver le mode d'apprentissage. Ouvert /etc/nginx/naxsi.rules
:
vi /etc/nginx/naxsi.rules
Trouvez la chaîne LearningMode
et placez-la #
devant. Cela commente la ligne et désactive ainsi le mode d'apprentissage dans la configuration.
Étape 4: redémarrage de Naxsi
Redémarrez Nginx pour que les modifications prennent effet:
service nginx reload
Vous pouvez maintenant voir tous les avertissements de sécurité de Naxsi dans le journal Nginx:
tail -f /var/log/nginx/error.log