Tomcat啟用HTTPS協(xié)議之JDK工具keytool

?Tomcat啟用HTTPS協(xié)議之JDK工具keytool

需求:平臺原本是用http訪問的,為了保證數(shù)據(jù)傳輸?shù)耐暾约胺乐菇涌诒槐O(jiān)聽,甲方要求將平臺改為https訪問。

原因:HTTP 的連接很簡單哭懈,是無狀態(tài)的;HTTPS?協(xié)議是由 SSL+HTTP 協(xié)議構(gòu)建的可進行加密傳輸茎用、身份認證的網(wǎng)絡(luò)協(xié)議遣总,比 HTTP 協(xié)議安全

方案1睬罗、在tomcat中修改server.xml配置,使用jdk自帶工具keytool生成ssl證書旭斥,使平臺可以通過https訪問容达。

方案2、通過Nginx代理的方式將https轉(zhuǎn)為http垂券,已達到上述目的花盐。

此文記錄方案1的詳細操作,流程比較繁瑣菇爪,但絕對可以成功算芯。

第一部分:如下操作完,即可通過https://ip:8843/projectName訪問平臺凳宙,如下圖熙揍。問題是訪問會提示“此站點不安全”,點擊“詳細信息”中的“轉(zhuǎn)到此網(wǎng)頁(不推薦)”氏涩,即可打開平臺诈嘿。

?Tomcat啟用HTTPS協(xié)議之JDK工具keytool

需求:平臺原本是用http訪問的,為了保證數(shù)據(jù)傳輸?shù)耐暾约胺乐菇涌诒槐O(jiān)聽削葱,甲方要求將平臺改為https訪問。

原因:HTTP 的連接很簡單淳梦,是無狀態(tài)的析砸;HTTPS?協(xié)議是由 SSL+HTTP 協(xié)議構(gòu)建的可進行加密傳輸、身份認證的網(wǎng)絡(luò)協(xié)議爆袍,比 HTTP 協(xié)議安全

方案1首繁、在tomcat中修改server.xml配置,使用jdk自帶工具keytool生成ssl證書陨囊,使平臺可以通過https訪問弦疮。

方案2、通過Nginx代理的方式將https轉(zhuǎn)為http蜘醋,已達到上述目的胁塞。

此文記錄方案1的詳細操作,流程比較繁瑣压语,但絕對可以成功啸罢。

第一部分:如下操作完,即可通過https://ip:8843/projectName訪問平臺胎食,如下圖扰才。問題是訪問會提示“此站點不安全”,點擊“詳細信息”中的“轉(zhuǎn)到此網(wǎng)頁(不推薦)”厕怜,即可打開平臺衩匣。

1蕾总、首先需要安裝jdk(安裝方法自行百度),本文用的是jdk1.8琅捏,在安裝路徑下找keytool.exe生百。

2、在keytool中按住shift+右鍵午绳,點擊在此處打開Powershell窗口置侍,打開的命令窗口即keytool.exe所在的目錄,后續(xù)的命令均在此處執(zhí)行拦焚。

3蜡坊、在d盤下創(chuàng)建keys文件,后續(xù)命令生成的文件均在此目錄下

4赎败、執(zhí)行以下命令:keytool?-genkey?-alias?tomcat?-keypass?123456?-keyalg?RSA?-keysize?1024?-validity?365?-keystore?D:/keys/tomcat.keystore?-storepass?123456

命令中重點關(guān)注參數(shù):別名-alias tomcat秕衙,記住這個tomcat,后面用的到僵刮。-keypass 密碼据忘,這個非常重要,后面用的到搞糕。-keystore 路徑勇吊,這個是生成tomcat.keystore的路徑。

輸入內(nèi)容中重點參數(shù):您的名字與姓氏是什么窍仰?這個填寫要使用https訪問的平臺ip汉规,其他的可以是anything

5、將生成的tomcat.keystore放到平臺所在服務(wù)器下(/root/key)驹吮,

6针史、修改tomcat下conf中的server.xml,增加如下配置碟狞,重點關(guān)注路徑(tomcat.keystore所在的路徑)和密碼(生成tomcat.keystore時用的密碼):

