网上找了一堆的tomcat中配置ssl的文章,发现没有一个是能一次通过的,花了1上午的时间终于搞定了,留下本博文
在tomcat等J2ee服务器中的使用步骤:
生成密钥对,将放在别名为 tomcat中,加密保存在文件 tomcat.ks中
1. keytool -genkey -alias tomcat -keystore tomcat.ks -keyalg RSA -keysize 1024
使用上面生成的密钥对产生证书申请文件,存放在:tomcat.csr中,接着要拿着这个申请文件到证书中心签发正式的证书,签发的证书应该名字叫做:tomcat.der或tomcat.cer或者tomcat.pem等格式,同时证书中心将给一个根证书(root.der)文件。
2. keytool -certreq -alias tomcat -keystore tomcat.ks -file tomcat.csr
将拿到的根证书(root.der)导入到keystore中,这里的关键点是:alias不能是tomcat,但是可以是其它的任意名字如:ca
3. keytool -import -trustcacerts -keystore tomcat.ks -alias ca -file root.der
将拿到的证书(tomcat.der)导入到keystore中,这里的alias 必须是:tomcat
4. keytool -import -keystore tomcat.ks -alias tomcat -file tomcat.der
可能出现的问题:
在步骤4中可能提示:
java.lang.Exception:无法从回复中建立链接
出错的原因是证书中的根证书颁发机构在这个Keystore中不存在。
解决办法:
在第3步中指定的 -alias 名字不能是tomcat,重新执行第3步骤就好了。
在tomcat中配置server.xml:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="tomcat.ks"
keystorePass="在keytool中输入的密码"
ciphers=""
/>
如有问题请联系:17312720@qq.com