tomcat6.0.33 ssl 单项验证
今天研究了下tomcat6.0.33的SSL单项配置,把整个的配置流程给记录下来,以便后边参阅。
tomcat6.0.33 默认是启动了APR连接器的,如果启动了APR连接器,那么是不能用keytool来产生自签名认证,必须使用OpenSSL的命令行工具生成,至于OpenSSL,可以去官网http://openssl.org下载源码,编译后进行使用。
tomcat6.0.33 APR SSL单项验证配置分三步:
第一步:使用OpenSSL生成密匙和自签名认证
生成密匙命令:
openssl genrsa -out rsa-private-key.pem 1024
?
生成自签名认证命令:
openssl req -new -x509 -nodes -sha1 -days 365 -key rsa-private-key.pem -out self-signed-cert.pem
?
把生成的这两个文件放入到文件夹${catalina.home}/conf/ssl(目录随意)下
?
第二步:配置${catalina.home}/conf/server.xml
开启APR连接器:
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
注:tomcat6.0.33默认是开启的
?
配置https Connector?
?<Connector port="8008" protocol="org.apache.coyote.http11.Http11AprProtocol"
?????????????? maxThreads="150" scheme="https" secure="true"
?????????????? clientAuth="false" sslProtocol="TLS"
?????????????? SSLEnabled="true"
????? SSLCertificateKeyFile="${catalina.home}/conf/ssl/rsa-private-key.pem"
????? SSLCertificateFile="${catalina.home}/conf/ssl/self-signed-cert.pem"?/>
?
第三步:http连接自动跳转到https(可选,不设置的话,http不会跳转到https,那连接就是不安全的)
配置web项目的web.xml
?????????????? connectionTimeout="20000" redirectPort="8008"/>?
至此,大功告成。