Comment configurer le proxy Nginx dans Docker pour la protection par cryptage SSL ?
Avec le développement d'Internet, les problèmes de sécurité des données sont devenus de plus en plus importants. Afin d’assurer la sécurité des données, SSL (Secure Sockets Layer) est devenu un protocole de cryptage incontournable. Lorsque vous utilisez Nginx pour proxy, la configuration d'un certificat SSL est une opération de sécurité de base. Cet article explique comment configurer le proxy Nginx dans Docker pour obtenir une protection par cryptage SSL.
1. Installez Docker et Nginx
Tout d'abord, nous devons installer Docker et Nginx sur le serveur. Vous pouvez l'installer en conséquence en fonction de votre propre système d'exploitation et de votre version de distribution.
2. Générer un certificat SSL
Afin de configurer le cryptage SSL de Nginx, nous devons générer un certificat SSL. Un certificat auto-signé peut être généré avec la commande suivante :
$ openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout server.key -out server.crt
Cela générera un certificat SSL auto-signé.
3. Créer une image Docker
Ensuite, nous devons créer une image Docker pour Nginx. Vous pouvez créer un nouveau Dockerfile avec le contenu suivant :
FROM nginx:latest COPY nginx.conf /etc/nginx/nginx.conf COPY server.crt /etc/nginx/server.crt COPY server.key /etc/nginx/server.key EXPOSE 80 EXPOSE 443
Dans ce Dockerfile, nous copions le fichier de configuration Nginx nginx.conf et les certificats SSL server.crt et server.key dans le répertoire correspondant dans l'image, et spécifions le conteneur besoins Les ports d'écoute sont 80 et 443.
4. Configurer le proxy Nginx
Ensuite, nous devons configurer les paramètres du proxy Nginx. Dans le fichier nginx.conf, vous pouvez le configurer selon l'exemple suivant :
worker_processes auto; events {} http { server { listen 80; server_name example.com; location / { proxy_pass http://backend; } } server { listen 443 ssl; server_name example.com; ssl_certificate /etc/nginx/server.crt; ssl_certificate_key /etc/nginx/server.key; location / { proxy_pass http://backend; } } } upstream backend { server backend_host:backend_port; }
Dans la configuration ci-dessus, nous définissons d'abord un backend nommé en amont pour spécifier l'adresse et le port du serveur backend. Ensuite, nous avons configuré deux blocs serveurs, un en écoute sur le port 80 et l'autre en écoute sur le port 443. Dans le bloc serveur du port 443, nous avons utilisé le certificat SSL et la clé privée spécifiés, et défini l'adresse de transfert du proxy.
5. Créez et exécutez le conteneur Docker
Enfin, nous devons construire et exécuter le conteneur Docker.
Tout d'abord, utilisez la commande suivante pour créer l'image Docker :
$ docker build -t nginx-ssl .
Ensuite, utilisez la commande suivante pour exécuter le conteneur Docker :
$ docker run -d -p 80:80 -p 443:443 --name nginx-ssl nginx-ssl
Cela mappera le port 80 et le port 443 du conteneur aux ports correspondants du hôte et le nom du conteneur est nginx-ssl.
6. Test et vérification
Maintenant, nous pouvons accéder au proxy Nginx en entrant l'adresse IP ou le nom de domaine du serveur.
Entrez http://example.com
dans le navigateur, vous pouvez voir que le proxy Nginx a été configuré avec succès. http://example.com
,可以看到Nginx代理已经成功配置。
同时,我们还可以尝试通过https://example.com
https://example.com
Si le navigateur affiche une connexion sécurisée, cela signifie que le cryptage SSL a pris effet. RésuméConfigurer le proxy Nginx dans Docker pour la protection par cryptage SSL n'est pas difficile. En générant un certificat SSL, en créant une image Docker, en configurant le proxy Nginx et en exécutant un conteneur Docker, vous pouvez facilement ajouter le cryptage SSL à Nginx pour améliorer la sécurité des données. 🎜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!