tomcat7中啓用HTTPS

證書是單點登錄認證系統中很重要的一把鑰匙,客戶端於服務器的交互安全靠的就是證書;本教程由於是演示所以就自己用JDK自帶的keytool工具生成證書;如果以後真正在產品環境中使用肯定要去證書提供商去購買,證書認證一般都是由VeriSign認證,中文官方網站:http://www.verisign.com/cn/

一、JDK自帶的keytool工具生成證書

1、Windows環境:

a、運行>>cmd

keytool -genkey -alias mytest -keyalg RSA

keytool生成證書

備註:最後的密鑰口令與密鑰庫口令保持相同,直接回車即可。

b、執行完成後會生成一個.keystore文件(例:C:\Users\Administrator.keystore),將它複製到tomcat的bin目錄下(並不一定,放哪裏都可以)

c、打開tomcat\conf\server.xml文件,找到以下這一段

<!--
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
           maxThreads="150" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS" />
-->               

d、去掉註釋,並添加keystoreFile、keystorePass兩個屬性:

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
           maxThreads="150" scheme="https" secure="true"
           keystoreFile="bin/.keystore" keystorePass="my123456"
           clientAuth="false" sslProtocol="TLS" />

e、之後啓動tomcat就可以了,通過https方式訪問8443端口,就能看到效果。如果用http訪問之前的端口,那麼還是普通的未加密連接。
http://localhost:8080/
https://localhost:8433/

備註:如果啓動報異常:java.lang.Exception: Connector attribute SSLCertificateFile must be defined when using SSL with APR
把tomcat\conf\server.xml文件中的

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

註釋掉即可。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章