Tomcat配置自签名https
從JDK中找到keytool.exe,隨便復制到一個方便的目錄,在命令行中進入這個目錄。
第一步:為服務器生成證書 tomcat.keystore,名字就是域名,其他的看著寫。
keytool -genkey -v -alias tomcat -keyalg RSA -validity 36500 -keystore tomcat.keystore第二步:為客戶端生成證書,雙向認證時需要客戶端安裝該證書,等待第四步成功后將該證書添加到“個人”區域。
keytool -genkey -v -alias clientkey -keyalg RSA -validity 36500 -storetype PKCS12 -keystore client.p12第三步:將p12文件導出為一個cer文件,因為不能直接將PKCS12格式的證書庫導入服務端證書(tomcat.keystore)。123456為密碼
keytool -export -alias mykey -keystore client.p12 -storetype PKCS12 -storepass 123456 -rfc -file client.cer第四步:讓服務器信任客戶端證書。
keytool -import -v -file client.cer -keystore tomcat.keystore第五步:查看服務器的證書庫。(一個是服務器證書,一個是受信任的客戶端證書),可以省略。
keytool -list -keystore tomcat.keystore第六步:把服務器證書導出為cer文件,然后將該證書添加到“受信任的根證書頒發機構”區域。
keytool -keystore tomcat.keystore -export -alias tomcat -file server.cer操作完成,在tomcat的server.xml中配置方法如下: 單向認證時需將clientAuth="false",雙向時設置為clientAuth="true",https的默認端口為443,所以port="443",當然也可以設置為其他的。
<Connector port="443"protocol="HTTP/1.1"SSLEnabled="true"maxThreads="150"URIEncoding="utf-8"scheme="https"secure="true"clientAuth="true"sslProtocol="TLS"keystoreFile="c:/keystore/tomcat.keystore"keystorePass="123456"truststoreFile="c:/keystore/tomcat.keystore"truststorePass="123456"/>
?
注意:
將 server.cer?導入到瀏覽器“受信任的根證書頒發機構”區域,這樣是為了讓瀏覽器信任服務器。
將 client.p12?導入到瀏覽器“個人”區域,這樣是為了讓服務器信任瀏覽器,訪問時會提示選擇這個證書。
另外還可以通過openssl來生成相關證書,還有在iis上的配置等,稍后奉上。
?
有圖有真相
?
更多專業前端知識,請上 【猿2048】www.mk2048.com
總結
以上是生活随笔為你收集整理的Tomcat配置自签名https的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: http请求post,返回excel文件
- 下一篇: React中ref的使用方法