« Installation de configuration du serveur web Apache 2.4 sous Debian Bullseye » : différence entre les versions

Aller à la navigation Aller à la recherche
Ligne 14 : Ligne 14 :
* Encore une fois, prenez garder à la manière dont les directives se chaînent. Cela peut conduire à de graves défaut de sécurité étant donné que la directive [http://httpd.apache.org/docs/2.4/fr/mod/mod_authz_core.html#authmerging authmerging] est par défaut à off dans apache. En gros, si vous interdisez l'accès au répertoire "config" avec une directive <Directory> puis que vous autorisez l'accès au répertoire parent à l'aide d'une directive <Location>, le répertoire config deviendra accessible en lecture et ce pour deux raisons : l'ordre d'application des directives (Location appliqué après Directory) et le fait que les autorisations d'accès s'annulent les unes les autres (authmerging à off).
* Encore une fois, prenez garder à la manière dont les directives se chaînent. Cela peut conduire à de graves défaut de sécurité étant donné que la directive [http://httpd.apache.org/docs/2.4/fr/mod/mod_authz_core.html#authmerging authmerging] est par défaut à off dans apache. En gros, si vous interdisez l'accès au répertoire "config" avec une directive <Directory> puis que vous autorisez l'accès au répertoire parent à l'aide d'une directive <Location>, le répertoire config deviendra accessible en lecture et ce pour deux raisons : l'ordre d'application des directives (Location appliqué après Directory) et le fait que les autorisations d'accès s'annulent les unes les autres (authmerging à off).
* '''De manière globale, préférez la directive <Directory> (et ses dérivés comme <files> <DirectoryMatch> ou <FilesMatch>) a la directive <Location> (et ses dérivés comme <LocationMatch>) quand vous sécurisez des chemins du système de fichier de votre machine.''' N'utilisez <Location> que si vous définissez les règles d'accès à une ressource qui ne se situe pas sur le système de fichier (page générée par une base de donnée par exemple)
* '''De manière globale, préférez la directive <Directory> (et ses dérivés comme <files> <DirectoryMatch> ou <FilesMatch>) a la directive <Location> (et ses dérivés comme <LocationMatch>) quand vous sécurisez des chemins du système de fichier de votre machine.''' N'utilisez <Location> que si vous définissez les règles d'accès à une ressource qui ne se situe pas sur le système de fichier (page générée par une base de donnée par exemple)
* La configuration de apache sous debian est modulaire, pensez cependant à lire l'ensemble de cette configuration, vous pourriez y trouver des surprises (y compris /etc/apache2/apache2.conf !). N'oubliez pas non l'ordre de lecture qui peut changer la manière dont les règles s'appliquant : <code>/etc/apache2/apache2.conf</code>, puis <code>conf-enabled/*.conf</code>, puis <code>sites-enabled/*.conf</code>
* La configuration de apache sous debian est modulaire, pensez cependant à lire l'ensemble de cette configuration, vous pourriez y trouver des surprises (y compris /etc/apache2/apache2.conf !). N'oubliez pas non l'ordre de lecture qui peut changer la manière dont les règles s'appliquant : <code>/etc/apache2/apache2.conf</code>, puis <code>conf-enabled/*.conf</code> (ordre alphanumérique), puis <code>sites-enabled/*.conf</code> (ordre alphanumérique).
* Faites attention aux directives Include fournies par certains paquets. Lisez toujours tout fichier que vous incluez à la configuration de apache ou d'une vhost !
* Faites attention aux directives Include fournies par certains paquets. Lisez toujours tout fichier que vous incluez à la configuration de apache ou d'une vhost !
* De même, faites attentions à certains paquets qui ont tendance à ajouter par défaut un fichier de configuration et à l'activer dans  <code>conf-enabled/</code>
* De même, faites attentions à certains paquets qui ont tendance à ajouter par défaut un fichier de configuration et à l'activer dans  <code>conf-enabled/</code>
4 206

modifications

Menu de navigation