10 bonnes pratiques pour sécuriser et renforcer votre serveur Web Apache

Sécurisez et renforcez le serveur Web Apache en suivant les meilleures pratiques pour assurer la sécurité de votre application Web.

Le serveur Web est un élément crucial des applications Web. Une mauvaise configuration et la configuration par défaut peuvent exposer des informations sensibles, et c’est un risque.

En tant que propriétaire ou administrateur de site Web, vous devez effectuer régulièrement des analyses de sécurité sur votre site Web pour détecter les menaces en ligne afin de pouvoir agir avant qu’un pirate ne le fasse.

Passons en revue les configurations essentielles pour conserver votre serveur Web Apache.

La suite de toute la configuration se trouve dans httpd.conf de votre instance apache.

Remarque : effectuez une sauvegarde du fichier de configuration nécessaire avant toute modification, afin que la restauration soit facile en cas de problème.

Désactiver la requête HTTP de suivi

La valeur par défaut TraceEnable on autorise TRACE, ce qui interdit à tout corps de requête d’accompagner la requête.

Lorsque TraceEnable est désactivé, le serveur principal et mod_proxy renvoient une erreur 405 (Méthode non autorisée) au client.

TraceEnable sur permet le problème de traçage intersite et donne potentiellement la possibilité à un pirate de voler vos informations de cookie.

La solution

Résolvez ce problème de sécurité en désactivant la méthode TRACE HTTP dans Apache Configuration.

Vous pouvez le faire en modifiant/ajoutant la directive ci-dessous dans votre httpd.conf de votre serveur Web Apache.

TraceEnable off

Exécuter en tant qu’utilisateur et groupe distincts

Par défaut, Apache est configuré pour s’exécuter avec personne ou démon.

Ne définissez pas l’utilisateur (ou le groupe) sur root à moins que vous ne sachiez exactement ce que vous faites et quels sont les dangers.

La solution

Exécuter Apache dans son propre compte non root est une bonne chose. Modifier la directive utilisateur et groupe dans httpd.conf de votre serveur Web Apache

User apache 
Group apache

Désactiver la signature

Le paramètre Désactivé, qui est la valeur par défaut, supprime la ligne de pied de page.

Le paramètre On ajoute simplement une ligne avec le numéro de version du serveur et ServerName de l’hôte virtuel de service.

La solution

Il est bon de désactiver Signature, car vous ne souhaiterez peut-être pas révéler la version d’Apache que vous utilisez.

ServerSignature Off

Désactiver la bannière

Cette directive contrôle si le champ d’en-tête de réponse du serveur, qui est renvoyé aux clients, inclut une description du type de système d’exploitation générique du serveur ainsi que des informations sur les modules compilés.

La solution

ServerTokens Prod

Restreindre l’accès à un réseau ou une IP spécifique

Si vous souhaitez que votre site soit visualisé uniquement par une adresse IP ou un réseau spécifique, vous pouvez modifier l’annuaire de votre site dans httpd.conf

La solution

Donnez l’adresse réseau dans la directive Autoriser.

<Directory /yourwebsite>    
Options None    
AllowOverride None    
Order deny,allow    
Deny from all    
Allow from 10.20.0.0/24  
</Directory>

Donnez l’adresse IP dans la directive Autoriser.

<Directory /yourwebsite>
Options None
AllowOverride None
Order deny,allow
Deny from all
Allow from 10.20.1.56
</Directory>

Utilisez uniquement TLS 1.2

SSL 2.0, 3.0, TLS 1, 1.1 souffriraient de plusieurs failles cryptographiques.

Besoin d’aide pour configurer SSL ? reportez-vous à ce guide.

La solution

SSLProtocol -ALL +TLSv1.2

Désactiver la liste des répertoires

Si vous n’avez pas index.html sous votre répertoire de site Web, le client verra tous les fichiers et sous-répertoires répertoriés dans le navigateur (comme ls –l output).

La solution

Pour désactiver la navigation dans les répertoires, vous pouvez soit définir la valeur de la directive Option sur « Aucun » ou « -Indexes »

<Directory />
Options None
Order allow,deny
Allow from all
</Directory>

OU

<Directory />
Options -Indexes
Order allow,deny
Allow from all
</Directory>

Supprimer les modules DSO inutiles

Vérifiez votre configuration pour supprimer les modules DSO redondants.

De nombreux modules sont activés par défaut après l’installation. Vous pouvez supprimer ceux dont vous n’avez pas besoin.

Désactiver les chiffrements nuls et faibles

N’autorisez que les chiffrements forts, de sorte que vous fermez toutes les portes qui tentent de serrer la main sur les suites de chiffrement inférieures.

La solution

SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM

Rester au courant

Comme Apache est un open-source actif, le moyen le plus simple d’améliorer la sécurité d’Apache Web Server est de conserver la dernière version. De nouveaux correctifs et correctifs de sécurité sont ajoutés dans chaque version. Mettez toujours à niveau vers la dernière version stable d’Apache.

Ci-dessus ne sont que quelques-unes des configurations essentielles, et si vous recherchez des informations détaillées, vous pouvez consulter mon guide de sécurité et de renforcement étape par étape.

Vous avez apprécié la lecture de l’article ? Que diriez-vous de partager avec le monde ?