? ? <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"?maxThreads="150" scheme="https" secure="true"clientAuth="false" sslProtocol="TLS" keystoreFile="/root/key/tomcat.keystore" keystorePass="123456"? />

7啄枕、以上配置完成后重啟tomcat,第一部分操作完成族沃,結(jié)果應(yīng)該入開始部分的描述频祝。

第二部分 如下操作完,即可通過https正常訪問平臺脆淹,沒有“此站點不安全”的提示智润。

0、嘗試過降低ie安全級別未辆,加入信任站點等方式窟绷,仍有“此站點不安全”的提示,因此不得不繼續(xù)進行了咐柜。

1兼蜈、為客戶端生成證書攘残,以便讓服務(wù)器來驗證,證書格式應(yīng)該是PKCS12为狸。執(zhí)行如下命令:keytool -genkey -alias client -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -storetype PKCS12 -keystore D:/keys/client.p12 -storepass 123456

執(zhí)行后會在d:/keys下生成client.p12文件歼郭。重點關(guān)注-alias 別名,后續(xù)用的到辐棒。-validity 驗證有效期限病曾。

命令之后會輸入您的名字與姓氏是什么,此處輸入平臺的ip漾根,其他的選項可以是anything泰涂。

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

2.1?由于不能直接將PKCS12格式的證書庫導(dǎo)入辐怕,必須先把客戶端證書導(dǎo)出為一個單獨的CER文件逼蒙。執(zhí)行命令: keytool -export -alias client -keystore D:/keys/client.p12 -storetype PKCS12 -keypass 123456 -file D:/keys/client.cer

秘鑰庫口令即上文輸入的123456

2.2將該文件導(dǎo)入到服務(wù)器的證書庫,添加為一個信任證書,執(zhí)行命令:keytool -import -v -file D:/keys/client.cer -keystore D:/keys/tomcat.keystor

秘鑰庫口令即上文輸入的123456

2.3完成之后通過list命令查看服務(wù)器的證書庫寄疏,可以看到兩個證書是牢,一個是服務(wù)器證書,一個是受信任的客戶端證書:keytool?-list?-v?-keystore?D:/keys/tomcat.keystore

3.讓客戶端信任服務(wù)器證書陕截,由于是雙向SSL認證驳棱,客戶端也要驗證服務(wù)器證書,因此农曲,必須把服務(wù)器證書添加到瀏覽器的“受信任的根證書頒發(fā)機構(gòu)”蹈胡。由于不能直接把keystore格式的證書庫導(dǎo)入,必須先把服務(wù)器證書導(dǎo)出為一個單獨的CER文件朋蔫,執(zhí)行命令:keytool -keystore D:/keys/tomcat.keystore -export -alias tomcat -file D:/keys/server.cer

4、雙擊server.cer文件却汉,按照提示安裝證書驯妄,將證書填入到“受信任的根證書頒發(fā)機構(gòu)”


4.2 打開ie的Internet選項,切換到內(nèi)容合砂,點擊證書青扔,選擇中間證書頒發(fā)機構(gòu),即可查看到自己安裝的證書翩伪。

4.3 接下來要做的就是要把證書從“中間證書頒發(fā)機構(gòu)”導(dǎo)出微猖,然后導(dǎo)入到“受信任的根證書頒發(fā)機構(gòu)”

4.3.1 把證書從“中間證書頒發(fā)機構(gòu)”導(dǎo)出

4.3.2 把導(dǎo)出的cer文件導(dǎo)入到“受信任的根證書頒發(fā)機構(gòu)”

第三部分 綜上,一共生成了以下幾個文件

?Tomcat啟用HTTPS協(xié)議之JDK工具keytool

需求:平臺原本是用http訪問的缘屹,為了保證數(shù)據(jù)傳輸?shù)耐暾约胺乐菇涌诒槐O(jiān)聽凛剥,甲方要求將平臺改為https訪問。

原因:HTTP 的連接很簡單轻姿,是無狀態(tài)的犁珠;HTTPS?協(xié)議是由 SSL+HTTP 協(xié)議構(gòu)建的可進行加密傳輸逻炊、身份認證的網(wǎng)絡(luò)協(xié)議,比 HTTP 協(xié)議安全

