OpenSSL 把cer证书链以及key文件生成keystore,tomcat https配置

最近接触的项目中用到HTTPS,并且申请了证书以及私钥,这一块接触的少 先整理出来,谨防以后忘记。因为是tomcat中配置的https,需要将证书转成keystore文件,通过openssl 先通过证书以及私钥文件生成p12证书,再通过JAVA的keytool 生成keystore文件

  1. 准备工作
    OpenSSL 把cer证书链以及key文件生成keystore,tomcat https配置_第1张图片

  2. 申请的证书有证书链,可以右键以文本打开,把证书里的内容按从下至上的顺序复制到一个新建的文件里allinone.cer

  3. 将allinone.cer和payment.private.key上传至服务器当中

  4. 敲入以下命令,过程中会需要你输入两遍password,需要记住。输入完吼将会生成p12,具体参数命令可以自行百度,不过这个字面意思已经很直白了,就不做叙述

 openssl pkcs12 -export -in /root/allinone.cer -inkey /root/payment.private.key -out /root/projectX.p12
  通过上面步骤的命令,我们再将projectX.p12文件转为keystore
keytool -importkeystore -v  -srckeystore /root/projectX.p12 -srcstoretype pkcs12 -srcstorepass changeit(p12刚输入的密码) -destkeystore /root/payment.keystore -deststoretype jks -deststorepass changeit(keystore密钥库的密码) 
  • 开始配置tomcat,编辑 $TOMCAT_HOME/conf/server.xml
  • 找到https相关的配置,注意区分keystoreFile keystorePass大小写,否则会不生效,并且会提示找不到文件或者密码错误相关提示
  • ps:p12的密码好像需要跟keystore密码一致,否则会报错,不知道是不是哪个环节出了问题
<Executor name="tomcatThreadPoolHttps" namePrefix="catalina-exec-https-"
maxThreads="6000" minSpareThreads="100" maxIdleTime="120000" />

<Connector executor="tomcatThreadPoolHttps" port="8443"
redirctPort="6064" protocol="org.apache.coyote.http11.Http11NioProtocol"
SSLEnabled="true" maxHttpHeaderSize="8192" acceptCount="1000"
enableLookups="false" scheme="https" secure="true"keystoreFile="/root/payment.keystore"  
keystorePass="changeit"
clientAuth="false" sslProtocol="TLSv1.2" />

你可能感兴趣的:(Apache,Tomcat,Https)