1. 程式人生 > >NginX配置https,生成免費證書

NginX配置https,生成免費證書

測試環境

Windows Server 2012 R2 Datacenter

nginx-1.14.0

步驟

1.生成證書

a.這裡使用自己生成的免費證書。在${JAVA_HOME}/bin 下可以看到keytool.exe,在改目錄開啟cmd然後輸入:

keytool -genkey -v -alias tomcat -keyalg RSA -keystore d:\local.keystore -validity 36500


生成別名為 tomcat 名稱為local.keystore的證書,有效期100年。然後密碼什麼的根據自己需求填寫。
生成jks格式證書後,要轉成pfx格式的,這要用到

jks2pfx工具進行轉換。

b.下載jks2pfx工具解壓後,在解壓目錄開啟cmd,然後輸入:

JKS2PFX d:\local.keystore 123456 tomcat exportfile D:\Program Files\java\JDK7\jre7\bin

jks2pfx的命令格式:JKS2PFX keystore password alias exportname Java_Runtime_Folder

c.上面的命令是把d盤下的local.keystore(根據你自己keystore的位置來寫)中別名為tomcat、密碼是123456的SSL證書匯出,執行後將在jks2pfx的解壓目錄下

產生3個檔案 exportfile.key、exportfile.crt、exportfile.pfx。本文只要用到exportfile.key、exportfile.crt,把這兩個檔案複製到${NGINX_HOME}/conf目錄下。

2.配置nginx

修改nginx.conf,把要實現https的server像下面這樣配置:

# HTTPS server
#
server {
   listen       443 ssl;
   server_name  localhost;
 
   ssl_certificate      exportfile.crt;
   ssl_certificate_key  exportfile.key;



   ssl_session_cache    shared:SSL:1m;
   ssl_session_timeout  5m;
 
   ssl_ciphers  HIGH:!aNULL:!MD5;
   ssl_prefer_server_ciphers  on;
 
}

重啟nginx生效