openssl和jdk配置toncat证书

前言

     项目需要在tomcat中配置ssl认证,学习了一下怎么配置,由于对pki认证体系、证书的制作和发放过程不了解,整个配置过程坎坷,所以配置成功后立即记录下来希望以后遇到类似的情况有所参考。
本文讲述了如何使用 openssl 制作证书、keytool生成证书申请并将证书导入证书库、如何配置tomcat,和配置当中出现问题的解释。
    本文用到的工具: OpenSSL.rar(点击下载)  keytool(JDK中自带的工具)

使用 openssl 生成根证书生成

1.解压openssl.rar 到 c:\openssl 下,在命令行中将目录转到 c:\openssl\bin

2. 生成根证书的私钥,生成文件cakey.pem

    openssl genrsa -out cakey.pem 1024

3.根据私钥生成证书申请,生成文件careq.csr

    openssl req -new -out careq.csr -key cakey.pem
    
    在生成申请时需要填入相关的信息,根据部署的地点不同做相应的改变
    

4. 利用根证书申请生成自签名根证书,生成文件cacert.pem

    openssl x509 -req -in careq.csr -out cacert.pem -signkey cakey.pem -days 3650
    
    至此根证书制作完毕,为了方便起见,在 openssl.rar\bin\ 中已经包含 生成根证书.bat 点击执行即可。

生成tomcat证书库文件和证书申请

1.生成证书库文件 tomcatkey.jks

    keytool -genkey -alias tomcat_server -keyalg RSA -keysize 1024 -validity "1825" -keypass 123456 -keystore tomcatkey.jks -storepass 123456
     红色部分 可以根据具体的部署情况做相应的改变
     -alias 证书库文件中私钥的别名
     -keypass 证书库文件私钥的密码
     -keystore 证书库文件的存储路径
     -storepass 证书库文件的密码
     执行后需要填写相应的信息
    
     名称和姓氏 一定要填入服务器的域名或ip地址,否则部署之后会提示 证书地址不匹配 的错误
     剩余的部分必须和根证书填写一致。(不知道根证书的内容,可以双击根证书查看其内容)
    

2.根据证书库文件生成证书申请,生成文件 certreq.cer

     keytool -certreq -alias tomcat_server -sigalg "MD5withRSA" -file certreq.cer -keypass 123456 -keystore tomcatkey.jks -storepass 123456
    

制作服务器证书并导入证书库

1.用根证书签名证书申请生成根证书,生成文件 tomcatcert.pem

     openssl ca -keyfile cakey.pem -cert cacert.pem -in certreq.cer -out tomcatcert.pem -config openssl.cnf -policy policy_anything
     至此证书可能会失败,其原因是openssl证书数据库里已经存储了这个证书           解决办法是在目录 openssl\democa\index.txt 把里面的内容全部删除(当然这个做法带来的危险是已有的证书也会删除,如果有耐心可以找到那条记录把他删除)
重新执行上面的那条语句就可以了
    

2.由于原有的格式都是pem格式,在导入证书库之前(即导入jks文件)需要转换成cer格式,生成文件 cacert.cer、tomcatcert.cer

     openssl x509 -in cacert.pem -out cacert.cer
     openssl x509 -in tomcatcert.pem -out tomcatcert.cer

3.将转换成功的cer文件导入证书库文件中

     首先导入根证书
     keytool -keystore tomcatkey.jks -import -alias RootCA -file cacert.cer
    
     然后再导入服务器证书
     keytool -keystore tomcatkey.jks -import -alias tomcat_server -file tomcatcert.cer
    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值