Heim  >  Artikel  >  Backend-Entwicklung  >  Wie konfiguriere ich den Nginx-Proxy in Docker für den SSL-Verschlüsselungsschutz?

Wie konfiguriere ich den Nginx-Proxy in Docker für den SSL-Verschlüsselungsschutz?

PHPz
PHPzOriginal
2023-09-05 08:42:37915Durchsuche

Wie konfiguriere ich den Nginx-Proxy in Docker für den SSL-Verschlüsselungsschutz?

Wie konfiguriere ich den Nginx-Proxy in Docker für den SSL-Verschlüsselungsschutz?

Mit der Entwicklung des Internets sind Fragen der Datensicherheit immer wichtiger geworden. Um die Datensicherheit zu gewährleisten, ist SSL (Secure Sockets Layer) zu einem unverzichtbaren Verschlüsselungsprotokoll geworden. Wenn Sie Nginx als Proxy verwenden, ist die Konfiguration eines SSL-Zertifikats ein grundlegender Sicherheitsvorgang. In diesem Artikel wird erläutert, wie Sie den Nginx-Proxy in Docker konfigurieren, um einen SSL-Verschlüsselungsschutz zu erreichen.

1. Docker und Nginx installieren

Zuerst müssen wir Docker und Nginx auf dem Server installieren. Sie können es entsprechend Ihrem eigenen Betriebssystem und Ihrer Distributionsversion installieren.

2. SSL-Zertifikat generieren

Um die SSL-Verschlüsselung von Nginx zu konfigurieren, müssen wir ein SSL-Zertifikat generieren. Ein selbstsigniertes Zertifikat kann mit dem folgenden Befehl generiert werden:

$ openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout server.key -out server.crt

Dadurch wird ein selbstsigniertes SSL-Zertifikat generiert.

3. Erstellen Sie ein Docker-Image

Als nächstes müssen wir ein Docker-Image für Nginx erstellen. Sie können ein neues Dockerfile mit folgendem Inhalt erstellen:

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

In diesem Dockerfile kopieren wir die Nginx-Konfigurationsdatei nginx.conf und die SSL-Zertifikate server.crt und server.key in das entsprechende Verzeichnis im Image und geben den Container an benötigt Die Abhörports sind 80 und 443.

4. Nginx-Proxy konfigurieren

Als nächstes müssen wir die Nginx-Proxy-Einstellungen konfigurieren. In der Datei nginx.conf können Sie es gemäß dem folgenden Beispiel konfigurieren:

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;
}

In der obigen Konfiguration definieren wir zunächst ein Upstream-Backend mit Namen, um die Adresse und den Port des Backend-Servers anzugeben. Anschließend haben wir zwei Serverblöcke konfiguriert, von denen einer Port 80 und der andere Port 443 überwacht. Im Serverblock von Port 443 haben wir das angegebene SSL-Zertifikat und den privaten Schlüssel verwendet und die Proxy-Weiterleitungsadresse festgelegt.

5. Den Docker-Container erstellen und ausführen

Zuletzt müssen wir den Docker-Container erstellen und ausführen.

Verwenden Sie zunächst den folgenden Befehl, um das Docker-Image zu erstellen:

$ docker build -t nginx-ssl .

Dann verwenden Sie den folgenden Befehl, um den Docker-Container auszuführen:

$ docker run -d -p 80:80 -p 443:443 --name nginx-ssl nginx-ssl

Dadurch werden die Ports 80 und 443 im Container den entsprechenden Ports des zugeordnet host und der Name des Containers ist nginx-ssl.

6. Test und Verifizierung

Jetzt können wir auf den Nginx-Proxy zugreifen, indem wir die IP-Adresse oder den Domänennamen des Servers eingeben.

Geben Sie http://example.com in den Browser ein. Sie können sehen, dass der Nginx-Proxy erfolgreich konfiguriert wurde. http://example.com,可以看到Nginx代理已经成功配置。

同时,我们还可以尝试通过https://example.com

Gleichzeitig können wir auch versuchen, über https://example.com zuzugreifen. Wenn der Browser eine sichere Verbindung anzeigt, bedeutet dies, dass die SSL-Verschlüsselung wirksam ist.

Zusammenfassung

Die Konfiguration des Nginx-Proxys in Docker für den SSL-Verschlüsselungsschutz ist nicht schwierig. Durch die Generierung von SSL-Zertifikaten, die Erstellung von Docker-Images, die Konfiguration von Nginx-Agenten und die Ausführung von Docker-Containern können Sie ganz einfach SSL-Verschlüsselung zu Nginx hinzufügen, um die Datensicherheit zu verbessern. 🎜

Das obige ist der detaillierte Inhalt vonWie konfiguriere ich den Nginx-Proxy in Docker für den SSL-Verschlüsselungsschutz?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn