Maison Opération et maintenance Nginx Analyser les détails de la configuration HTTPS et de la mise en œuvre de la gestion des certificats de Nginx

Analyser les détails de la configuration HTTPS et de la mise en œuvre de la gestion des certificats de Nginx

Aug 05, 2023 am 08:57 AM
nginx 证书管理 https配置

Analyse des détails de la configuration Nginx HTTPS et de la mise en œuvre de la gestion des certificats

Dans le domaine de la sécurité des informations réseau, le protocole HTTPS est une technologie de communication sécurisée très importante. Il assure le cryptage, l'authentification de l'identité et la protection de l'intégrité du mécanisme de transmission des données sur Internet. Nginx est un serveur Web et un serveur proxy inverse hautes performances qui prend en charge non seulement le protocole HTTP, mais également le protocole HTTPS. Dans cet article, nous analyserons les détails d'implémentation de la configuration HTTPS et de la gestion des certificats de Nginx, et donnerons des exemples de code correspondants.

  1. Générer un certificat HTTPS
    Pour utiliser le protocole HTTPS, vous devez d'abord générer une paire de clés publiques et privées et un certificat SSL. Ces fichiers peuvent être générés à l'aide de l'outil openssl. Voici un exemple :
$ openssl genrsa -out private.key 2048
$ openssl req -new -key private.key -out csr.csr
$ openssl x509 -req -days 365 -in csr.csr -signkey private.key -out certificate.crt
Copier après la connexion

Dans le code ci-dessus, private.key est le fichier de clé privée généré, csr.csr est le fichier de demande de certificat et < code>certificate .crt est le certificat SSL final généré. private.key是生成的私钥文件,csr.csr是证书请求文件,certificate.crt是最终生成的SSL证书。

  1. Nginx配置HTTPS
    在Nginx的配置文件中,可以通过添加以下几行配置来启用HTTPS:
server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/certificate.crt;
    ssl_certificate_key /path/to/private.key;
}
Copier après la connexion

上述代码中的listen指令定义了监听的端口和协议,ssl_certificate指令定义了SSL证书的路径,ssl_certificate_key指令定义了私钥文件的路径。

  1. 证书链和中间证书
    在一些情况下,SSL证书可能由多个证书组成,其中一个是SSL证书本身,其余的是中间证书。在Nginx的配置文件中,可以通过以下方式配置中间证书:
server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/certificate.crt;
    ssl_certificate_key /path/to/private.key;
    ssl_trusted_certificate /path/to/intermediate.crt;
}
Copier après la connexion

上述代码中的ssl_trusted_certificate指令定义了中间证书的路径。当浏览器与Nginx建立连接时,Nginx会将SSL证书链一同传输给浏览器,以供验证。

  1. 强制使用HTTPS
    在许多情况下,网站希望所有的HTTP请求都自动重定向到HTTPS。可以通过以下方式配置Nginx达到此目的:
server {
    listen 80;
    server_name example.com;
    return 301 https://$host$request_uri;
}
Copier après la connexion

上述代码中的return

    Configuration Nginx HTTPS
      Dans le fichier de configuration Nginx, vous pouvez activer HTTPS en ajoutant les lignes de configuration suivantes :

    1. $ openssl x509 -in certificate.crt -text -noout
      Copier après la connexion
    2. La définition de la directive listen ci-dessus code Le port d'écoute et le protocole sont spécifiés, la directive ssl_certificate définit le chemin d'accès au certificat SSL et la directive ssl_certificate_key définit le chemin d'accès au fichier de clé privée.
        Chaînes de certificats et certificats intermédiaires
      • Dans certains cas, un certificat SSL peut être composé de plusieurs certificats, dont l'un est le certificat SSL lui-même et les autres sont des certificats intermédiaires. Dans le fichier de configuration Nginx, le certificat intermédiaire peut être configuré de la manière suivante :
      $ openssl req -in csr.csr -text -noout
      Copier après la connexion
        La directive ssl_trusted_certificate dans le code ci-dessus définit le chemin d'accès au certificat intermédiaire. Lorsque le navigateur établit une connexion avec Nginx, Nginx transmettra la chaîne de certificat SSL au navigateur pour vérification.
        1. Forcer HTTPS
      Dans de nombreux cas, les sites Web souhaitent que toutes les requêtes HTTP soient automatiquement redirigées vers HTTPS. Nginx peut être configuré pour y parvenir en :
      • $ openssl rsa -in private.key -check
        $ openssl x509 -noout -modulus -in certificate.crt | openssl md5
        $ openssl rsa -noout -modulus -in private.key | openssl md5
        Copier après la connexion
      • La directive return dans le code ci-dessus redirige toutes les requêtes HTTP vers HTTPS.
      • Gestion des certificats
      • Dans les applications réelles, les certificats SSL peuvent expirer ou devoir être mis à jour, et une gestion des certificats correspondante est requise. Voici quelques opérations courantes de gestion des certificats et un exemple de code correspondant :

      Afficher les informations du certificat SSL :

      $ openssl verify -CAfile intermediate.crt certificate.crt
      Copier après la connexion
      🎜🎜Afficher les informations de demande de certificat : 🎜🎜rrreee🎜🎜Vérifiez que le certificat SSL et la clé privée correspondent : 🎜🎜rrreee 🎜🎜Vérifiez la validité de la chaîne de certificats : 🎜🎜rrreee🎜Grâce aux opérations de gestion de certificat ci-dessus, vous pouvez visualiser, vérifier et mettre à jour le certificat SSL. 🎜🎜Résumé : 🎜Cet article analyse les détails d'implémentation de la configuration HTTPS et de la gestion des certificats de Nginx, et donne des exemples de code correspondants. Grâce aux opérations de configuration et de gestion de certificats ci-dessus, nous pouvons mettre en œuvre une communication HTTPS sécurisée sur Nginx et gérer efficacement les certificats SSL. 🎜

      Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment résoudre nginx403 Comment résoudre nginx403 Apr 14, 2025 am 10:33 AM

