Ressource pédagogique

Séquence 2 : installer et configurer NGINX pour le chiffrement TLS sous RHEL/Debian/OpenSUSE

23 avril 2024
4 min de lecture
Contenu expert

Publié le

23 avril 2024

Dans le vaste univers de l'administration de serveurs web, la sécurité s'impose comme une préoccupation majeure. À mesure que la transmission de données entre clients et serveurs devient vitale, en garantir la protection n'est plus négociable. Dans ce contexte, déployer un serveur web sur une distribution Linux implique une tâche fondamentale : assurer la sécurité des données transmises. Au premier rang de cette démarche figure la mise en œuvre du chiffrement Transport Layer Security (TLS). Pour toute personne impliquée dans le développement ou l'hébergement web, maîtriser le chiffrement TLS n'est pas seulement une bonne pratique, mais une compétence fondamentale pour protéger les informations sensibles échangées sur le web.

Voici le deuxième article de notre série : Installer des serveurs web sur différentes distributions Linux, dans lequel nous détaillons le processus d'installation et de configuration d'un reverse proxy / serveur web léger et performant : « NGINX », afin d'activer le chiffrement TLS sur des systèmes d'exploitation répandus tels que Red Hat Enterprise Linux (RHEL), Debian et OpenSUSE.

Ce guide détaillé propose des étapes claires et concrètes pour ajouter une couche de sécurité supplémentaire à vos serveurs web NGINX, garantissant ainsi la confidentialité et l'intégrité des communications.

Installer et configurer NGINX pour le chiffrement TLS sous RHEL/Debian/OpenSUSE

Mais avant de plonger dans le processus de configuration, il est essentiel de s'assurer que les prérequis suivants sont remplis :

Prérequis :

  1. Mettez à jour les paquets déjà installés. Des privilèges spécifiques seront requis pour certaines opérations tout au long de la procédure :

RHEL

dnf update -y

Note : utilisez yum si dnf n'est pas présent sur la machine.

Ubuntu

apt update –y

Note : utilisez apt-get si apt n'est pas présent sur la machine.

Envie de mettre en pratique ces bonnes pratiques PKI ?

Bénéficiez des conseils de nos experts pour déployer des solutions PKI sécurisées au sein de votre organisation.

Demander de l'aide

OpenSUSE

zypper refresh

Installation de NGINX :

  1. Saisissez la commande correspondant à votre système :

RHEL

dnf install -y nginx

Ubuntu

sudo apt install nginx

OpenSUSE

zypper install -y nginx

Note : le service ne devrait pas encore avoir démarré. Vous pouvez le lancer avec la commande systemctl start nginx, 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) plutôt que http (port 80).

2. Si un pare-feu est configuré, vous devez autoriser la communication via le port 443. Par exemple, avec la commande suivante pour firewall :

firewall-cmd --permanent --add-port={443/tcp}

3. Enfin, pour recharger le service de pare-feu :

firewall-cmd --reload

Configuration de NGINX pour le chiffrement TLS :

Pour configurer NGINX, vous pouvez soit éditer le fichier /etc/nginx/nginx.conf, soit créer des fichiers .conf dans /etc/nginx/conf.d. Si ces fichiers de configuration sont stockés ailleurs, un lien symbolique peut être créé dans le répertoire conf.d pour pointer vers le fichier de configuration.

Dans le fichier de configuration choisi, vous pouvez créer un serveur virtuel pouvant être configuré finement.

type: embedded-entry-inline id: 3iBFk9ffijsOEHA9jJhXku

Notes :

  • Le serveur doit écouter sur le port 443 et ssl doit être imposé.

  • Server_name est le nom d'hôte qui sera utilisé et qui exposera le serveur virtuel.

  • Le chemin vers le certificat du serveur et sa clé privée doit être renseigné. Grâce aux plateformes Stream et Horizon d'Evertrust, les certificats peuvent être émis et gérés sans accroc.

  • Les ssl_protocols peuvent être configurés. Il est fortement recommandé de n'activer que TLSv1.2 et TLSv1.3, ou uniquement TLSv1.3, pour une sécurité renforcée.

  • Le ssl_session_cache permet de mettre en cache les sessions SSL et de les partager entre les workers. Dans la configuration précédente, 10 mégaoctets sont autorisés, ce qui correspond à environ 4 000 sessions.

  • Le ssl_session_timeout définit la durée pendant laquelle la session peut s'exécuter avant expiration.

  • Le fichier www.hostname.com.key doit être configuré pour n'être accessible qu'à l'utilisateur root, par sécurité :

chown root:root /path/www.hostname.com.key

chmod 600 /path/www.hostname.com.key

Pour appliquer les modifications à la configuration NGINX, redémarrez le service :

Testez votre configuration NGINX :

nginx -t

puis

systemctl restart nginx

Conclusion :

En conclusion, installer un serveur web sur une distribution Linux est une étape déterminante dans la mise en place d'un environnement d'hébergement web. Le choix dépend de vos besoins et préférences spécifiques : chaque solution offre des fonctionnalités robustes et des optimisations de performance pour servir efficacement du contenu web. En suivant les instructions d'installation adaptées à votre distribution Linux, vous pouvez rapidement mettre en place un serveur web fiable et commencer à héberger vos sites ou applications à destination du monde entier.

Cela vous a-t-il été utile ?
Retour au centre d'apprentissage

Sommaire

Continuez à apprendre

Recevez nos derniers contenus pédagogiques et analyses PKI directement dans votre boîte mail.

En vous inscrivant, vous acceptez de recevoir nos communications. Vous pouvez vous désabonner à tout moment.

Contenus similaires

Evertrust PQC

Are European enterprises ready for Post-Quantum Cryptography (PQC) migration? The gaps and the path forward

September 10, 2025
1 min

Explore why PQC adoption lags in Europe, the real blockers, and how to achieve quantum-safe security.

Read more
Evertrust PQC

NIST Releases New Post-Quantum Cryptography Standards

September 10, 2025
1 min

Discover NIST’s new Post-Quantum Cryptography standards (FIPS 203, 204, 205) and how Evertrust is preparing to integrate them for enhanced cybersecurity.

Read more
Evertrust ACME

ACME Clients on Linux

February 12, 2024
1 min

The ACME protocol is a network protocol designed to automate the process of domain validation, deliverance and renewal of X.509 certificates. The process is set up between an ACME server and an ACME client.

Read more
Démarrer

Prêt à reprendre le contrôle de vos certificats ?

Échangez avec nos experts et découvrez comment Evertrust peut vous aider à mettre en place les meilleures pratiques en matière de PKI et de gestion du cycle de vie des certificats.