Comment configurer Modsecurity avec Apache sur Debian / Ubuntu

Comment configurer Modsecurity avec Apache sur Debian / Ubuntu

Le Apache Le serveur Web est hautement personnalisable et peut être configuré de plusieurs manières pour répondre à vos besoins. Il existe de nombreux modules tiers que vous pouvez utiliser pour configurer Apache à votre préférence.

Modsecurity est une source ouverte Waf (Firewall d'applications Web) qui est originaire du serveur Web Apache. C'était initialement un module Apache uniquement, mais il a grandi au cours de l'année pour devenir un pare-feu d'application Web à part entière. Il est maintenant soutenu par Nginx et même IIS.

Modsecurity inspecte les demandes entrantes au serveur Web contre un ensemble prédéfini de règles. En règle générale, il fournit un ensemble de règles appelées CRS (Ensemble de règles de base) qui protègent un site Web d'un éventail d'attaques d'applications Web telles que l'injection SQL, les XSS et le détournement de session parmi d'autres exploits.

[Vous pourriez également aimer: 5 outils pour scanner un serveur Linux pour les logiciels malveillants et les rootkits]

Le Modsecurity Le pare-feu d'application fait partie intégrante de PCI DSS Conformité dans les sites de blindage des attaques externes. Lorsque le module est activé, il déclenche une «erreur interdite 403», ce qui implique simplement que vous avez des autorisations insuffisantes pour accéder à la ressource sur le serveur Web.

Dans ce guide, nous vous montrerons comment configurer et configurer Modsecurity travailler avec Apache sur Debian et Ubuntu Linux.

Étape 1: Installez Modsecurity sur Ubuntu

La première étape consiste à installer Modsecurity. Nous commencerons par rafraîchir les listes de colis comme suit:

$ sudo apt mise à jour 

Ensuite, installez le Modsecurity Package aux côtés d'autres dépendances et bibliothèques.

$ sudo apt install libapache2-mod-security2 
Installez ModSecurity sur Ubuntu

Ensuite, activez le module.

$ sudo a2enmod Security2 

Puis redémarrez le serveur Web Apache pour appliquer les modifications.

$ sudo systemctl redémarrer apache2 

À ce point, Modsecurity est installé avec succès. Voyons maintenant le configurer.

Étape 2: Configurer le modsecurity dans Ubuntu

Par défaut, Modsecurity n'est configuré que pour détecter et enregistrer l'activité suspecte. Nous devons faire une étape supplémentaire et le configurer non seulement pour détecter mais également bloquer l'activité suspecte.

Copier, la valeur par défaut Modsecurity fichier de configuration - modsecurity.Conf-recommandé - à un nouveau fichier tel que prévu dans la commande ci-dessous.

$ sudo cp / etc / modsecurity / modsecurity.Conf-recommandé / etc / modsecurity / modsecurity.confli 

À l'aide de votre éditeur de texte préféré, ouvrez le fichier

$ sudo nano / etc / modsecurity / modsecurity.confli 

Localisez la ligne:

Secruleengine Detectionlyly 

Réglez-le sur:

Secruleengine sur 
Configurer le modsecurity sur Ubuntu

Enregistrer les modifications et quitter le fichier.

Pour appliquer les modifications dans Apache, redémarrer le serveur Web.

$ sudo systemctl redémarrer apache2 

Étape 3: Télécharger OWASP Modsecurity Core Ruleset

L'étape suivante consiste à télécharger le dernier ensemble de règles de base de modsecurity owasp (CRS) à partir de la page GitHub.

Clone le référentiel OWASP GIT comme indiqué.

$ git clone https: // github.com / coreruleset / comeruleset.git 

Naviguer dans le répertoire.

$ CD Coreruleset / 

Assurez-vous de déplacer le CRS-Settup.confli.exemple filer dans le répertoire modsecurity et le renommer comme CRS-Settup.confli.

$ sudo mv CRS-Settup.confli.Exemple / etc / modsecurity / CRS-Settup.confli 

De plus, déplacez le règles répertoire au modsecurity Annuaire aussi.

$ sudo mv Règles / etc / modsecurity / 

Ensuite, modifiez le Sécurité2.confli déposer.

$ sudo nano / etc / apache2 / mods-compatible / security2.confli 

Assurez-vous qu'il contient les lignes suivantes.

Inclue Outtional / etc / ModSecurity / *.conf inclure / etc / modsecurity / règles / *.confli 
Configurer les règles de modsecurity sur Ubuntu

Puis redémarrer Apache pour les changements pour persister.

$ sudo systemctl redémarrer apache2 

Laissez-nous maintenant tester notre configuration de modsecurity.

Étape 4: Test de la configuration de la Modsecurity sur Ubuntu

Enfin, nous devons tester cela Modsecurity peut détecter et bloquer le trafic HTTP suspect. Pour y parvenir, nous devons modifier le fichier hôte virtuel par défaut.

$ sudo nano / etc / apache2 / sites-disponible / 000-défaut.confli 

Ensuite, nous créerons une règle de blocage qui bloquera l'accès à une certaine URL lorsque vous accédez à un navigateur Web.

Ajoutez ces lignes à la fin avant le 'VirtualHost'Tag de clôture.

Secruleengine on Secrule Args: TestParam "@contitains test" "ID: 254, Deny, Status: 403, MSG:" Tester réussi "" 

N'hésitez pas à définir le 'identifiant' et 'msg'Tags à quelles que soient les valeurs souhaitables.

Test Modsecurity sur Ubuntu

Puis redémarrez le Apache Webserver pour appliquer les modifications apportées au fichier de configuration de l'hôte virtuel.

$ sudo systemctl redémarrer apache2 

Sur votre navigateur Web, essayez de visiter l'URL montrée avec ?TestParam = test à la fin.

http: // server-ip /?TestParam = test 

Vous obtenez un «Erreur interdite 403» indiquant que vous avez été empêché d'accéder à la ressource.

Modsecurity 403 Erreur interdite

Vous pouvez en outre confirmer que le client a été bloqué en vérifiant les journaux d'erreur comme suit.

$ cat / var / log / apache2 / erreur.Journal | grep «Tester réussi» 
Vérifiez les journaux Apache

[Vous pourriez également aimer: comment installer Modsecurity pour Nginx sur Debian / Ubuntu]

C'est la confirmation que nous avons mis en place avec succès Modsecurity Pour détecter et bloquer le trafic indésirable. Dans ce guide, nous vous avons parcouru le processus de configuration Modsecurity avec Apache sur Debian / Ubuntu systèmes.