首先,需求是編寫後台介面,供移動端呼叫,並實現雙向認證。由於沒有頁面,無需花錢申請證書。用自己生成的證書進行自認證。
證書不是非要在執行的伺服器上生成,隨便一台機器都可以,建立證書有多種方式,例如openssl和jdk自帶的keytool。這裡使用keytool。
keytool:
一、生成伺服器端金鑰庫
keytool -genkey -v -alias server -keyalg rsa -validity 36500 -storetype pkcs12 -keystore server.p12
在輸入金鑰庫口令之後,需要輸入名字與姓氏,這個有很強的誤導性,一定要輸入伺服器的網域名稱。經過個人實驗,瀏覽器不會根據上面建立時輸入的-alias欄位來尋找證書,而是根據這個名字與姓氏。也許只是偏見,個人見解。
假如我要在本機測試,輸入的名字與姓氏就是localhost或者127.0.0.1
二、生成客戶端金鑰庫
keytool -genkey -v -alias client -keyalg rsa -validity 36500 -storetype pkcs12 -keystore client.p12
三、生成客戶端證書
keytool -export -alias client -keystore client.p12 -storetype pkcs12 -storepass ceshi123 -rfc -file client.cer
四、將客戶端證書加入服務端金鑰庫
keytool -import -v -file client.cer -keystore server.p12
五、生成服務端證書
keytool -keystore server.p12 -export -alias server -file server.cer
至此證書生成完畢,接下來在伺服器中新增配置啟用ssl。
tomcat:
在tomcat的conf目錄下的server.xml中找到以下欄位並解開注釋。
如果啟用雙向認證需要將clientauth設定為ture,並新增truststorefile與truststorepass。
springboot:
後期補充。
tomcat配置ssl雙向認證
接上篇tomcat ssl單向認證 url 本文在單向認證的基礎上完成雙向認證配置。1 使用以下命令生成客戶端證書,並將此證書安裝到客戶端 此證書請安裝到個人目錄下 keytool genkey v alias client1 keyalg rsa storetype pkcs12 keysize ...
ssl雙向認證
ssl雙向認證 ca.key 根證書的私鑰 ca.crt 根證書的簽名證書 server.key,server.crt client.key,client.crt 1 openssl ca.key,ca.crt 2 openssl server.key server.csrserver.crt 3 ...
Tomcat雙向SSL認證的配置
在tomcat 6中配置ssl雙向認證是相當容易的,本文將介紹如何使用jdk的keytool來為tomcat配置雙向ssl認證。系統需求 jdk 5.0 tomcat 6.0.16 第一步 為伺服器生成證書 使用keytool為tomcat生成證書,假定目標機器的網域名稱是 localhost ke...