Windows下配置Tomcat使用https协议
場景
首先需要知道
HTTP+加密+數(shù)據(jù)完整性保護(hù)+認(rèn)證=HTTPS
HTTP+SSL=HTTPS (在TCP與HTTP之間多了一層SSL/TSL協(xié)議)
所以配置Tomcat使用https協(xié)議,你需要以下幾步:
1.創(chuàng)建tomcat證書
2.修改Tomcat的配置文件server.xml
3.導(dǎo)出Tomcat的證書
4.將Tomcat的證書安裝到瀏覽器
實(shí)現(xiàn)
創(chuàng)建Tomcat證書
注意點(diǎn):
1.使用JDK自帶的keytool工具來生成證書。
其中keytool.exe是在jdk的安裝目錄下的bin下,比如這里默認(rèn)是
C:\Program Files\Java\jdk1.8.0_112\bin
在此處打開命令行窗口,win7是按住shift,然后鼠標(biāo)右擊,在此處打開命令行窗口。
然后輸入:
keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "g:\tomcat.keystore"其中后面是證書存放的路徑。
然后按照提示輸入相關(guān)內(nèi)容:
密鑰庫指令為6位字符。
名字與姓氏對應(yīng)域名,這里是localhost。
其它內(nèi)容根據(jù)自己實(shí)際情況填寫。
回車之后會在g盤下生成tomcat.keystore文件。
記住上面輸入的密碼。后面會用到。
2.生成證書時(shí)名字與姓氏應(yīng)該輸入域名。
比如這里我是用的本電腦的Tomcat,所以姓名與姓氏填寫的是localhost。
配置Tomcat服務(wù)器
找到Tomcat目錄下的conf下的server.xml
使用Edit plus等打開,找到connector便簽的位置,默認(rèn)是注釋掉的。
現(xiàn)在將其修改為:
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"maxThreads="150" SSLEnabled="true" scheme="https" secure="true"clientAuth="false" sslProtocol="TLS"? keystoreFile="g:\tomcat.keystore"?? keystorePass="123456"/>注:
1.在互聯(lián)網(wǎng)上,http協(xié)議的默認(rèn)端口是80,https的默認(rèn)端口是443,所以這里將其改為443。
2.keystoreFile就是上面生成證書的路徑,而keystorePass就是剛才設(shè)置的密碼。
3.參數(shù)說明:
clientAuth: 如果想要Tomcat為了使用這個(gè)socket而要求所有SSL客戶出示一個(gè)客戶證書,置該值為true。
sslProtocol:? socket使用的加密/解密協(xié)議。如果使用的是Sun的JVM,則不建議改變這個(gè)值。據(jù)說IBM的1.4.1版的TLS協(xié)議的實(shí)現(xiàn)和一些流行的瀏覽器不兼容。這種情況下,使用SSL。?
protocol:原來屬性是"HTTP/1.1",如果啟動(dòng)tomcat報(bào)錯(cuò),將其修改為"org.apache.coyote.http11.Http11Protocol"
4.keystoreFile:這里是用的絕對路徑,如果創(chuàng)建的keystore文件不在Tomcat認(rèn)為的缺省位置(一個(gè)在Tomcat運(yùn)行的home目錄下的叫.keystore的文件),則加上該屬性。可以指定一個(gè)絕對路徑或依賴$CATALINA_BASE環(huán)境變量的相對路徑。
這里是用的絕對路徑,路徑為上面生成的證書的路徑,也可以用絕對路徑,使用絕對路徑要依賴?$CATALINA_BASE環(huán)境變量。
5.關(guān)于配置Tomcat環(huán)境變量請參考:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/87606485
6.比如這里我們配置成功了Tomcat的環(huán)境變量,將上面生成的證書放在Tomcat的目錄下
然后將上面的server.xml修改為相對路徑:
<Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"maxThreads="150" SSLEnabled="true" scheme="https" secure="true"clientAuth="false" sslProtocol="TLS"? keystoreFile="\tomcat.keystore"?? keystorePass="123456"/>導(dǎo)出Tomcat的證書
這里是使用的360極速瀏覽器開啟兼容模式,兼容IE。
啟動(dòng)Tomcat,直接輸入:
https://localhost
會提示證書問題
為了能導(dǎo)出證書,在Tomcat下的webapps下的ROOT目錄下新建hello.html
然后輸入:
https://localhost/hello.html
然后右擊網(wǎng)頁空白處--屬性--證書--詳細(xì)信息
?
點(diǎn)擊復(fù)制到文件
點(diǎn)擊下一步
點(diǎn)擊下一步
填寫證書名,然后點(diǎn)擊下一步
點(diǎn)擊完成
導(dǎo)出成功,這里導(dǎo)出的路徑是桌面,所以來到桌面可以看到證書文件。
安裝證書到瀏覽器
找到瀏覽器的Internet選項(xiàng)--內(nèi)容--證書
360瀏覽器是在工具中
?
點(diǎn)擊證書
選擇受信任的跟證書頒發(fā)機(jī)構(gòu),點(diǎn)擊導(dǎo)入
點(diǎn)擊下一步
點(diǎn)擊瀏覽,選擇剛才導(dǎo)出的證書
點(diǎn)擊打開
點(diǎn)擊下一步
點(diǎn)擊下一步
點(diǎn)擊完成
點(diǎn)擊是
導(dǎo)入成功,點(diǎn)擊確定。
驗(yàn)證成功
我們在瀏覽器中直接輸入:
https://localhost/
可以看到已經(jīng)不提示證書問題了。
我們將項(xiàng)目部署到Tomvat下的webapps目錄下,啟動(dòng)Tomcat,然后在瀏覽器中將url
改為:
https://localhost:443后面加項(xiàng)目路徑 ,不會提示網(wǎng)頁錯(cuò)誤且能成功跳轉(zhuǎn)則配置成功。
總結(jié)
以上是生活随笔為你收集整理的Windows下配置Tomcat使用https协议的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Tomcat根目录下静态html怎样访问
- 下一篇: 一步一步教你在IEDA中快速搭建Spri