nginx 配置https

https

配置https需要有編譯ssl_module 模塊,編譯的時候需要添加–with-http_ssl_module參數,編譯的時候需要同時指向openssl源碼包的目錄。

  1. 花錢購買;
  2. 使用免費的let’s encrypt的免費證書,有些設備不信任而已;
  3. 生成不信任的證書自用。


nginx 配置https


配置

<code>server {    

listen 443;#監聽443端口(https默認端口)

server_name www.opcai.com; #填寫綁定證書的域名

ssl on;

ssl_certificate xxx.crt;#填寫你的證書所在的位置

ssl_certificate_key xxx.key;#填寫你的key所在的位置

ssl_session_timeout 5m;

ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照這個協議配置

ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照這個套件配置

ssl_prefer_server_ciphers on;

location / {

root xxx ; #填寫你的你的站點目錄

index index.php index.html index.htm;

}

}
/<code>


nginx 配置https


生成不信任的證書

1、創建密鑰

使用openssl工具生成一個RSA私鑰

<code>openssl genrsa -des3 -out server.key 2048
/<code>

注意:生成私鑰,需要提供一個至少4位,最多1023位的密碼。

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

<code>openssl req -new -key server.key -out server.csr
/<code>

3、刪除密鑰中的密碼

<code>openssl rsa -in server.key -out server.key
/<code>

說明:如果不刪除密碼,在應用加載的時候會出現輸入密碼進行驗證的情況,不方便自動化部署。

4、生成自簽名證書

內部或者測試使用,只要忽略證書提醒就可以了。

<code>openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
/<code>

5、生成pem格式的公鑰

有些服務,需要有pem格式的證書才能正常加載,可以用下面的命令:

<code>openssl x509 -in server.crt -out server.pem -outform PEM
/<code>


nginx 配置https


分享到:


相關文章: