tomcat的SSL配置

最近需要用到tomcat的SSL配置,所以查阅了一些资料,大致掌握了Tomcat的SSL配置,在此做个小总结。

Tomcat的SSL配置分为两种情况:使用APR、不使用APR,这两种情况下的SSL配置各不相同。
我们可以在Tomcat的how-to文档中查到这两种情况下的配置方法,链接: http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html

对于不使用APR的情况,Tomcat的文档里说得比较清楚。配置参数也比较固定,配置如下:
		
	
<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector 
           port="8443" maxThreads="200"
           scheme="https" secure="true" SSLEnabled="true"
           keystoreFile="${user.home}/.keystore" keystorePass="changeit"
           clientAuth="false" sslProtocol="TLS"/>


而对于使用APR的情况,则较复杂一点。
怎么为Tomcat安装apr,参考: http://pengranxiang.iteye.com/blog/1128905

使用APR后,SSL的配置如下:
<-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 -->
<Connector 
           port="8443" maxThreads="200"
           scheme="https" secure="true" SSLEnabled="true"
           SSLCertificateFile="/usr/local/ssl/server.crt" 
           SSLCertificateKeyFile="/usr/local/ssl/server.pem"
           SSLPassword="123456"
           clientAuth="optional" SSLProtocol="TLSv1"/>

其中:SSLCertificateFile,指明证书的路径;
SSLCertificateKeyFile,指明私钥的路径;私钥也可以包含在证书文件里,如果私钥包含在证书文件里的话,则SSLCertificateKeyFile参数不需要配;
SSLPassword,指明私钥的加密密钥;如果SSLCertificateKeyFile中的私钥进行了加密,则需要配置SSLPassword;
Tomcat要求SSLCertificateFile、SSLCertificateKeyFile所指向的文件的内容格式都为PEM格式

生成签名证书的方法,参考: http://blog.csdn.net/jasonhwang/article/details/2329589

对于自签名证书,需要注意的是:
1、生成证书过程中,your name需要输入对应的网址,不然实际访问时,浏览器会提示实际网址与证书签名不一致的错误;
2、要想消除IE提示证书无效的提示,可以将证书导入IE,导入时选择存储位置为“受信任的根证书颁发机构”


猜你喜欢

转载自personbeta.iteye.com/blog/1395682