Rumah Operasi dan penyelenggaraan Nginx Bagaimana untuk mengkonfigurasi sijil SSL Nginx untuk mencapai akses HTTPS

Bagaimana untuk mengkonfigurasi sijil SSL Nginx untuk mencapai akses HTTPS

May 12, 2023 pm 03:07 PM
nginx ssl https

Latar Belakang

Disebabkan keperluan projek dan sebab keselamatan, adalah perlu untuk menukar akses antara muka http sebelumnya kepada akses https, jadi sijil SSL perlu dikonfigurasikan. Seni bina projek adalah seperti ini:

Bagaimana untuk mengkonfigurasi sijil SSL Nginx untuk mencapai akses HTTPS

Seni bina asas ialah beban keras (dibaca di mana) + beban lembut (nginx) + kelompok tomcat bahawa sijil SSL diperlukan Di manakah ia dikonfigurasikan secara langsung pada beban keras? Atau konfigurasikannya pada nginx dan tomcat masing-masing? Atau adakah terdapat kaedah konfigurasi lain?

Pertama sekali, saya berhenti mengkonfigurasi beban keras, dan kemudian dengan mencari maklumat di Internet, saya mendapati bahawa saya hanya boleh mengkonfigurasi sijil pada nginx, yang bermaksud bahawa nginx menggunakan https untuk akses, dan nginx dan tomcat menggunakan http untuk sambungan Ini memberi anda idea keseluruhan.

Mengenai sijil ssl

Mengenai sijil ssl diperkenalkan secara ringkas di sini, dan ia juga kerana keperluan projek yang saya mempunyai pemahaman ringkas.

Sijil SSL dibahagikan secara kasar kepada tiga jenis, tahap domain (dv), tahap perusahaan (ov), dan tahap dipertingkat (ev), dengan keselamatan dan harga meningkat mengikut urutan. Pilih mengikut keperluan anda sendiri Untuk kegunaan peribadi, anda boleh menggunakan dv, yang murah untuk kegunaan korporat, ov biasanya digunakan, dan ev digunakan dalam keadaan khusus.

skonfigurasi sijil sl

Oleh kerana sokongan nginx untuk konfigurasi sijil ssl membolehkan pelaksanaan ini, saya perlu merungut kekuatan nginx.

Penyediaan sijil

konfigurasi nginx memerlukan sijil .pem/.crt + kunci rahsia .key Jika anda mempunyai bentuk sijil lain, sila ikut arahan yang berkaitan Tukar kepada jenis sijil yang diperlukan, jika tidak, konfigurasi sijil tidak dapat dilengkapkan. Secara amnya, pedagang yang membeli akan mempunyai alat penukaran yang sepadan.

Setelah anda bersedia, letakkan sijil dan kunci rahsia dalam direktori conf nginx (iaitu, dalam direktori yang sama dengan fail konfigurasi nginx.conf Perhatian khusus harus diberikan di sini:

).
  1. Jika ia dikonfigurasikan di bawah sistem Linux, ia sudah sedia; fail perlu dialih keluar. Jika tidak, nginx tidak akan bermula selepas konfigurasi Ini adalah pit Saya terperangkap di sini juga sangat mudah openssl rsa. -in server.key -out server2.key, server2.key yang dihasilkan ialah fail kunci rahsia yang diperlukan untuk konfigurasi, tetapi nama fail perlu ditukar kepada server.key.

  2. Ubah suai fail konfigurasi nginx

Yang berikut ialah sebahagian daripada fail konfigurasi nginx.conf saya Port ini bukan 443 lalai, tetapi berubah Ia menjadi 8185. Hanya ubah suai mengikut keperluan anda pada asasnya adalah seperti berikut dan tidak akan ada masalah.

