nginx配置ssl證書實現https加密請求詳解


原文鏈接:http://www.studyshare.cn/software/details/1175/0

一、加密方式

1、對稱加密

所謂對稱加密即:客戶端使用一串固定的秘鑰對傳輸內容進行加密,服務端使用相同的秘鑰進行解密。

2、非對稱加密

SSL證書(遵守 SSL協議,由受信任的數字證書頒發機構CA,在驗證服務器身份后頒發,具有服務器身份驗證和數據傳輸加密功能。是公鑰+私鑰一對秘鑰串)

非對稱加密即客戶端使用公鑰對傳輸內容進行加密,服務端使用私鑰對傳輸內容進行解密

java開發工具下載地址及安裝教程大全,點[這里]

更多深度技術文章,在[這里]

二、http與https

http是數據在網絡上進行明文傳輸,不安全,但解析效率高(不用加解密);https是加密傳輸,如果使用對稱加密,客戶端與服務端秘鑰固定,加解密效率不會有很大開銷,但存在秘鑰泄露風險,不夠安全;如果使用非對稱加密,客戶端使用公鑰,服務端使用私鑰,加解密算法開銷大,性能成本高,效率較對稱加密要低,但具有較高的安全性。

實際生產環境中,https是使用了非對稱加密與對稱加密相結合的方式。首先使用非對稱加密將客戶端隨機生成的對稱秘鑰發送到服務端(安全傳輸到服務端),之后客戶端和服務端之間的加解密使用對稱秘鑰。如下圖所示


 

三、nginx配置https

1、配置前提

nginx是否已經啟用https模塊,啟動nginx並執行nginx -V查看,如下:


 

Nginx配置https只需要兩個文件。一個是瀏覽器證書(內含公鑰,供瀏覽器加密使用),一個是私鑰(供服務器解密使用)

server.crt和server.key可以自己去證書頒發機構購買商業證書。也可以自己使用程序自己生成一份。此處自簽一份證書。

2、自簽證書

(1)創建服務器私鑰,需要輸入一個口令

        openssl genrsa -des3 -out server.key 4096

(2)創建簽名請求的證書(CSR)

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

(3)在加載SSL支持的Nginx並使用上述私鑰時除去必須的口令

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

(4)最后標記證書使用上述私鑰和CSR

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

最后生成的證書文件


 

3、配置證書

在nginx中的conf配置文件中的Server模塊加入:

ssl_certificate      /usr/local/nginx/server.crt;

ssl_certificate_key  /usr/local/nginx/server_nopass.key;


 

原創文章,轉載請注明出處。

java開發工具下載地址及安裝教程大全,點這里

更多深度技術文章,在[這里]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM