tomcat 啟用https協(xié)議

利用tomcat服務(wù)器配置https雙向認(rèn)證酱讶。

1、為服務(wù)器生成證書

打開cmd彼乌,進(jìn)入jdk的bin目錄下泻肯,輸入下面的命令:

keytool -genkey -v -alias tomcat -keyalg RSA -keystore D:\homes\tomcat.keystore -validity 36500

命令解釋:

使用keytool為Tomcat生成證書,假定目標(biāo)機(jī)器的域名是“l(fā)ocalhost”囤攀,keystore文件想要存放在“D:\homes\tomcat.keystore”软免,口令為“123123”。

參數(shù)簡要說明:

“D:\homes\tomcat.keystore”含義是將證書文件的保存路徑焚挠,證書文件名稱是tomcat.keystore 膏萧;“-validity 36500”含義是證書有效期,36500表示100年蝌衔,默認(rèn)值是90天 “tomcat”為自定義證書名稱榛泛。

image

根據(jù)提示進(jìn)行遷移,命令為:

keytool -importkeystore -srckeystore D:\homes\tomcat.keystore -destkeystore D:\homes\tomcat.keystore -deststoretype pkcs12
image

在命令行填寫必要參數(shù):

A噩斟、 輸入keystore密碼:此處需要輸入大于6個(gè)字符的字符串曹锨。
B、 “您的名字與姓氏是什么剃允?”這是必填項(xiàng)沛简,并且必須是TOMCAT部署主機(jī)的域名或者IP[如:gbcom.com 或者 10.1.25.251](就是你將來要在瀏覽器中輸入的訪問地址)齐鲤,否則瀏覽器會彈出警告窗口,提示用戶證書與所在域不匹配椒楣。在本地做開發(fā)測試時(shí)给郊,應(yīng)填入“l(fā)ocalhost”。
C捧灰、 你的組織單位名稱是什么淆九?”、“您的組織名稱是什么毛俏?”炭庙、“您所在城市或區(qū)域名稱是什么?”煌寇、“您所在的州或者省份名稱是什么焕蹄?”、“該單位的兩字母國家代碼是什么唧席?”可以按照需要填寫也可以不填寫直接回車擦盾,在系統(tǒng)詢問“正確嗎?”時(shí)淌哟,對照輸入信息,如果符合要求則使用鍵盤輸入字母“y”辽故,否則輸入“n”重新填寫上面的信息徒仓。
D、 輸入<tomcat>的主密碼誊垢,這項(xiàng)較為重要掉弛,會在tomcat配置文件中使用,建議輸入與keystore的密碼一致喂走,設(shè)置其它密碼也可以殃饿,完成上述輸入后,直接回車則在你在第二步中定義的位置找到生成的文件芋肠。

2乎芳、為客戶端生成證書
為瀏覽器生成證書,以便讓服務(wù)器來驗(yàn)證它帖池。為了能將證書順利導(dǎo)入至IE和Firefox奈惑,證書格式應(yīng)該是PKCS12,因此睡汹,使用如下命令生成:

keytool -genkey -v -alias mykey -keyalg RSA -storetype PKCS12 -keystore D:\homes\mykey.p12

(mykey為自定義)肴甸。

image

對應(yīng)的證書庫存放在“D:\homes\mykey.p12”,客戶端的CN可以是任意值囚巴。雙擊mykey.p12文件原在,輸入剛才設(shè)置的密碼友扰,即可將證書導(dǎo)入至瀏覽器(客戶端)。

image
image
image
image
image
image
image

3庶柿、讓服務(wù)器信任客戶端證書

由于是雙向SSL認(rèn)證焕檬,服務(wù)器必須要信任客戶端證書,因此澳泵,必須把客戶端證書添加為服務(wù)器的信任認(rèn)證实愚。由于不能直接將PKCS12格式的證書庫導(dǎo)入,必須先把客戶端證書導(dǎo)出為一個(gè)單獨(dú)的CER文件兔辅,使用如下命令:

keytool -export -alias mykey -keystore D:\homes\mykey.p12 -storetype PKCS12 -storepass 123123 -rfc -file D:\homes\mykey.cer 
image

(mykey為自定義與客戶端定義的mykey要一致腊敲,password是你設(shè)置的密碼)。通過以上命令维苔,客戶端證書就被我們導(dǎo)出到“D:\home\mykey.cer”文件了碰辅。

下一步,是將該文件導(dǎo)入到服務(wù)器的證書庫没宾,添加為一個(gè)信任證書使用命令如下:

keytool -import -v -file D:\homes\mykey.cer -keystore D:\homes\tomcat.keystore
image

通過list命令查看服務(wù)器的證書庫,可以看到兩個(gè)證書沸柔,一個(gè)是服務(wù)器證書循衰,一個(gè)是受信任的客戶端證書:

image

(tomcat為你設(shè)置服務(wù)器端的證書名)。

4褐澎、讓客戶端信任服務(wù)器證書

