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.
Table des matières
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 ?