设为首页 收藏本站
查看: 908|回复: 0

[经验分享] 如何配置tomcat证书

[复制链接]

尚未签到

发表于 2015-8-7 09:11:58 | 显示全部楼层 |阅读模式
前言
     项目需要在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
DSC0000.jpg
3.根据私钥生成证书申请,生成文件careq.csr
    openssl req -new -out careq.csr -key cakey.pem
    DSC0001.jpg
    在生成申请时需要填入相关的信息,根据部署的地点不同做相应的改变
    DSC0002.jpg
4. 利用根证书申请生成自签名根证书,生成文件cacert.pem
    openssl x509 -req -in careq.csr -out cacert.pem -signkey cakey.pem -days 3650
    DSC0003.jpg
    至此根证书制作完毕,为了方便起见,在 openssl.rar\bin\ 中已经包含 生成根证书.bat 点击执行即可。
生成tomcat证书库文件和证书申请
1.生成证书库文件 tomcatkey.jks
    keytool -genkey -alias  tomcat_server -keyalg RSA -keysize 1024 -validity "1825" -keypass  123456  -keystoretomcatkey.jks -storepass  123456
    红色部分 可以根据具体的部署情况做相应的改变
     -alias 证书库文件中私钥的别名
     -keypass 证书库文件私钥的密码
     -keystore 证书库文件的存储路径
     -storepass 证书库文件的密码
     执行后需要填写相应的信息
      DSC0004.jpg
     名称和姓氏 一定要填入服务器的域名或ip地址,否则部署之后会提示 证书地址不匹配 的错误
      剩余的部分必须和根证书填写一致。(不知道根证书的内容,可以双击根证书查看其内容)
       DSC0005.jpg
2.根据证书库文件生成证书申请,生成文件 certreq.cer
      keytool -certreq -alias tomcat_server -sigalg "MD5withRSA" -file certreq.cer -keypass123456 -keystore tomcatkey.jks -storepass 123456
       DSC0006.png
制作服务器证书并导入证书库
1.用根证书签名证书申请生成根证书,生成文件 tomcatcert.pem
     openssl ca -keyfile cakey.pem -cert cacert.pem -in certreq.cer -out tomcatcert.pem-config openssl.cnf -policy policy_anything
DSC0007.png         至此证书可能会失败,其原因是openssl证书数据库里已经存储了这个证书         DSC0008.png         解决办法是在目录 openssl\democa\index.txt 把里面的内容全部删除(当然这个做法带来的危险是已有的证书也会删除,如果有耐心可以找到那条记录把他删除)
重新执行上面的那条语句就可以了
      DSC0009.png
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
       DSC00010.png
       然后再导入服务器证书
      keytool -keystore tomcatkey.jks -import -alias tomcat_server -file tomcatcert.cer
       DSC00011.png
参考资料
  xp下使用Openssl来制作证书,在IIS中配置Https笔记

  主题:Tomcat6配置使用SSL双向认证
      使用openssl的CA签发证书,签名 applet

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-95013-1-1.html 上篇帖子: tomcat中多线程web服务的关闭 下篇帖子: Server Tomcat v6.0 Server at localhost was unable to start within 45 seconds
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表