为tomcat8.5服务器搭建Https+阿里云免费型DV SSL

1.准备工作

        首先向注册一个域名,我是在阿里云注册的。便宜的1元一年都行


2.申请阿里云CA证书服务

登陆到阿里云管理后台,选择安全(云盾)->CA证书服务(数据安全)  

      为tomcat8.5服务器搭建Https+阿里云免费型DV SSL


点击右上角 购买证书 

为tomcat8.5服务器搭建Https+阿里云免费型DV SSL

    购买完成后按照进度提示进行相关校验,(按要求在站点根目录创建隐藏文件夹并拷贝*.txt文件至其中),验证通过后后台列表能看到已签发

为tomcat8.5服务器搭建Https+阿里云免费型DV SSL


然后点击下载,在下载页面下载tomcat证书

为tomcat8.5服务器搭建Https+阿里云免费型DV SSL

1、证书格式转换

在Tomcat的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,附件中只包含214666017870544.pem文件,还需要将私钥文件拷贝到cert目录,命名为214666017870544.key;如果是系统创建的CSR,请直接到第2步。

到cert目录下执行如下命令完成PFX格式转换命令,此处要设置PFX证书密码,请牢记:

openssl pkcs12 -export -out 214666017870544.pfx -inkey 214666017870544.key -in 214666017870544.pem
2、PFX证书安装

找到安装Tomcat目录下该文件server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port="8443"标签,增加如下属性:

keystoreFile="cert/214666017870544.pfx"
keystoreType="PKCS12"
#此处的证书密码,请参考附件中的密码文件或在第1步中设置的密码
keystorePass="证书密码"

完整的配置如下,其中port属性根据实际情况修改:

<Connector port="8443"
    protocol="HTTP/1.1"
    SSLEnabled="true"
    scheme="https"
    secure="true"
    keystoreFile="cert/214666017870544.pfx"
    keystoreType="PKCS12"
    keystorePass="证书密码"
    clientAuth="false"
    SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
    ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>

重启tomcat,至此配置已全部完毕在浏览器访问http://域名:8443即可自动转为https访问

tips:

    如果不想追加8443访问,则需要将80端口的redirectPort改为 443,8009的redirectPort也改为443,浏览器访问https://域名即可

如果想禁用http访问,可更改在tomcat的conf下的web.xml文件,最外层添加内容

<security-constraint>
<web-resource-collection >
<web-resource-name >SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>

</security-constraint>

浏览器输入http://域名则自动跳转至https://域名