淘宝5元买了个comodo https 证书服务; 按照这里配置成功
最近由于工作原因,需要为tomcat配置证书,免费的证书现在比较难找了。经过比较,选择了comodo的
EssentialSSL Wildcard (DV)证书,三年的费用200多美元。先利用工具生成CSR文件(同时生成的还有一份key文件,这个很重要,保存名字例如mydomain.key,这里会有个密码,需要记住), 提交CSR,经过填写一堆的信息,终于购买成功,然后就可以下载证书了。
下载后的证书包括一个.p7b文件,还有四个.crt文件。 官网的support说可以利用这个p7b文件直接导入到keystore中,可是我经过测试,结果提示不是有效的x.509格式的证书。郁闷。
然后经过查找资料,验证,反复多次,发现所有的资料大多数是互相抄袭的,没有一个是完整能用的。
最后,经过摸索,拼接了这些资料,整理了一个大致的脉络出来。
1.首先要先合并四个.crt证书。使用文本编辑工具就行,拼接顺序按照下面:
yourdomainname.crt --这个放在最上面,然后依次向下
COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt
AddTrustExternalCARoot.crt
,拼接以后形成一个新的证书,起名比如abc.crt
2. 利用openssl指令
这个指令一般linux系统会自带,我这里是有一个Ubuntu的虚拟机。
openssl pkcs12 -export -in abc.crt -inkey mydomain.key -out mycert.p12 -name tomcat
3. 生成tomcat需要的keystore
keytool -importkeystore -v -srckeystore mycert.p12 -srcstoretype pkcs12 -srcstorepass key文件的密码 -destkeystore tomcat.keystore -deststoretype jks -deststorepass 新的密码
4.然后就可以把这个tomcat.keystore拷贝到tomcat的conf目录下面
5.打开tomcat的conf目录下的server.xml
添加这一段
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="conf/tomcat.keystore" keystorePass="新的密码
" />