Comment corriger l'erreur interdite Nginx 403? Vérifier les autorisations de fichier ou de répertoire; 2. Vérifier le fichier .htaccess; 3. Vérifiez le fichier de configuration NGINX; 4. Redémarrer Nginx. D'autres causes possibles incluent les règles de pare-feu, les paramètres de Selinux ou les problèmes d'application.

Comment résoudre l'erreur Nginx403 Comment résoudre l'erreur Nginx403 Apr 14, 2025 pm 12:54 PM

Le serveur n'a pas l'autorisation d'accéder à la ressource demandée, ce qui donne une erreur NGINX 403. Les solutions incluent: vérifier les autorisations de fichiers. Vérifiez la configuration .htaccess. Vérifiez la configuration de Nginx. Configurez les autorisations Selinux. Vérifiez les règles du pare-feu. Dépanner d'autres causes telles que les problèmes de navigateur, les défaillances du serveur ou d'autres erreurs possibles.

Comment résoudre le problème du domaine croisé nginx Comment résoudre le problème du domaine croisé nginx Apr 14, 2025 am 10:15 AM

Il existe deux façons de résoudre le problème du domaine transversal NGINX: modifiez les en-têtes de réponse transversale: ajoutez des directives pour autoriser les demandes de domaine croisé, spécifier des méthodes et des en-têtes autorisés et définir le temps du cache. Utilisez le module CORS: Activez les modules et configurez les règles CORS pour permettre des demandes, des méthodes, des en-têtes et du temps de cache.

Comment démarrer Nginx dans Linux Comment démarrer Nginx dans Linux Apr 14, 2025 pm 12:51 PM

Étapes pour démarrer Nginx dans Linux: Vérifiez si Nginx est installé. Utilisez SystemCTL Start Nginx pour démarrer le service NGINX. Utilisez SystemCTL Activer Nginx pour activer le démarrage automatique de Nginx au démarrage du système. Utilisez SystemCTL Status Nginx pour vérifier que le démarrage est réussi. Visitez http: // localhost dans un navigateur Web pour afficher la page de bienvenue par défaut.

Comment résoudre l'erreur Nginx304 Comment résoudre l'erreur Nginx304 Apr 14, 2025 pm 12:45 PM

Réponse à la question: 304 Erreur non modifiée indique que le navigateur a mis en cache la dernière version de ressource de la demande du client. Solution: 1. Effacer le cache du navigateur; 2. Désactiver le cache du navigateur; 3. Configurer Nginx pour permettre le cache client; 4. Vérifier les autorisations du fichier; 5. Vérifier le hachage du fichier; 6. Désactiver le CDN ou le cache proxy inversé; 7. Redémarrez Nginx.

Comment configurer Nginx dans Windows Comment configurer Nginx dans Windows Apr 14, 2025 pm 12:57 PM

Comment configurer Nginx dans Windows? Installez Nginx et créez une configuration d'hôte virtuelle. Modifiez le fichier de configuration principale et incluez la configuration de l'hôte virtuel. Démarrer ou recharger nginx. Testez la configuration et affichez le site Web. Activer sélectivement SSL et configurer les certificats SSL. Définissez sélectivement le pare-feu pour permettre le trafic Port 80 et 443.

Comment vérifier si Nginx est démarré Comment vérifier si Nginx est démarré Apr 14, 2025 pm 01:03 PM

Comment confirmer si Nginx est démarré: 1. Utilisez la ligne de commande: SystemCTl Status Nginx (Linux / Unix), netStat -ano | Findstr 80 (Windows); 2. Vérifiez si le port 80 est ouvert; 3. Vérifiez le message de démarrage NGINX dans le journal système; 4. Utilisez des outils tiers, tels que Nagios, Zabbix et Icinga.

Comment vérifier l'état de course de Nginx Comment vérifier l'état de course de Nginx Apr 14, 2025 am 11:48 AM

Les méthodes pour afficher l'état en cours d'exécution de Nginx sont: utilisez la commande PS pour afficher l'état du processus; Afficher le fichier de configuration Nginx /etc/nginx/nginx.conf; Utilisez le module d'état NGINX pour activer le point de terminaison d'état; Utilisez des outils de surveillance tels que Prometheus, Zabbix ou Nagios.

See all articles