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

De Linux Server Wiki
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Ligne 8 : Ligne 8 :
* Même si les directives sont lues dans l'ordre dans lequel vous les inscrivez, certaines restent appliqués "avant" les autres : <Directory> avant htaccess avant <file> et en dernier <Location>
* Même si les directives sont lues dans l'ordre dans lequel vous les inscrivez, certaines restent appliqués "avant" les autres : <Directory> avant htaccess avant <file> et en dernier <Location>
* De manière globale, préférez la directive <Directory> a <Location> quand vous sécurisez des chemins du système de fichier de votre machine
* De manière globale, préférez la directive <Directory> a <Location> quand vous sécurisez des chemins du système de fichier de votre machine
* 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 : <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>, puis <code>sites-enabled/*.conf</code>
* Faites attention aux directives Include fournies par certains paquets. Lisez toujours tout fichier que vous incluez a la configuration de apache ou d'une vhost !
* Faites attention aux directives Include fournies par certains paquets. Lisez toujours tout fichier que vous incluez a la configuration de apache ou d'une vhost !
* De même, faites attentions a certains paquets qui ont tendance à ajouter par défaut un fichier de configuration et a l'activer dans  <code>conf-enabled/</code>
* De même, faites attentions a certains paquets qui ont tendance à ajouter par défaut un fichier de configuration et a l'activer dans  <code>conf-enabled/</code>

Version du 23 décembre 2015 à 14:04

Installation

aptitude install apache2

Considérations de sécurité

  • Même si les directives sont lues dans l'ordre dans lequel vous les inscrivez, certaines restent appliqués "avant" les autres : <Directory> avant htaccess avant <file> et en dernier <Location>
  • De manière globale, préférez la directive <Directory> a <Location> quand vous sécurisez des chemins du système de fichier de votre machine
  • 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 : /etc/apache2/apache2.conf, puis conf-enabled/*.conf, puis sites-enabled/*.conf
  • Faites attention aux directives Include fournies par certains paquets. Lisez toujours tout fichier que vous incluez a la configuration de apache ou d'une vhost !
  • De même, faites attentions a certains paquets qui ont tendance à ajouter par défaut un fichier de configuration et a l'activer dans conf-enabled/
  • Par défaut, debian autorise l'accès à /usr/share. Il peut être bon de désactiver globalement ce comportement en créant un fichier de configuration dans conf-enabled, quitte a réactiver l'accès au cas par cas.

Exemple d'erreur a ne pas faire

DocumentRoot /srv/http/
<Directory /srv/http/>
    require all granted
</Directory>
<Directory /srv/http/admin>
    require all denied
</Directory>
<Location />
  require all granted
</Location>

Ici, on autorise l'accès a /srv/http/, puis on interdit l'accès a /srv/http/admin, puis on réautorise l'accès a l'ensemble de l'arborescence avec la dernière directive Location. Résultat : votre interface d'admin est accessible de l'extérieur.

la gestion des virtualhosts

name-based

Ip-based

conf-available/security.core.conf