如何在Tomcat服务器上安装JKS格式的SSL证书?

不同的服务器不仅安装SSL证书的方法不一样,支持安装的格式也不一样。Tomcat服务器支持安装PFX格式和JKS两种格式的证书,本文主要介绍一下如何在Tomcat服务器上安装JKS格式的SSL证书。

本文以将JKS格式证书安装在Linux操作系统中的Tomcat 7为例介绍安装证书的具体步骤。

1、解压已保存到本地的JKS证书文件。解压后您将看到文件夹中有以下文件:

1)证书文件(domain_name.jks)

注:本文中证书名称以domain_name为示例。

2)密码文件(jks-password.txt)

如果您在提交证书申请时,未将CSR生成方式设置为系统生成,则您下载的证书压缩包中不包含TXT密码文件。您在数字证书管理服务控制台下载证书时必须选择其他类型服务器,下载CRT格式的证书,并使用OpenSSL工具生成JKS格式的证书文件。

每次下载证书都会产生新的密码文件。该密码文件仅匹配本次下载的证书。如果需要更新证书文件,同时也要更新匹配的密码文件。

2、在Tomcat安装目录下新建cert目录,将证书文件和密码文件拷贝到cert目录下。

3、参考以下步骤修改配置文件server.xml

1)访问Tomcat安装目录/conf/server.xml目录,打开server.xml文件

2)去掉server.xml中以下内容前的注释,即该内容前的井号(#)

<Connector port=”8443″

protocol=”HTTP/1.1″

port=”8443″ SSLEnabled=”true”

maxThreads=”150″ scheme=”https” secure=”true”

clientAuth=”false” sslProtocol=”TLS” />

3)参照以下内容修改server.xml文件

<Connector port=”443″ #port属性根据实际情况修改(HTTPS默认端口为443)。如果使用其他端口号,则您需要使用https://yourdomain:port的方式来访问您的网站

protocol=”HTTP/1.1″

SSLEnabled=”true”

scheme=”https”

secure=”true”

keystoreFile=”Tomcat安装目录/cert/domain_name.jks” #证书名称前需加上证书的绝对路径,请使用您证书的文件名替换domain_name。

keystorePass=”证书密码” #此处请替换为您证书密码文件jks-password.txt中的内容。

clientAuth=”false”

SSLProtocol=”TLSv1.1+TLSv1.2+TLSv1.3″

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″/>

4)保存server.xml文件

4、可选:配置web.xml文件,开启HTTP强制跳转HTTPS

在文件</welcome-file-list>后添加以下内容:

<login-config>

<!– Authorization setting for SSL –>

<auth-method>CLIENT-CERT</auth-method>

<realm-name>Client Cert Users-only Area</realm-name>

</login-config>

<security-constraint>

<!– Authorization setting for SSL –>

<web-resource-collection >

<web-resource-name>项目名称</web-resource-name> #请将该参数替换为您的项目名称。

<url-pattern>/*</url-pattern>

</web-resource-collection>

<user-data-constraint>

<transport-guarantee>CONFIDENTIAL</transport-guarantee>

</user-data-constraint>

</security-constraint>

最后,重启Tomcat服务器,就可以查验SSL证书是否配置成功。

发表评论