由于是雙向SSL認(rèn)證会钝,客戶端也要驗(yàn)證服務(wù)器證書,因此工三,必須把服務(wù)器證書添加到瀏覽的“受信任的根證書頒發(fā)機(jī)構(gòu)”迁酸。由于不能直接將keystore格式的證書庫導(dǎo)入,必須先把服務(wù)器證書導(dǎo)出為一個(gè)單獨(dú)的CER文件俭正,使用如下命令:

 keytool -keystore D:\home\tomcat.keystore -export -alias tomcat -file D:\home\tomcat.cer
image

(tomcat為你設(shè)置服務(wù)器端的證書名)奸鬓。

通過以上命令,服務(wù)器證書就被我們導(dǎo)出到“D:\homes\tomcat.cer”文件了掸读。雙擊tomcat.cer文件串远,按照提示安裝證書,將證書填入到“受信任的根證書頒發(fā)機(jī)構(gòu)”寺枉。

5抑淫、配置Tomcat服務(wù)器

定位到tomcat服務(wù)器的安裝目錄, 找到conf下的server.xml文件

image

找到如下已經(jīng)被注釋的代碼:

image

去掉注釋,修改為:

  <Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
   maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" 
  sslProtocol="TLS" keystoreFile="D:\homes\tomcat.keystore" keystorePass="123123"/>

打開D:/Tomcat/conf/web.xml姥闪,在該文件</welcome-file-list>后面加上這樣一段:

  <login-config>
  <!-- Authorization setting for SSL -->
  <auth-method>CLIENT-CERT</auth-method>
  <realm-name>Client Cert Users-only Area</realm-name>
  </login-config>
  <security-constraint>
  <!-- Authorization setting for SSL -->
  <web-resource-collection >
  <web-resource-name >SSL</web-resource-name>
  <url-pattern>/*</url-pattern>
  </web-resource-collection>
  <user-data-constraint>
  <transport-guarantee>CONFIDENTIAL</transport-guarantee>
  </user-data-constraint>
  </security-constraint>

這里始苇,密碼和證書的位置根據(jù)個(gè)人的具體環(huán)境而設(shè)置,屬性參數(shù)如下所述:

圖片.png

訪問支持ssl的web站點(diǎn):

啟動本場tomcat,在瀏覽器中輸入:https://localhost:8443/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末筐喳,一起剝皮案震驚了整個(gè)濱河市催式,隨后出現(xiàn)的幾起案子函喉,更是在濱河造成了極大的恐慌,老刑警劉巖荣月,帶你破解...
    沈念sama閱讀 211,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件管呵,死亡現(xiàn)場離奇詭異,居然都是意外死亡哺窄,警方通過查閱死者的電腦和手機(jī)捐下,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,347評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來萌业,“玉大人坷襟,你說我怎么就攤上這事∩辏” “怎么了婴程?”我有些...
    開封第一講書人閱讀 157,435評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長抱婉。 經(jīng)常有香客問我档叔,道長,這世上最難降的妖魔是什么蒸绩? 我笑而不...
    開封第一講書人閱讀 56,509評論 1 284
  • 正文 為了忘掉前任衙四,我火速辦了婚禮,結(jié)果婚禮上侵贵,老公的妹妹穿的比我還像新娘届搁。我一直安慰自己,他們只是感情好窍育,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,611評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著宴胧,像睡著了一般漱抓。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上恕齐,一...
    開封第一講書人閱讀 49,837評論 1 290
  • 那天乞娄,我揣著相機(jī)與錄音,去河邊找鬼显歧。 笑死仪或,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的士骤。 我是一名探鬼主播范删,決...
    沈念sama閱讀 38,987評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼拷肌!你這毒婦竟也來了到旦?” 一聲冷哼從身側(cè)響起旨巷,我...
    開封第一講書人閱讀 37,730評論 0 267
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎添忘,沒想到半個(gè)月后采呐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,194評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡搁骑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,525評論 2 327
  • 正文 我和宋清朗相戀三年斧吐,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片仲器。...
    茶點(diǎn)故事閱讀 38,664評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡煤率,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出娄周,到底是詐尸還是另有隱情涕侈,我是刑警寧澤,帶...
    沈念sama閱讀 34,334評論 4 330
  • 正文 年R本政府宣布煤辨,位于F島的核電站裳涛,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏众辨。R本人自食惡果不足惜端三,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,944評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望鹃彻。 院中可真熱鬧郊闯,春花似錦、人聲如沸蛛株。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,764評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谨履。三九已至欢摄,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間笋粟,已是汗流浹背怀挠。 一陣腳步聲響...
    開封第一講書人閱讀 31,997評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留害捕,地道東北人绿淋。 一個(gè)月前我還...
    沈念sama閱讀 46,389評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像尝盼,于是被迫代替她去往敵國和親吞滞。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,554評論 2 349

推薦閱讀更多精彩內(nèi)容