日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

在linux下tomcat报javax.net.ssl.SSLHandshakeException sun.security.validator.ValidatorException: PKIX

發(fā)布時(shí)間:2025/3/19 linux 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在linux下tomcat报javax.net.ssl.SSLHandshakeException sun.security.validator.ValidatorException: PKIX 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在本地windows環(huán)境Java服務(wù)器?訪問https服務(wù)器沒有問題,換到測試環(huán)境linux服務(wù)器訪問時(shí)出現(xiàn)上面這個(gè)問題,

是證書出問題了,服務(wù)器不信任我們自己創(chuàng)建的證書,所以在代碼中必須要忽略證書信任問題。只要在創(chuàng)建connection之前調(diào)用兩個(gè)方法:?

? ? ? ? trustAllHttpsCertificates();??

? ? ? ?HttpsURLConnection.setDefaultHostnameVerifier(hv);

兩個(gè)方法的具體實(shí)現(xiàn),如下:

  • HostnameVerifier?hv?=?new?HostnameVerifier()?{??
  • ????????public?boolean?verify(String?urlHostName,?SSLSession?session)?{??
  • ????????????System.out.println("Warning:?URL?Host:?"?+?urlHostName?+?"?vs.?"??
  • ???????????????????????????????+?session.getPeerHost());??
  • ????????????return?true;??
  • ????????}??
  • ????};??
  • ??????
  • ????private?static?void?trustAllHttpsCertificates()?throws?Exception?{??
  • ? ? ? ? //創(chuàng)建信任管理器來信任所有的證書
  • ????????javax.net.ssl.TrustManager[]?trustAllCerts?=?new?javax.net.ssl.TrustManager[1];??
  • ????????javax.net.ssl.TrustManager?tm?=?new?miTM();??
  • ????????trustAllCerts[0]?=?tm;??
  • ? ? ? ? //實(shí)例化SSL協(xié)議
  • ????????javax.net.ssl.SSLContext?sc?=?javax.net.ssl.SSLContext??
  • ????????????????.getInstance("SSL");??
  • ? ? ? ? //實(shí)例化SSl協(xié)議?信任所有證書
  • ????????sc.init(null,?trustAllCerts,?null);??
  • ????????javax.net.ssl.HttpsURLConnection.setDefaultSSLSocketFactory(sc??
  • ????????????????.getSocketFactory());??
  • ????}??
  • ??
  • ????static?class?miTM?implements?javax.net.ssl.TrustManager,??
  • ????????????javax.net.ssl.X509TrustManager?{??
  • ????????public?java.security.cert.X509Certificate[]?getAcceptedIssuers()?{??
  • ????????????return?null;??
  • ????????}??
  • ??
  • ????????public?boolean?isServerTrusted(??
  • ????????????????java.security.cert.X509Certificate[]?certs)?{??
  • ????????????return?true;??
  • ????????}??
  • ??
  • ????????public?boolean?isClientTrusted(??
  • ????????????????java.security.cert.X509Certificate[]?certs)?{??
  • ????????????return?true;??
  • ????????}??
  • ??
  • ????????public?void?checkServerTrusted(??
  • ????????????????java.security.cert.X509Certificate[]?certs,?String?authType)??
  • ????????????????throws?java.security.cert.CertificateException?{??
  • ????????????return;??
  • ????????}??
  • ??
  • ????????public?void?checkClientTrusted(??
  • ????????????????java.security.cert.X509Certificate[]?certs,?String?authType)??
  • ????????????????throws?java.security.cert.CertificateException?{??
  • ????????????return;??
  • ????????}??
  • ????}?
  • 以上的解決辦法來自http://mengyang.iteye.com/blog/575671,在這里記錄一下這個(gè)問題。

    這里簡單介紹下HostnameVerifier,這個(gè)接口主要是javax.net.ssl用于主機(jī)名驗(yàn)證的基接口。

    其中verify()這個(gè)方法驗(yàn)證主機(jī)名和服務(wù)器驗(yàn)證方案,這里重寫了這個(gè)方法在連接期間,如果URL的主機(jī)名和服務(wù)器名不匹配則驗(yàn)證機(jī)制可以回調(diào)此借口的實(shí)現(xiàn)程序來確定是否應(yīng)該允許此鏈接。

    TrustManager從Java API那看是

    就是信任管理器負(fù)責(zé)管理在進(jìn)行信任決策時(shí)使用的信任材料,以及決定是否應(yīng)該接受對等方提供的憑據(jù)。通過使用TrustManagerFactory或通過實(shí)現(xiàn)TrustManager子類之一來創(chuàng)建信任管理器。

    SSLContext類:

    這個(gè)類的實(shí)例 代表socket協(xié)議實(shí)現(xiàn),它作為socket工廠或SSLEngress的工廠。這個(gè)類用一組可選的密鑰和信任管理器和安全隨機(jī)字節(jié)的源進(jìn)行初始化。Java平臺(tái)的每一個(gè)實(shí)現(xiàn)都需要支持以下標(biāo)準(zhǔn)SSLVIEW協(xié)議。

    HostnameVerifier接口:

    在握手期間,如果URL的主機(jī)名和服務(wù)器的標(biāo)識(shí)主機(jī)名不匹配,驗(yàn)證機(jī)制可以調(diào)用該接口的實(shí)現(xiàn)者來確定是否應(yīng)該允許該連接。

    這個(gè)策略可以是基于證書的,或者可以依賴于其他認(rèn)證方案。當(dāng)URL主機(jī)名驗(yàn)證的默認(rèn)規(guī)則失敗時(shí),將使用這個(gè)回調(diào)。

    與50位技術(shù)專家面對面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖

    總結(jié)

    以上是生活随笔為你收集整理的在linux下tomcat报javax.net.ssl.SSLHandshakeException sun.security.validator.ValidatorException: PKIX的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 国产日韩一级 | 精品麻豆视频 | 色女综合| 黄色一级大片在线免费看国产 | 午夜视 | 炕上如狼似虎的呻吟声 | 国产精品免费91 | 在线观看视频中文字幕 | 干爹你真棒插曲mv在线观看 | 亚洲国产精品无码久久 | 西西人体44www大胆无码 | xxxx在线播放 | 我的公把我弄高潮了视频 | 别揉我奶头一区二区三区 | av免费久久 | 中文字幕日韩三级片 | 亚洲一级电影 | 精品国产乱码久久久久久蜜臀网站 | 久久精品无码一区二区三区免费 | 日韩成人免费观看 | a毛片大片 | 五十路六十路 | 美女视频久久 | 人人妻人人澡人人爽精品日本 | 国产成人精品在线播放 | 国产真实生活伦对白 | 天堂亚洲 | 7x7x7x人成影视 | 天天射日日操 | 色婷婷国产精品综合在线观看 | 日韩欧美亚洲成人 | 亚洲欧美另类自拍 | 久久综合桃花网 | 91视频网址 | 日本不卡一区二区三区在线观看 | jizz黑人| 国产一区二区三区免费看 | 国产精品免费视频一区二区三区 | 麻豆av影院 | 亚洲偷拍一区 | 国产精品久久久影院 | 欧美日韩一区二区三区四区五区 | 天堂av在线免费观看 | 久久久精品视频在线 | 四虎最新站名点击进入 | 成人免费看片在线观看 | www.白浆 | 精品人妻一区二区免费 | 欧美视频免费在线观看 | 国产婷婷一区二区 | 亚洲视频三区 | 毛片免费全部无码播放 | 国产又黄视频 | 欧美一区二区黄色 | 欧美日本在线观看 | 欧美性视频网站 | 亚洲欧洲免费视频 | 免费人成在线观看 | 加勒比一区二区三区 | 天天精品视频 | 污污网站在线播放 | 黄色一机片 | 国产精品无码网站 | 日韩操操 | 激情图片在线观看 | 国产精品成人一区 | 少妇人妻好深好紧精品无码 | 久久久久美女 | 久久久久性色av无码一区二区 | 人人干干 | 亚洲第一页夜 | 一区二区三区久久久久 | 天天搞夜夜 | 青青插 | 秋霞免费av| 国产色片在线观看 | 成人无高清96免费 | 胸网站| 狠狠视频 | 黄色三级带 | 久久精品8 | 三级免费观看 | 57pao国产成永久免费视频 | 91精品视频免费观看 | 又白又嫩毛又多15p 超碰在线一区 | 欧美一区国产一区 | 成人免费区一区二区三区 | 色资源在线观看 | 国产免费激情视频 | 黄色一级网站 | 欧美日韩精品一区二区三区四区 | 神马午夜伦理影院 | a级黄色片 | 午夜婷婷色 | 97se亚洲国产综合在线 | 国产黄色在线看 | 五月天婷婷在线播放 | 一区二区三区日韩在线 | 中文天堂在线资源 |