LINUX:HTTP - Paramétrage commun

De WIKI sur Linux (ADB)
Aller à la navigation Aller à la recherche

retour au serveur Web


But

Le répertoire "/etc/httpd/conf.d" comporte des configurations particulières propre à un logiciel. On peut les classer en deux catégories:

  • ceux ayant une portée générale
  • ceux propres à un site

Nous allons individualiser parmi la première catégorie, ceux qui nous intéressent et éventuellement ajouter nos propres fichiers.

Nous avons noté ce répertoire "/etc/httpd/conf.commun.d".


Sélection

Parmi les paquets installés cités plus haut auquel on a ajouté celui de PHP, on a sélectionné quelques incontournables:

  • ssl.conf : qui paramètre le cryptage SSL
  • php.conf : qui paramètre l'utilisation de PHP
  • autoindex.conf : venant avec le module "mod_autoindex"

Dans le fichier "ssl.conf", on a éliminé la section "<VirtualHost ...>" car on va utiliser de nombreuses machines virtuelles par la suite.

On ajoute la cause:


SSLProtocol  all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1

On privilégie les deux derniers protocoles: TLSv1.2 , TLSv1.3

Pour le fichier "php.conf", on a éliminé la section "<IfModule mod_php.c>" car on utilise le service "php-fpm.service".

De plus, dans le cas où on active plusieurs versions de PHP, la section "<IfModule !mod_php.c>" doit être individualisée en fonction de la version comme expliqué dans l'article sur la Coexistence de plusieurs versions de PHP.

Comme on n'utilise pas le module "mod_userdir" que nous avons désactivé, on ne le reprend pas.


On peut créer un fichier lié au module "mod_headers" qu'on a nommé "headers.conf". Voici un exemple de contenu:


Header always set Strict-Transport-Security "max-age=63072000; includeSubdomains;"
Header always append X-Frame-Options SAMEORIGIN
Header always set X-Content-Type-Options nosniff
Header always set X-XSS-Protection "1; mode=block"
Header set Content-Language "fr-FR"

On y a rassemblé diverses directives qui sont valables pour nos différents sites. D'autres sont ajoutées spécifiquement à la configuration du site car certaines perturbes le bon fonctionnement de certains.

En fonction de votre installation, d'autres fichiers pourraient être ajoutés.


Fichier httpd.conf

Pour que le contenu de ce répertoire "conf.commun.d" soit actif, il faut ajouter une clause en bas du fichier "/etc/httpd/conf/httpd.conf":


Include /etc/httpd/conf.commun.d/*.conf

Par cette ligne, tous les fichiers de type ".conf" du répertoire "conf.commun.d" seront ajoutés.

On teste la configuration:

httpd -t

et si tout va bien, on redémarre le service Apache.





retour au serveur Web