方案1犁享、在tomcat中修改server.xml配置余素,使用jdk自帶工具keytool生成ssl證書,使平臺可以通過https訪問炊昆。

方案2桨吊、通過Nginx代理的方式將https轉(zhuǎn)為http,已達到上述目的凤巨。

此文記錄方案1的詳細操作视乐,流程比較繁瑣,但絕對可以成功磅甩。

第一部分:如下操作完炊林,即可通過https://ip:8843/projectName訪問平臺,如下圖卷要。問題是訪問會提示“此站點不安全”渣聚,點擊“詳細信息”中的“轉(zhuǎn)到此網(wǎng)頁(不推薦)”,即可打開平臺僧叉。


1奕枝、首先需要安裝jdk(安裝方法自行百度),本文用的是jdk1.8瓶堕,在安裝路徑下找keytool.exe电媳。

2、在keytool中按住shift+右鍵淮腾,點擊在此處打開Powershell窗口监婶,打開的命令窗口即keytool.exe所在的目錄,后續(xù)的命令均在此處執(zhí)行宛蚓。

3激捏、在d盤下創(chuàng)建keys文件,后續(xù)命令生成的文件均在此目錄下

4凄吏、執(zhí)行以下命令:keytool?-genkey?-alias?tomcat?-keypass?123456?-keyalg?RSA?-keysize?1024?-validity?365?-keystore?D:/keys/tomcat.keystore?-storepass?123456

命令中重點關(guān)注參數(shù):別名-alias tomcat远舅,記住這個tomcat,后面用的到痕钢。-keypass 密碼图柏,這個非常重要,后面用的到任连。-keystore 路徑蚤吹,這個是生成tomcat.keystore的路徑。

輸入內(nèi)容中重點參數(shù):您的名字與姓氏是什么随抠?這個填寫要使用https訪問的平臺ip距辆,其他的可以是anything

5余佃、將生成的tomcat.keystore放到平臺所在服務(wù)器下(/root/key),

6跨算、修改tomcat下conf中的server.xml爆土,增加如下配置,重點關(guān)注路徑(tomcat.keystore所在的路徑)和密碼(生成tomcat.keystore時用的密碼):

? ? <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"?maxThreads="150" scheme="https" secure="true"clientAuth="false" sslProtocol="TLS" keystoreFile="/root/key/tomcat.keystore" keystorePass="123456"? />

7诸蚕、以上配置完成后重啟tomcat步势,第一部分操作完成,結(jié)果應(yīng)該入開始部分的描述背犯。

第二部分 如下操作完坏瘩,即可通過https正常訪問平臺,沒有“此站點不安全”的提示漠魏。

0倔矾、嘗試過降低ie安全級別,加入信任站點等方式柱锹,仍有“此站點不安全”的提示哪自,因此不得不繼續(xù)進行了。

1禁熏、為客戶端生成證書壤巷,以便讓服務(wù)器來驗證,證書格式應(yīng)該是PKCS12瞧毙。執(zhí)行如下命令:keytool -genkey -alias client -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -storetype PKCS12 -keystore D:/keys/client.p12 -storepass 123456

執(zhí)行后會在d:/keys下生成client.p12文件胧华。重點關(guān)注-alias 別名,后續(xù)用的到宙彪。-validity 驗證有效期限矩动。

命令之后會輸入您的名字與姓氏是什么,此處輸入平臺的ip释漆,其他的選項可以是anything悲没。

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

2.1?由于不能直接將PKCS12格式的證書庫導(dǎo)入灵汪,必須先把客戶端證書導(dǎo)出為一個單獨的CER文件。執(zhí)行命令: keytool -export -alias client -keystore D:/keys/client.p12 -storetype PKCS12 -keypass 123456 -file D:/keys/client.cer

秘鑰庫口令即上文輸入的123456

2.2將該文件導(dǎo)入到服務(wù)器的證書庫柑潦,添加為一個信任證書,執(zhí)行命令:keytool -import -v -file D:/keys/client.cer -keystore D:/keys/tomcat.keystor

秘鑰庫口令即上文輸入的123456

2.3完成之后通過list命令查看服務(wù)器的證書庫享言,可以看到兩個證書,一個是服務(wù)器證書渗鬼,一個是受信任的客戶端證書:keytool?-list?-v?-keystore?D:/keys/tomcat.keystore

