Configuration du serveur Web Apache - Debian 8.0 Jessie
Rédigé par Marc GUILLAUME | Aucun commentaireTraduction de la page https://workaround.org/ispmail/jessie/apache-web-server
Maintenant que vous avez une clé et un certificat en cours de validité vous êtes prêt à installer votre serveur web. Vous en aurez besoin pour l'interface publique du webmail Roundcube, si vous voulez l'installer, et pour PHPMyAdmin, l'interface de gestion de bases de données MySQL.
L'installation du serveur web Apache sur Debian range toutes les configurations des hôtes virtuels (voir la documentation Apache sur les virtual hosts) dans le répertoire /etc/apache2/sites-available/
. Après l'installation, et avant toute configuration manuelle, il y a deux fichiers dans ce répertoire :
- 000-default.conf
- Ce fichier concerne le répertoire
/var/www
via HTTP et est activé par défaut. Nous allons éditer ce fichier pour que si un utilisateur accède à votre serveur web par le protocole HTTP il soit automatiquement redirigé sur le protocole HTTPS. - default-ssl.conf
- Ce fichier concerne aussi le répertoire
/var/www
mais cette fois via HTTPS. Il utilise un certificat auto-signé créé automatiquement appelé « snake oil » (il n'y a pas de page Wikipedia française correspondante). Nous allons activer cet hôte virtuel pour y configurer l'interface du webmail Roundcube.
Pour activer la configuration d'un tel hôte virtuel vous pouvez utiliser la commande a2ensite
(Pour « Apache version 2 enable site », ou activation de site pour la version 2 d'Apache). Elle va créer un lien symbolique de /etc/apache2/sites-available/FILE
vers /etc/apache2/sites-enabled/FILE
.
Note : Debian Jessie est livrée avec la version 2.4 d'Apache. Celle-ci impose que tous les fichiers de configuration se terminent par
.conf
. Attendez-vous à des erreurs bizarres si vous oubliez ce suffixe.
Hôte virtuel pour HTTPS
Éditez le fichier /etc/apache2/sites-available/default-ssl.conf
. Changez ces deux lignes pour qu'Apache utilise la clé et le certificat créés au chapitre précédent :
SSLCertificateFile /etc/ssl/certs/mailserver.pem SSLCertificateKeyFile /etc/ssl/private/mailserver.pem
Activez le module de chiffrement SSL :
a2enmod ssl
Activez l'hôte virtuel pour HTTPS :
a2ensite default-ssl
Rlancez Apache :
service apache2 reload
Maintenant si vous faîtes pointer votre serveur web sur https://YOURSERVER/
il devrait afficher la page web par défaut d'Apache :
Si vous ne voyez pas cette page lancez la commande « apache2ctl configtest
» pour voir si Apache détecte quelque problème évident. Ou vérifiez le fichier de log /var/log/apache2/error.log
à la recherche d'un message d'erreur.
Mettez en place la redirection de HTTP vers HTTPS
Pour les utilisateurs qui taperaient « http » au lieu de « https », il faut mettre en place une redirection automatique, pour qu'ils soient redirigés sur l'URL sécurisée. Éditez le fichier /etc/apache2/sites-available/000-default.conf
et insérez-y :
Redirect permanent / https://YOUR.MAIL.SERVER/
Vous pouvez mettre cette ligne n'importe où dans la section VirtualHost
. Bien entendu il faut que vous remplaciez YOUR.MAIL.SERVER
par le nom de domaine pleinement qualifié de votre serveur de mail. Retirez (ou commentez) la ligne DocumentRoot
ici aussi. La configuration de l'hôte virtuel étant activée par défaut, vous n'avez qu'à relancer le serveur web pour que vos modifications soient prises en compte :
service apache2 reload
Maintenant rechargez l'URL http://YOUR.MAIL.SERVER/
dans votre navigateur (HTTP et pas HTTPS !) et vérifiez que vous êtes bien redirigé sur le site en HTTPS.