No subject alternative names present和 PKIX path building failed... 的解決

今天遇到一個問題,記錄下來,因爲網上說的五花八門,記錄下本身處理的方式html

需求主要是服務端http改https。java

tomcat作https,本身做了張證書,因爲其餘應用有經過httpclient訪問的接口,結果就出現異常windows

No subject alternative names presenttomcat

網上解決方式基本2種,證書作的時候不能用IP的方式,要使用域名的方式, 或者重寫一個驗證方法,等於繞過去。oracle

後來在stackOverFlow上看到一個哥們的帖子,在製做證書時候增長個參數ui

keytool -genkey -v -alias tomcat -keyalg RSA -keystore d:\tomcat.keystore -validity 3650 -ext san=ip:192.168.1.1htm

去oracle http://docs.oracle.com/javase/8/docs/technotes/tools/windows/keytool.html接口

能夠查到參數的說明 ,不過我看了也沒太看明白。ip

 

而後又報錯 PKIX path building failed... 域名

網上又是讓重寫方法 繞過去

仔細研究一下,緣由應該是客戶端須要驗證服務端的證書,因此須要作一張證書 加載到客戶端的JRE中

keytool -export -file d:\tomcat.crt -alias tomcat -keystore d:\tomcat.keystore

keytool -import -alias tomcat -file "D:\tomcat.crt" -keystore "D:\jdk1.7.0_51\jre\lib\security\cacerts" -storepass changeit

相關文章
相關標籤/搜索