3.讓客戶端信任服務(wù)器證書览露,由于是雙向SSL認證,客戶端也要驗證服務(wù)器證書譬胎,因此差牛,必須把服務(wù)器證書添加到瀏覽器的“受信任的根證書頒發(fā)機構(gòu)”命锄。由于不能直接把keystore格式的證書庫導(dǎo)入,必須先把服務(wù)器證書導(dǎo)出為一個單獨的CER文件偏化,執(zhí)行命令:keytool -keystore D:/keys/tomcat.keystore -export -alias tomcat -file D:/keys/server.cer

4脐恩、雙擊server.cer文件,按照提示安裝證書侦讨,將證書填入到“受信任的根證書頒發(fā)機構(gòu)”

4.2 打開ie的Internet選項驶冒,切換到內(nèi)容,點擊證書韵卤,選擇中間證書頒發(fā)機構(gòu)骗污,即可查看到自己安裝的證書。

4.3 接下來要做的就是要把證書從“中間證書頒發(fā)機構(gòu)”導(dǎo)出沈条,然后導(dǎo)入到“受信任的根證書頒發(fā)機構(gòu)”

4.3.1 把證書從“中間證書頒發(fā)機構(gòu)”導(dǎo)出

4.3.2 把導(dǎo)出的cer文件導(dǎo)入到“受信任的根證書頒發(fā)機構(gòu)”

第三部分 綜上需忿,一共生成了以下幾個文件

1、首先需要安裝jdk(安裝方法自行百度)蜡歹,本文用的是jdk1.8屋厘,在安裝路徑下找keytool.exe。

2季稳、在keytool中按住shift+右鍵擅这,點擊在此處打開Powershell窗口,打開的命令窗口即keytool.exe所在的目錄景鼠,后續(xù)的命令均在此處執(zhí)行仲翎。

3、在d盤下創(chuàng)建keys文件铛漓,后續(xù)命令生成的文件均在此目錄下

4溯香、執(zhí)行以下命令:keytool?-genkey?-alias?tomcat?-keypass?123456?-keyalg?RSA?-keysize?1024?-validity?365?-keystore?D:/keys/tomcat.keystore?-storepass?123456

命令中重點關(guān)注參數(shù):別名-alias tomcat,記住這個tomcat浓恶,后面用的到玫坛。-keypass 密碼,這個非常重要包晰,后面用的到湿镀。-keystore 路徑,這個是生成tomcat.keystore的路徑伐憾。

輸入內(nèi)容中重點參數(shù):您的名字與姓氏是什么勉痴?這個填寫要使用https訪問的平臺ip,其他的可以是anything

5树肃、將生成的tomcat.keystore放到平臺所在服務(wù)器下(/root/key)蒸矛,

6、修改tomcat下conf中的server.xml,增加如下配置雏掠,重點關(guān)注路徑(tomcat.keystore所在的路徑)和密碼(生成tomcat.keystore時用的密碼):

? ? <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"?maxThreads="150" scheme="https" secure="true"clientAuth="false" sslProtocol="TLS" keystoreFile="/root/key/tomcat.keystore" keystorePass="123456"? />

7斩祭、以上配置完成后重啟tomcat,第一部分操作完成乡话,結(jié)果應(yīng)該入開始部分的描述摧玫。

第二部分 如下操作完,即可通過https正常訪問平臺蚊伞,沒有“此站點不安全”的提示席赂。

0、嘗試過降低ie安全級別时迫,加入信任站點等方式颅停,仍有“此站點不安全”的提示,因此不得不繼續(xù)進行了掠拳。

1癞揉、為客戶端生成證書,以便讓服務(wù)器來驗證溺欧,證書格式應(yīng)該是PKCS12喊熟。執(zhí)行如下命令:keytool -genkey -alias client -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -storetype PKCS12 -keystore D:/keys/client.p12 -storepass 123456

執(zhí)行后會在d:/keys下生成client.p12文件。重點關(guān)注-alias 別名姐刁,后續(xù)用的到芥牌。-validity 驗證有效期限。

命令之后會輸入您的名字與姓氏是什么聂使,此處輸入平臺的ip壁拉,其他的選項可以是anything。

