Publié le
16 avril 2024
Dans le vaste univers de l'administration des serveurs web, la sécurité est une préoccupation primordiale. À mesure que la transmission de données entre les clients et les serveurs devient de plus en plus vitale, garantir sa protection devient incontournable. Dans ce contexte, installer un serveur web sur une distribution Linux implique une tâche fondamentale : assurer la sécurité des données transmises. Au premier plan de cet effort se trouve la mise en œuvre du chiffrement Transport Layer Security (TLS). Pour quiconque travaille dans le développement web ou l'hébergement, maîtriser le chiffrement TLS n'est pas seulement une bonne pratique, mais une compétence de base pour protéger les informations sensibles échangées sur le web.
Dans ce premier article de notre série : Installation de serveurs web sur différentes distributions Linux nous explorons le processus d'installation et de configuration de l'un des serveurs web les plus populaires pour Linux “Apache Httpd“ pour activer le chiffrement TLS sur les systèmes d'exploitation populaires tels que Red Hat Enterprise Linux (RHEL), Debian et OpenSUSE. Ce guide détaillé fournit des étapes claires et pratiques pour mettre en œuvre une couche supplémentaire de sécurité sur vos serveurs Apache Htttpd, garantissant ainsi la confidentialité et l'intégrité des communications.
Installer et configurer Apache Httpd pour le chiffrement TLS - Processus complet
Mais avant de plonger dans le processus de configuration, il est essentiel de s'assurer que les prérequis suivants sont remplis :
Prérequis :
Mise à jour des paquets déjà présents. Des privilèges spéciaux seront nécessaires pour certaines opérations tout au long de la procédure :
RHEL
dnf update -y
Remarque: Utilisez yum si dnf n'est pas présent sur la machine
Ubuntu
apt update –y
Remarque : Utilisez apt-get si apt n'est pas présent sur la machine
OpenSUSE
zypper refresh
Installation du processus Apache :
Écrivez les différentes commandes pour chaque système :
RHEL
dnf install -y net-tools httpd
Ubuntu
sudo apt install apache2
OpenSUSE
zypper install -y apache2
Remarque: Le service ne devrait pas encore avoir démarré. Il peut être démarré avec le systemctl start httpd commande, après quoi il commencera à écouter sur le port 80 par défaut. Ce n'est pas sécurisé ; il est fortement recommandé d'utiliser https (port 443) et non http (port 80).
Vous souhaitez mettre en œuvre ces pratiques PKI ?
Obtenez des conseils d'experts pour mettre en œuvre des solutions PKI sécurisées pour votre organisation.
Obtenir de l'aide d'expertConfiguration d'Apache pour le chiffrement TLS :
Le mod_ssl package est requis. Ensuite, insérez les commandes suivantes pour chaque système :
RHE
dnf install -y mod_ssl
Ubuntu
apt a2enmod ssl
Ensuite, stockez la clé privée, le TLS et le certificat CA dans le répertoire de votre choix.
Une fois cela fait, modifiez le /etc/httpd/conf.d/ssl.conf fichier (/etc/apache2/sites-available/default-ssl.conf pour Ubuntu et OpenSUSE) et sous le
Définir le nom du serveur':
ServerName url.com
Si différents alias doivent être utilisés pour le serveur, ils doivent être ajoutés dans le champ Subject Alternative Name du certificat. Pour ajouter ces noms alternatifs à la configuration, ajoutez la ligne suivante :
ServerAlias www.url.com *.url.com
Définissez les chemins vers la clé privée, le certificat TLS et le certificat CA. Le nom commun du certificat TLS doit correspondre au nom qui sera utilisé pour le serveur (ici, url.com). Ces certificats peuvent être générés à l’aide du PKI de Stream ou de l’autorité d’enregistrement de Horizon.
SSLCertificateKeyFile "/path/url.com.key" SSLCertificateFile "/path/url.com.crt" SSLCACertificateFile "/path/ca.crt"
Remarque: Par défaut, TLS 1.2 et TLS 1.3 sont activés. Pour une sécurité renforcée, il est possible d'activer uniquement TLS 1.3 en ajoutant la ligne suivante :
SSLProtocol -All +TLSv1.3
Rendez la clé privée sécurisée et moins accessible en la rendant uniquement accessible à l'utilisateur root. Pour ce faire, attribuez à l'utilisateur root la propriété du fichier de clé et rendez le fichier lisible et modifiable uniquement par l'utilisateur root.
chown root:root /path/url.com.key
chmod 600 /path/url.com.key
Démarrer ou redémarrer le service :
[RHEL] systemctl restart httpd
[Ubuntu/OpenSUSE] systemctl restart apache2
Conclusion :
L'installation d'un serveur web sur une distribution Linux est une étape cruciale pour mettre en place un environnement d'hébergement web ; le choix dépend de vos exigences et préférences spécifiques. Elles offrent des fonctionnalités robustes et des optimisations de performance pour servir le contenu web efficacement. En suivant les instructions d'installation appropriées pour la distribution Linux que vous avez choisie, vous pouvez rapidement configurer un serveur web fiable et commencer à héberger vos sites web ou applications afin que le monde puisse y accéder.