配置Tomcat服务器支持HTTPS

来源:互联网 发布:鬣狗掏肛 知乎 编辑:程序博客网 时间:2024/06/06 01:13

1.        生成证书

首先用jdk自带的工具keytool生成一个"服务器证书"

C:/Program Files/Java/jre1.5.0_04/bin> keytool -genkey  -alias safetomcat  -keyalg RSA  -keystore c:/leadsec -validity 2000
输入keystore密码:  leadsec
您的名字与姓氏是什么?
  [Unknown]  10.50.10.188
您的组织单位名称是什么?
  [Unknown]  Lenovo
您的组织名称是什么?
  [Unknown] Lenovo
您所在的城市或区域名称是什么?
  [Unknown]  Beijing
您所在的州或省份名称是什么?
  [Unknown]  Beijing
该单位的两字母国家代码是什么
  [Unknown]  CN
CN=10.50.10.188, OU= Lenovo, O= Lenovo, L=Beijing, ST=Beijing, C=CN
 
正确吗?
  []  y

输入<safetomcat>的主密码
        (如果和 keystore密码相同,按回车):
       

经过上述操作后,获得文件c:/Leadsec
注意:
    提示名字和姓氏时,应输入服务器的DNS域名或者IP地址,否则,客户端会弹出警告窗口。"站点不符"
   
另外,因为是自签名的证书,客户端会弹出非信任的机构颁发,这时可以点击继续,或者安装该证书,确认自己的信任。

建立服务器证书

 

2.        配置Tomcat 

找到tomcatserver配置文件,位置是Tomcat 5.5/conf/server.xml

修改server.xml文件中增加类似这样的语句:

 

<Connector className="org.apache.coyote.tomcat5.CoyoteConnector"

          port="8888" minProcessors="5" maxProcessors="75"

          enableLookups="true" disableUploadTimeout="true"

          acceptCount="100" debug="0" scheme="https" secure="true"

          clientAuth="false" sslProtocol="TLS"keystoreFile="C:/leadsec" keystorePass="leadsec" />

              注意:

                     端口可以自行设置,但不能和已有的设置冲突。一般默认为8443

                    keystoreFile和keystorePass必须与上一步建立的证书一致。

 

配置tomcatserver.xml

3.        Https访问

重启Tomcat,访问https://localhost:8888/

                                         通过Https访问tomcat

详细配置可以访问:

http://tomcat.apache.org/tomcat-5.0-doc/ssl-howto.html