您的位置:首页 > 运维架构 > Tomcat

TOMCAT使用BKS类型证书问题解决

2012-06-27 17:29 337 查看
1.下载 BouncyCastle   http://www.bouncycastle.org/latest_releases.html

2.把下载的JAR包拷到LIB库: bcprov-jdk16-146.jar     C:\jre6\lib\ext     C:\jdk1.6.0_23\jre\lib\ext   , 由于JAVA_HOME 与IDE用的JRE 有可能为两个路径,要两个都拷入

3.修改 jre\lib\security  下  java.security 文件 添加  security.provider.3=org.bouncycastle.jce.provider.BouncyCastleProvider    序号为方法调用顺序,可自定我定的是3。(同样修改JDK与JRE下两个文件)

4.环境变量下的 PATH 已加入 JDK或JRE 下BIN,可在CMD中执行 keytool,

执行:keytool -genkey -alias tomcat -storetype BKS  -keyalg RSA -keystore c:\ws\tomcat.keystore.bks -validity 36500  

相关解译见另一文章。如果没有 -storetype BKS  参数 默认为 JKS 类型,指定为BKS后 调用 org.bouncycastle.jce.provider.BouncyCastleProvider   进行证书生成

5.修改TOMCAT  server.xml  去除 8443 端口注释,开放SSL功能。但要添加证书类型指定 如:

<Connector SSLEnabled="true" clientAuth="false" keystoreFile="c:\tomcat6\tomcat.keystore.bks" keystoreType="BKS" keystorePass="123456" maxThreads="150" port="8443" protocol="HTTP/1.1" scheme="https" secure="true"
sslProtocol="TLS"/>

原来XML没有类型指定默认为 JKS方式,如果不写启动TOMCAT时会报  java.io.IOException: Invalid keystore format 异常
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息