Tomcat6.0 SSL的配置

本文详细描述了如何在Tomcat6.0中配置HTTPS,包括安装JDK、生成自签名证书、修改配置文件及测试过程。此外,还介绍了如何通过web.xml配置特定资源走HTTPS协议。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 参考:


Tomcat 6.0 自带的文档docs/ssl-howto.html,详细介绍了配置过程。


2. 目的:


       以下详细描述配置过程,仅作为备忘录。


3. 备忘录:


Step1,安装tomcat 6.0.18,此为当前最新版本,需JDK5.0或以上。


l         JDK安装后,可以在命令行下使用如下命令检测是否成功。


C:\Documents and Settings\new>java -version


java version "1.6.0_10"


Java(TM) SE Runtime Environment (build 1.6.0_10-b33)


Java HotSpot(TM) Client VM (build 11.0-b15, mixed mode, sharing)


看到以上蓝色信息,则表示JDK安装配置成功。


l         Tomcat的运行需要配置JDK_HOME和JRE_HOME环境变量,JRE_HOME默认等于JDK_HOME的值。


Step2,创建服务器端certificate keystore和自签名certificate。


       在命令行下使用如下命令:


C:\Documents and Settings\new>keytool -genkey -alias mykey -keyalg RSA -validity 3650 -keystore server.keystore


输入keystore密码:123456


再次输入新密码:123456


您的名字与姓氏是什么?


  [Unknown]:  dinstone


您的组织单位名称是什么?


  [Unknown]:  advance software ltd.


您的组织名称是什么?


  [Unknown]:  china


您所在的城市或区域名称是什么?


  [Unknown]:  beijing


您所在的州或省份名称是什么?


  [Unknown]:  beijing


该单位的两字母国家代码是什么


  [Unknown]:  cn


CN=dinstone, OU=advance software ltd., O=china, L=beijing, ST=beijing, C=cn 正确吗?


  [否]:  y


 


输入<mykey>的主密码


        (如果和 keystore 密码相同,按回车):


在C:\Documents and Settings\new下可以找到一个文件:server.keystore,其中就包含了自签名的证书。


注意:


       这里要求certificate keystore 和certificate的密码一致,此为Tomcat的约束。


Step3,在%TOMCAT_HOME%目录下新建目录keystore,并拷贝server.keystore到其目录下。


Step4,修改%TOMCAT_HOME%/conf/server.xml文件。添加https的Connector。


<Connector


           port="8443" minSpareThreads="5" maxSpareThreads="75"


           enableLookups="true" disableUploadTimeout="true"


           acceptCount="100"  maxThreads="200"


           scheme="https" secure="true" SSLEnabled="true"


           keystoreFile="keystore/server.keystore" keystorePass="123456"


           clientAuth="false" sslProtocol="TLS"/> 


注意:


       keystoreFile指向文件%TOMCAT_HOME%/keystore/server.keystore文件。


       keystorePass就是刚才生成certificate keystore的密码。


Step5,测试Https。访问https://localhost:8443/,提示有不安全的证书,接受证书,看到可亲的tom猫。


4. 延伸


某些情况下,某些特定资源需要走https协议,如登录请求。这时,我们可以在web.xml中配置约束。


<security-constraint>


       <web-resource-collection>


           <web-resource-name>SSL Resource</web-resource-name>


           <url-pattern>/login.jsp</url-pattern>


       </web-resource-collection>


       <user-data-constraint>


               <transport-guarantee>


                       CONFIDENTIAL


</transport-guarantee>


       </user-data-constraint>


</security-constraint>


这样当使用如下请求访问登录页面时,则服务器将该请求建立在https连接上。


http://localhost:8080/CCB/login.jsp
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值