Bagaimana untuk mengkonfigurasi proksi Nginx dalam Docker untuk perlindungan penyulitan SSL?

PHPz
Lepaskan: 2023-09-05 08:56:01
asal
952 orang telah melayarinya

Bagaimana untuk mengkonfigurasi proksi Nginx dalam Docker untuk perlindungan penyulitan SSL?

Bagaimana untuk mengkonfigurasi proksi Nginx dalam Docker untuk mencapai perlindungan penyulitan SSL?

Dengan perkembangan Internet, isu keselamatan data telah menjadi semakin ketara. Untuk memastikan keselamatan data, SSL (Secure Sockets Layer) telah menjadi protokol penyulitan penting. Apabila menggunakan Nginx untuk proksi, mengkonfigurasi sijil SSL ialah operasi keselamatan asas. Artikel ini akan memperkenalkan cara mengkonfigurasi proksi Nginx dalam Docker untuk mencapai perlindungan penyulitan SSL.

1. Pasang Docker dan Nginx

Pertama, kita perlu memasang Docker dan Nginx pada pelayan. Anda boleh memasangnya dengan sewajarnya mengikut sistem pengendalian dan versi pengedaran anda sendiri.

2. Jana sijil SSL

Untuk mengkonfigurasi penyulitan SSL Nginx, kami perlu menjana sijil SSL. Sijil yang ditandatangani sendiri boleh dijana dengan arahan berikut:

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

Ini akan menjana sijil SSL yang ditandatangani sendiri.

3 Cipta imej Docker

Seterusnya, kita perlu mencipta imej Docker untuk Nginx. Anda boleh mencipta fail Dockerfile baharu dengan kandungan berikut:

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
Salin selepas log masuk

Dalam Fail Docker ini, kami menyalin fail konfigurasi Nginx nginx.conf dan sijil SSL server.crt dan server.key ke direktori yang sepadan dalam imej dan nyatakan port yang perlu didengari oleh bekas: 80 dan 443.

4. Konfigurasikan proksi Nginx

Seterusnya, kita perlu mengkonfigurasi tetapan proksi Nginx. Dalam fail nginx.conf, anda boleh mengkonfigurasinya mengikut contoh berikut:

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;
}
Salin selepas log masuk

Dalam konfigurasi di atas, mula-mula kami mentakrifkan huluan bernama backend untuk menentukan alamat pelayan dan port belakang. Kemudian, kami mengkonfigurasi dua blok pelayan, satu mendengar pada port 80 dan satu lagi mendengar pada port 443. Dalam blok pelayan port 443, kami menggunakan sijil SSL dan kunci peribadi yang ditentukan, dan menetapkan alamat pemajuan proksi.

5 Bina dan jalankan bekas Docker

Akhirnya, kita perlu membina dan menjalankan bekas Docker.

Pertama, gunakan arahan berikut untuk membina imej Docker:

$ docker build -t nginx-ssl .
Salin selepas log masuk

Kemudian, gunakan arahan berikut untuk menjalankan bekas Docker:

$ docker run -d -p 80:80 -p 443:443 --name nginx-ssl nginx-ssl
Salin selepas log masuk

Ini akan Port 80 dan port 443 dipetakan ke port hos yang sepadan, dan nama bekas ialah nginx-ssl.

6. Pengesahan Ujian

Kini, kita boleh mengakses proksi Nginx dengan memasukkan alamat IP atau nama domain pelayan.

Masukkan http://example.com dalam penyemak imbas, anda boleh melihat bahawa proksi Nginx telah berjaya dikonfigurasikan. http://example.com,可以看到Nginx代理已经成功配置。

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

Pada masa yang sama, kami juga boleh cuba mengakses melalui https://example.com Jika penyemak imbas memaparkan sambungan selamat, ini bermakna penyulitan SSL telah diambil kesan.

Ringkasan

Mengkonfigurasi proksi Nginx dalam Docker untuk perlindungan penyulitan SSL tidak sukar. Dengan menjana sijil SSL, mencipta imej Docker, mengkonfigurasi ejen Nginx dan menjalankan bekas Docker, anda boleh menambah penyulitan SSL dengan mudah pada Nginx untuk meningkatkan keselamatan data. #🎜🎜#

Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi proksi Nginx dalam Docker untuk perlindungan penyulitan SSL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!