server {
    listen    8185;
    server_name localhost; 
    ssl         on; 
    ssl_certificate   server.pem; 
    ssl_certificate_key server.key; 
    ssl_session_timeout 5m;
    ssl_protocols tlsv1 tlsv1.1 tlsv1.2;
    ssl_ciphers high:!rc4:!md5:!anull:!enull:!null:!dh:!edh:!exp:+medium; 
    ssl_prefer_server_ciphers  on;

    location / {
      proxy_set_header host $host:$server_port; 
      proxy_set_header x-real-ip $remote_addr; 
      proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for; 
      proxy_set_header x-forwarded-proto $scheme;
      proxy_connect_timeout  5;
      proxy_send_timeout   5;
      proxy_read_timeout   5; 
      proxy_pass http://qlddm_server;
    }
Salin selepas log masuk

Ubah suai fail konfigurasi tomcat

Walaupun tidak perlu mengkonfigurasi sijil dalam tomcat, anda masih perlu mengubah suai fail konfigurasi tomcat server.xml, yang secara khusus merangkumi dua tempat :

<connector 
    executor="tomcatthreadpool"
    port="7083" 
    protocol="org.apache.coyote.http11.http11nio2protocol" 
    connectiontimeout="20000" 
    maxconnections="8000" 
    redirectport="8185" 
    proxyport="8185"
    enablelookups="false" 
    acceptcount="100" 
    maxpostsize="10485760" 
    compression="on" 
    disableuploadtimeout="true" 
    compressionminsize="2048" 
    acceptorthreadcount="2" 
    compressablemimetype="text/html,text/xml,text/plain,text/css,text/javascript,application/javascript" 
    uriencoding="utf-8"
  />
Salin selepas log masuk
Anda perlu mengubah suai kedua-dua redirectport dan proxyport ke nombor port mendengar nginx anda.

<valve classname="org.apache.catalina.valves.remoteipvalve"
       remoteipheader="x-forwarded-for"
       protocolheader="x-forwarded-proto"
       protocolheaderhttpsvalue="https" httpsserverport="8185"/>
Salin selepas log masuk

Anda perlu menambah teg nilai di atas. Harap maklum bahawa httpsserverport juga perlu diubah suai kepada nombor port mendengar nginx.

Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi sijil SSL Nginx untuk mencapai akses HTTPS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk membenarkan akses rangkaian luaran ke pelayan tomcat Bagaimana untuk membenarkan akses rangkaian luaran ke pelayan tomcat Apr 21, 2024 am 07:22 AM

Bagaimana untuk membenarkan akses rangkaian luaran ke pelayan tomcat

Apakah perintah mula dan henti nginx? Apakah perintah mula dan henti nginx? Apr 02, 2024 pm 08:45 PM

Apakah perintah mula dan henti nginx?

Bagaimana untuk menjalankan thinkphp Bagaimana untuk menjalankan thinkphp Apr 09, 2024 pm 05:39 PM

Bagaimana untuk menjalankan thinkphp

Bagaimana untuk melaksanakan laluan SSL dalam HAProxy Bagaimana untuk melaksanakan laluan SSL dalam HAProxy Mar 20, 2024 am 09:30 AM

Bagaimana untuk melaksanakan laluan SSL dalam HAProxy

Selamat datang ke nginx! Bagaimana untuk menyelesaikannya? Selamat datang ke nginx! Bagaimana untuk menyelesaikannya? Apr 17, 2024 am 05:12 AM

Selamat datang ke nginx! Bagaimana untuk menyelesaikannya?

Cara mendaftar phpmyadmin Cara mendaftar phpmyadmin Apr 07, 2024 pm 02:45 PM

Cara mendaftar phpmyadmin

Bagaimana untuk menggunakan projek nodejs ke pelayan Bagaimana untuk menggunakan projek nodejs ke pelayan Apr 21, 2024 am 04:40 AM

Bagaimana untuk menggunakan projek nodejs ke pelayan

Bagaimana untuk menyelesaikan masalah nginx semasa mengakses laman web Bagaimana untuk menyelesaikan masalah nginx semasa mengakses laman web Apr 02, 2024 pm 08:39 PM

Bagaimana untuk menyelesaikan masalah nginx semasa mengakses laman web

See all articles