2柏靶、讓服務(wù)器信任客戶端證書

2.1?由于不能直接將PKCS12格式的證書庫導(dǎo)入弃理,必須先把客戶端證書導(dǎo)出為一個單獨的CER文件。執(zhí)行命令: keytool -export -alias client -keystore D:/keys/client.p12 -storetype PKCS12 -keypass 123456 -file D:/keys/client.cer

秘鑰庫口令即上文輸入的123456

2.2將該文件導(dǎo)入到服務(wù)器的證書庫屎蜓,添加為一個信任證書,執(zhí)行命令:keytool -import -v -file D:/keys/client.cer -keystore D:/keys/tomcat.keystor

秘鑰庫口令即上文輸入的123456

2.3完成之后通過list命令查看服務(wù)器的證書庫痘昌,可以看到兩個證書,一個是服務(wù)器證書炬转,一個是受信任的客戶端證書:keytool?-list?-v?-keystore?D:/keys/tomcat.keystore

3.讓客戶端信任服務(wù)器證書辆苔,由于是雙向SSL認證,客戶端也要驗證服務(wù)器證書扼劈,因此驻啤,必須把服務(wù)器證書添加到瀏覽器的“受信任的根證書頒發(fā)機構(gòu)”。由于不能直接把keystore格式的證書庫導(dǎo)入测僵,必須先把服務(wù)器證書導(dǎo)出為一個單獨的CER文件街佑,執(zhí)行命令:keytool -keystore D:/keys/tomcat.keystore -export -alias tomcat -file D:/keys/server.cer

4、雙擊server.cer文件捍靠,按照提示安裝證書沐旨,將證書填入到“受信任的根證書頒發(fā)機構(gòu)”

4.2 打開ie的Internet選項,切換到內(nèi)容榨婆,點擊證書磁携,選擇中間證書頒發(fā)機構(gòu),即可查看到自己安裝的證書良风。

4.3 接下來要做的就是要把證書從“中間證書頒發(fā)機構(gòu)”導(dǎo)出谊迄,然后導(dǎo)入到“受信任的根證書頒發(fā)機構(gòu)”

4.3.1 把證書從“中間證書頒發(fā)機構(gòu)”導(dǎo)出

4.3.2 把導(dǎo)出的cer文件導(dǎo)入到“受信任的根證書頒發(fā)機構(gòu)”

第三部分 綜上,一共生成了以下幾個文件

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末烟央,一起剝皮案震驚了整個濱河市统诺,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌疑俭,老刑警劉巖粮呢,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異钞艇,居然都是意外死亡啄寡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進店門哩照,熙熙樓的掌柜王于貴愁眉苦臉地迎上來挺物,“玉大人,你說我怎么就攤上這事飘弧∈短伲” “怎么了?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵眯牧,是天一觀的道長蹋岩。 經(jīng)常有香客問我,道長学少,這世上最難降的妖魔是什么剪个? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮版确,結(jié)果婚禮上扣囊,老公的妹妹穿的比我還像新娘。我一直安慰自己绒疗,他們只是感情好侵歇,可當我...
    茶點故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著吓蘑,像睡著了一般惕虑。 火紅的嫁衣襯著肌膚如雪坟冲。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天溃蔫,我揣著相機與錄音健提,去河邊找鬼。 笑死伟叛,一個胖子當著我的面吹牛私痹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播统刮,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼紊遵,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了侥蒙?” 一聲冷哼從身側(cè)響起暗膜,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎鞭衩,沒想到半個月后桦山,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡醋旦,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年恒水,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片饲齐。...
    茶點故事閱讀 38,673評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡钉凌,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出捂人,到底是詐尸還是另有隱情御雕,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布滥搭,位于F島的核電站酸纲,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏瑟匆。R本人自食惡果不足惜闽坡,卻給世界環(huán)境...
    茶點故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望愁溜。 院中可真熱鬧疾嗅,春花似錦、人聲如沸冕象。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽渐扮。三九已至论悴,卻和暖如春掖棉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背膀估。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工啊片, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人玖像。 一個月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像齐饮,于是被迫代替她去往敵國和親捐寥。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 43,562評論 2 349