使用SSL生成https證書,并進(jìn)行nginx配置

一、 windows安裝 OpenSSL:

http://slproweb.com/products/Win32OpenSSL.html

二、 生成https證書

1、創(chuàng)建密鑰(注意:生成私鑰,需要提供一個至少4位,最多1023位的密碼。)

openssl genrsa -des3 -out server.key 2048

2、生成CSR(證書簽名請求)

openssl req -new -key server.key -out server.csr

說明:需要依次輸入國家,地區(qū),城市,組織,組織單位,Common Name和Email。其中Common Name,可以寫自己的名字或者域名,如果要支持https,Common Name應(yīng)該與域名保持一致,否則會引起瀏覽器警告。
  可以將證書發(fā)送給證書頒發(fā)機(jī)構(gòu)(CA),CA驗證過請求者的身份之后,會出具簽名證書,需要花錢。另外,如果只是內(nèi)部或者測試需求,也可以使用OpenSSL實現(xiàn)自簽名。

3、刪除密鑰中的密碼

openssl rsa -in server.key -out server.key

說明:如果不刪除密碼,在應(yīng)用加載的時候會出現(xiàn)輸入密碼進(jìn)行驗證的情況,不方便自動化部署。

4、生成自簽名證書

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

5、生成pem格式的公鑰(有些服務(wù),需要有pem格式的證書才能正常加載)

 openssl x509 -in server.crt -out server.pem -outform PEM

自簽名的證書,不被瀏覽器信任,適合內(nèi)部或者測試使用

6、crt轉(zhuǎn)cer

openssl x509 -in server.crt -out server.cer -outform DER

三、進(jìn)行Nginx配置

將生成的文件全部放到conf文件夾(其他路徑也可,配置nginx能找到即可)


image.png
    map $http_upgrade $connection_upgrade { 
    default upgrade; 
    '' close; 
    } 
    upstream wsbackend{ 
        server 127.0.0.1:8082;  #websocket地址
        #keepalive 1000; 
    }
    server {
        listen       443 ssl; #默認(rèn)端口為 443
        server_name  localhost;

        ssl_certificate      server.pem;
        ssl_certificate_key  server.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            root   html;
            index  index.html index.htm;
        }
        
       location /ajaxApi/ { 
          proxy_pass   http://127.0.0.1:8082/; #代理后臺請求
        }      

       location /wss/ {
          proxy_pass http://wsbackend; #代理websocket
          proxy_http_version 1.1;
          proxy_set_header Upgrade $http_upgrade;
          proxy_set_header Connection "upgrade";
        }

    }

重啟nginx

nginx  -s  reload
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容