Ce guide concerne NGINX Open Source. Vérifiez la version, les modules compilés ou chargés et les particularités de votre paquet.
Identifier où TLS se termine
En terminaison TLS, NGINX déchiffre les échanges clients et peut traiter HTTP. Avec un upstream HTTPS, il établit une seconde connexion chiffrée ; ce ne sont pas les mêmes certificats ni nécessairement les mêmes noms. En passthrough stream, il relaie le flux sans devenir le terminateur TLS de l’application.
Un certificat serveur établit une identité côté service. Un certificat client concerne l’authentification du client quand elle est demandée. Leur simple présence sur le disque ne configure pas cette politique. Identifiez le nom attendu, la chaîne de certification, les autorités de confiance et la clé privée correspondante.
Sources : NGINX / F5, Configuring HTTPS servers ; NGINX / F5, Module ngx_http_ssl_module ; NGINX / F5, Module ngx_stream_proxy_module.
Préparer une écoute HTTPS
Le fragment appartient au contexte http ; les chemins doivent pointer vers une chaîne et une clé valides pour le laboratoire. Les versions TLS autorisées doivent être compatibles avec le binaire et sa bibliothèque. Ce fragment n’est pas une politique complète de chiffrement ou de conformité.
Le fichier de certificat doit présenter la chaîne dans l’ordre attendu. Protégez la clé privée et contrôlez qui peut lire sa copie et ses sauvegardes. Une redirection HTTP vers HTTPS est une décision séparée : elle doit préserver le nom public attendu sans construire une destination à partir d’une donnée non maîtrisée.
server {
listen 127.0.0.1:8443 ssl;
server_name revision.example;
ssl_certificate /etc/nginx/tls/revision-chain.pem;
ssl_certificate_key /etc/nginx/tls/revision-key.pem;
ssl_protocols TLSv1.2 TLSv1.3;
location / {
proxy_pass http://127.0.0.1:9000;
}
} Sources : NGINX / F5, Configuring HTTPS servers ; NGINX / F5, Module ngx_http_ssl_module.
Séparer handshake et réponse HTTP
Un échec TLS peut se produire avant toute requête HTTP. Comparez nom utilisé, SNI, certificat reçu, chaîne et protocoles. Tester l’adresse IP sans le nom peut sélectionner un autre server ou échouer sur l’identité. Désactiver la validation du certificat ne démontre pas que cette identité est correcte.
Pour l’upstream HTTPS, examinez séparément l’autorité de confiance, le nom vérifié, proxy_ssl_verify et proxy_ssl_server_name. Une réussite entre client et NGINX ne prouve pas que NGINX authentifie correctement le backend. Les journaux doivent préciser le côté de la panne.
Sources : NGINX / F5, Module ngx_http_proxy_module ; NGINX / F5, Module ngx_http_ssl_module ; NGINX / F5, Module ngx_http_log_module.
Exercice : nom correct et nom incorrect
Préparez une autorité de laboratoire et un certificat adapté. Testez le nom correct avec cette autorité, puis un nom qui ne figure pas dans le certificat. Décrivez pourquoi la seconde validation doit échouer, et distinguez ce refus du cas où le backend HTTP est indisponible.
Votre recette doit conserver la validation du certificat. Le résultat dépend du matériel de confiance réellement préparé ; aucun succès n’est supposé dans ce guide. Pour diagnostiquer, comparez certificat attendu et reçu avant de changer les versions ou les suites de chiffrement.
Sources : NGINX / F5, Configuring HTTPS servers ; NGINX / F5, Module ngx_http_ssl_module.
Sources et portée
Références consultées le . Les exemples utilisent des noms et adresses de documentation à remplacer. Les commandes de lecture affichent l’existant ; les captures et requêtes de diagnostic sont à limiter au périmètre autorisé.
- NGINX / F5 — Configuring HTTPS servers · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Module ngx_http_ssl_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Module ngx_stream_proxy_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Module ngx_http_proxy_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
- NGINX / F5 — Module ngx_http_log_module · Référence officielle ; vérifier le périmètre de version · consulté le 3 octobre 2026.
Retrouver le parcours de lecture F5 NGINX