黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

tomcat------https單向認(rèn)證和雙向認(rèn)證

系統(tǒng) 2331 0

?一、https分為單向認(rèn)證和雙向認(rèn)證:

單向認(rèn)證就是說,只有客戶端使用ssl時對服務(wù)器端的證書進(jìn)行認(rèn)證,也就是說,客戶端在請求建立之前,服務(wù)器端會向客戶端發(fā)送一個證書,一般情況下,這種證書都是由自己或企業(yè)自行發(fā)布的,所以在客戶端使用https時,會跳出“是否信任并繼續(xù)”,點擊信任則表示客戶端信任服務(wù)器端證書,才可以繼續(xù)交互。

雙向認(rèn)證,就是服務(wù)器端和客戶端都對雙方的證書進(jìn)行認(rèn)證,這時除了單向認(rèn)證外,還需要在服務(wù)器端的受信任證書列表中加入客戶端的證書,這樣服務(wù)器端才能信任客戶端的請求。

二、配置:

1.單向認(rèn)證配置:

?(1)首先使用keytool生成服務(wù)端密鑰倉庫,命令:?keytool -genkey -keyalg RSA -alias tomcatsso -dname "CN=localhost" -keystore d:\tomcatsso.keystore -storepass changeit

   ? ?命令參數(shù)-genkey表示是要生成新的密鑰庫,keyalg表示使用的密鑰生成算法是RSA,alias表示別名,keystore表示生成的密鑰庫存儲在什么地方,文件格式可以自定義,-storepass是表示密鑰庫的密碼。

   該步驟生成了一個密鑰庫,該密鑰庫包含私鑰和公鑰等文件。 把它用于服務(wù)器端的證書庫,用于客戶端瀏覽器認(rèn)證服務(wù)端。

(2)開啟tomcat對ssl的支持,具體方法是去掉 <Connector port="8443"...>這一段的注釋,并在本段的末尾加上keystoreFile="d:\tomcatsso.keystore" keystorePass="changeit"這兩個屬性,這兩個屬性會告訴tomcat去哪兒尋找服務(wù)器端密鑰庫。重啟tomcat,至此tomcat對https的修改完成。

?(3) 客戶端也要驗證服務(wù)器證書,因此,必須把服務(wù)器證書添加到瀏覽的“受信任的根證書頒發(fā)機構(gòu)”。由于不能直接將keystore格式的證書庫導(dǎo)入,必須先把服務(wù)器證書導(dǎo)出為一個單獨的.cer或.crt文件,使用如下命令:?

? ? ? keytool -keystore d:\tomcatsso.keystore?-export -alias tomcat -file D:\home\tomcat.cer

  然后雙擊D:\home\tomcat.cer文件,選擇安裝到“受信任的根證書頒發(fā)機構(gòu)”下面。

? ? ?如果沒有第三步,瀏覽器會跳出“是否信任并繼續(xù)”,點擊信任則表示客戶端信任服務(wù)器端證書,才可以繼續(xù)交互。 消除該項請使用OPenSSL申請一個正式的服務(wù)器證書,參考 http://blog.csdn.net/jasonhwang/article/details/2344768

?2.雙向認(rèn)證配置:

?(1)?為客戶端(即IE或firefox)生成證書庫,以便讓服務(wù)器來驗證它。為了能將證書順利導(dǎo)入至IE和Firefox,證書庫格式應(yīng)該是PKCS12,即生成證書的時候storetype是PKCS12。 因此,使用如下命令生成:

? ? ? ? keytool -genkey -v -alias client -keyalg RSA -storetype PKCS12 -keystore D:\home\client.keys?

? ? ? ?客戶端的CN可以是任意值。

(2)在客戶端安裝證書庫。注意:不能導(dǎo)入.cer或者.crt格式文件,因為它會把這些文件當(dāng)做服務(wù)端的認(rèn)證文件,單向認(rèn)證自動安裝。

   ?打開IE->工具->內(nèi)容->證書->個人->導(dǎo)入->選擇任意文件?D:\home\client.keys ->輸入密鑰。一定要存在個人區(qū)。可以參考《 http://www.linuxyw.com/a/WEBfuwu/20130530/516.html

(3)讓服務(wù)端信任客戶端證書,由于不能直接將PKCS12格式的證書庫導(dǎo)入,必須先把服務(wù)器證書導(dǎo)出為一個單獨的.cer或.crt文件,

? ? ? ? 導(dǎo)出的客戶端證書導(dǎo)入服務(wù)端受信任的證書庫,該命令表示服務(wù)器端信任該證書,命令:keytool -import -alias tomcatsso -file?D:\home\client.cer?-keystore?D:\home\client.trustkeys ,不必先建client.trustkeys庫;

? ? ? ? 或者導(dǎo)入默認(rèn)的服務(wù)器端信任證書庫,命令:keytool -import -alias tomcatsso -file D:\home\client.cer?-keystore "%java_home%/jre/lib/security/cacerts" -storepass changeit

這里的java_home是tomcat使用的jdk的位置,"%java_home%/jre/lib/security/cacerts"的?cacerts是個無后綴文件,表示服務(wù)器認(rèn)證客戶端時使用的根證書庫。?

?

參考文章:《keytool命令使用實例》? http://www.360doc.com/content/10/0121/10/633992_14065815.shtml

? ? ? ? ? ? ? ? 《使用key配置https》 ? ? http://www.blogjava.net/stevenjohn/archive/2012/08/22/385989.html

?

?

?

?

tomcat------https單向認(rèn)證和雙向認(rèn)證


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論