Rumah >Operasi dan penyelenggaraan >Nginx >Pemantauan sijil SSL dalam proksi terbalik Nginx

Pemantauan sijil SSL dalam proksi terbalik Nginx

WBOY
WBOYasal
2023-06-10 10:52:401487semak imbas

Nginx ialah pelayan web berprestasi tinggi dan pelayan proksi terbalik. Ia digunakan secara meluas dalam banyak laman web dan aplikasi besar kerana ia stabil dan boleh dipercayai. Sijil SSL (Secure Sockets Layer) ialah sijil digital yang digunakan untuk memindahkan data dengan selamat antara klien dan pelayan. Dalam Nginx, penggunaan sijil SSL berkait rapat dengan proksi terbalik. Artikel ini akan meneroka penggunaan sijil SSL dalam proksi terbalik Nginx dan pemantauannya.

Penggunaan Sijil SSL dalam Nginx Reverse Proxy

Dalam Nginx, pelayan proksi terbalik bertindak sebagai pelayan hadapan, menerima permintaan daripada pelanggan dan memajukannya ke pelayan belakang. Apabila Nginx bertindak sebagai pelayan proksi terbalik, ia juga boleh digunakan untuk menyulitkan dan menyahsulit sambungan SSL, yang memerlukan penggunaan sijil SSL.

Untuk mengkonfigurasi sijil SSL dalam Nginx, kami perlu menjana sijil SSL terlebih dahulu. Sijil boleh dijana menggunakan pelbagai alatan, termasuk OpenSSL, Klien ACME dan Certbot. Di sini kami menggunakan OpenSSL untuk menjana sijil sebagai contoh.

Jana sijil SSL menggunakan OpenSSL

Sebelum menggunakan OpenSSL untuk menjana sijil SSL, kami perlu memasang OpenSSL pada pelayan. Kita boleh menggunakan arahan berikut untuk mengesahkan sama ada OpenSSL telah dipasang:

openssl version

Jika maklumat versi OpenSSL dikembalikan, ini bermakna ia telah dipasang. Jika ia tidak dipasang, anda boleh memasangnya melalui arahan berikut:

sudo apt-get update
sudo apt-get install openssl

Selepas pemasangan selesai, kita boleh menggunakan arahan berikut untuk menjana sijil:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt

Arahan ini akan menjana sijil sah selama 365 hari Tandatangani sijil SSL dan simpannya dalam direktori /etc/nginx/ssl. Antaranya, nginx.key ialah fail kunci peribadi, dan nginx.crt ialah fail sijil.

Mengkonfigurasi sijil SSL dalam Nginx

Setelah sijil dijana, ia boleh dikonfigurasikan ke dalam Nginx. Konfigurasi berikut boleh ditambahkan pada fail konfigurasi Nginx:

server {
  listen 443 ssl;
  server_name example.com;

  ssl_certificate /etc/nginx/ssl/nginx.crt;
  ssl_certificate_key /etc/nginx/ssl/nginx.key;

  location / {
    proxy_pass http://localhost:8000;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

    # This line enables HTTPS for the proxy
    proxy_ssl_verify                  on;
    proxy_ssl_certificate            /etc/nginx/ssl/nginx.crt;
    proxy_ssl_certificate_key        /etc/nginx/ssl/nginx.key;
    proxy_ssl_session_reuse          on;
  }
}

Konfigurasi ini menunjukkan bahawa Nginx akan mendengar sambungan HTTPS pada port 443 dan menggunakan sijil SSL yang dijana untuk menyulitkan sambungan. Ia juga menyediakan proksi terbalik yang memajukan permintaan pelanggan ke http://localhost:8000.

Pemantauan Sijil SSL

Sijil SSL sah untuk masa yang terhad. Apabila sijil tamat tempoh, ia tidak lagi sah, menyebabkan tapak web menjadi tidak selamat. Oleh itu, sijil SSL yang digunakan dalam proksi terbalik Nginx perlu dipantau untuk memastikan tempoh sah sijil.

Berikut ialah beberapa kaedah biasa pemantauan sijil SSL:

1 Lihat masa tamat tempoh sijil

Anda boleh menggunakan arahan berikut untuk melihat masa tamat tempoh SSL. sijil:

echo | openssl s_client -servername example.com -connect example.com:443 2>/dev/null | openssl x509 -noout -dates

Di mana example.com ialah nama domain tapak web anda. Perintah ini akan mengeluarkan tarikh mula dan tarikh tamat sijil.

2. Pemantauan Nagios

Nagios ialah penyelesaian pemantauan komprehensif yang membantu anda memantau pelayan, aplikasi dan perkhidmatan rangkaian. Ia juga boleh memantau masa tamat tempoh sijil SSL. Untuk menggunakan Nagios untuk memantau sijil SSL, anda perlu memasang Nagios dan pemalam Pemantauan Sijil SSL untuk Nagios.

3. Let's Encrypt

Let's Encrypt ialah pihak berkuasa sijil SSL percuma yang membantu anda mengkonfigurasi sijil SSL untuk proksi terbalik Nginx. Selain itu, sijil Let's Encrypt sah selama 90 hari, jadi anda perlu memperbaharui sijil anda dengan kerap.

Untuk menggunakan Let's Encrypt untuk mendapatkan sijil SSL, anda perlu memasang Certbot. Selepas memasang Certbot, anda boleh menjalankan arahan berikut untuk mendapatkan sijil:

sudo certbot certonly --webroot -w /var/www/example.com -d example.com

Di mana /var/www/example.com ialah direktori akar tapak web anda dan example.com ialah nama domain tapak web anda. Certbot akan mengesahkannya secara automatik pada pelayan anda dan mengeluarkan sijil kepada anda.

Kesimpulan

Artikel ini memperkenalkan penggunaan dan kaedah pemantauan sijil SSL dalam proksi terbalik Nginx. Apabila menggunakan sijil SSL, anda mesti sentiasa menyemak tarikh tamat tempoh sijil. Dengan memperbaharui sijil secara automatik menggunakan pemantauan Nagios atau Let's Encrypt, anda boleh memastikan bahawa sijil anda sentiasa sah. Memantau sijil SSL ialah langkah penting dalam melindungi tapak web anda dan data pelanggan.

Atas ialah kandungan terperinci Pemantauan sijil SSL dalam proksi terbalik Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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