實驗環境: apache-tomcat-7.0.29, JDK7 , win7
?
打開conf/server.xml會發現有下面一段配置被注釋著:
? ? <!-- ? ? <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" ? ? ? ? ? ? ? ?maxThreads="150" scheme="https" secure="true" ? ? ? ? ? ? ? ?clientAuth="false" sslProtocol="TLS" /> ? ? --> |
這段配置可以讓tomcat支持SSL連接。默認是注釋的。取消他的注釋,并按需修改。
secure必須設置為true,scheme必須設計為https
如果你更改了SSL端口8443為其他端口,你必須修改其他非SSL的redirectPort,因為非SSL連接會重定向那些需要SSL安全約束的用戶請求到你所修改的那個端口。
?
去掉注釋,并啟動tomcat,輸入 ?https://localhost:8443 ?就可以看到SSL加密效果。 8443是配置的ssl請求連接端口
?
?
配置Keystores
要使用ssl connector,必須先創建一個keystore。他包含了服務器中被客戶端用于驗證服務器的數字證書。一旦客戶端接受了這個證書,客戶端就可以使用public key去加密他們要發送的數據。而服務器,擁有一個private key,作為唯一解密數據的密鑰。
?
要創建keystore,可以使用JAVA_HOME/bin下的keytool
keytool -genkey -alias tomcat -keyalg RSA
-genkey:創建一個public-private key pair
?-alias tomcat:用戶別名為tomcat
-keyalg RSA: 使用RSA算法。 ?MD5算法也是被支持的,但是建議使用RSA獲得更好的兼容。
上面那句話,創建了一個自簽證書(self-signed certificate)
?
運行上面這段命令后,如果是第一次使用,會讓你輸入密鑰庫口令,這個是倉庫口令,然后輸入個人資料,最后為tomcat用戶設置口令,如果想設置為和倉庫口令一致,直接回車即可。
最后,會在C:\Users\Administrator(當前登錄用戶名)下生成一個.keystore的文件,保存tomcat等key信息。
?
如果想使用keystore,那么將connector修改如下:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" ? ? ? ? ? ? ? ?maxThreads="150" scheme="https" secure="true" ? ? ? ? ? ? ? ?clientAuth="false" sslProtocol="TLS" ??keystorePass="你剛才為tomcat用戶添加的口令"/> |
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

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