Désactiver la navigation dans les répertoires sous Apache
Lors de l’installation d’Apache sur un système Linux, la liste du contenu des répertoires est activée par défaut. Il peut s’agir d’une fonctionnalité souhaitable dans certains scénarios, mais il s’agit d’une faille de sécurité potentielle dans d’autres. Il est assez facile d’activer ou de désactiver ce paramètre pour chaque site Web (hôte virtuel) que vous avez configuré.
Dans ce guide, nous allons passer en revue les instructions étape par étape pour modifier la configuration Apache afin de masquer la liste du contenu du répertoire pour Apache.
Dans ce tutoriel, vous allez apprendre :
- Comment masquer la liste du contenu d’un répertoire dans Apache
Réception de l’erreur 403 Forbidden lorsque la liste du contenu du répertoire est désactivée
Désactiver la liste de contenu
Par défaut, la liste du contenu est activée. Cela signifie que si vous téléchargez des fichiers dans un répertoire et que vous ne parvenez pas à télécharger un fichier d’index (comme index.html ou index.php), le contenu du répertoire est répertorié et consultable par défaut. Voir la capture d’écran ci-dessous pour un exemple.
Le contenu de l’annuaire est actuellement répertorié sur le site Web
Les fichiers que vous voyez répertoriés dans la capture d’écran seront toujours accessibles, donc les « cacher » ressemble plus à de la sécurité par l’obscurité. Néanmoins, la désactivation de la liste des répertoires rendra plus difficile pour les attaquants d’en savoir plus sur la structure des répertoires de votre site et de trouver des fichiers sensibles.
Ouvrez le fichier de configuration de l’hôte virtuel avec nano ou votre éditeur de texte préféré. Notez que vous devrez
peut-être remplacer 000-default.confpar le nom de votre propre fichier de configuration.sudo nano /etc/apache2/sites-available/000-default.confDans ce fichier, ajoutez le code suivant à l’intérieur de la directive <Directory>.
Options FollowSymLinks AllowOverride NoneEnregistrez les modifications que vous avez apportées au fichier et fermez-le. Redémarrez ensuite Apache pour que les modifications prennent effet.
sudo systemctl restart apache2 Red Hat based systems: sudo systemctl restart httpd
Modifiez la configuration de votre hôte virtuel avec le paramètre -Indexes pour désactiver la liste de contenu
Vous devriez maintenant recevoir une erreur 403 Forbidden lorsque vous essayez d’accéder à un répertoire qui n’a pas de fichier d’index.
Réception de l’erreur 403 Forbidden lorsque la liste du contenu du répertoire est désactivée
Réflexions finales
Dans ce guide, nous avons vu comment désactiver la liste du contenu des répertoires dans le serveur Web Apache. Sa désactivation peut être considérée comme une « sécurité par l’obscurité », mais il est toujours recommandé de la désactiver, à moins que vous n’en ayez spécifiquement besoin.


