您可以在Jetty服务器上安装SSL证书,实现通过HTTPS安全访问Web服务。本文介绍如何为Jetty服务器安装SSL证书。
登录数字证书管理服务控制台。
在左侧导航栏,选择。
在SSL 证书页面,定位到目标证书,在操作列,单击下载。
在服务器类型为JKS的操作列,单击下载。
解压缩已下载的SSL证书压缩包。
根据您在提交证书申请时选择的CSR生成方式,解压缩获得的文件不同,具体如下表所示。
CSR生成方式 |
证书压缩包包含的文件 |
系统生成或选择已有的CSR |
|
手动填写 |
|
在Jetty的安装目录下创建一个用于存放证书的cert目录。
执行以下命令,进入Jetty安装目录。
cd /usr/local/jetty #请您根据Jetty实际安装目录调整。
执行以下命令,创建cert目录。
mkdir cert #创建证书目录,命名为cert。
将证书文件上传至创建完成的cert目录。
打开Jetty配置文件jetty-ssl.xml和jetty-ssl-context.xml,修改与证书相关的配置。
执行以下命令,打开jetty-ssl-context.xml配置文件。
vim /usr/local/jetty/etc/jetty-ssl-context.xml
在jetty-ssl-context.xml配置文件中,定位到以下参数,按照注释修改。
<!--证书文件配置。cert/domain_name.jks需替换为真实的证书路径--> <Set name="KeyStorePath"> <Property name="jetty.sslContext.keyStoreAbsolutePath"> <Default> <Property name="jetty.base" default="." />/<Property name="jetty.sslContext.keyStorePath" deprecated="jetty.keystore" default="cert/domain_name.jks"/> </Default> </Property> </Set> <!--证书密码配置。default请填写jks-password.txt中的证书密码--> <Set name="KeyStorePassword"><Property name="jetty.sslContext.keyStorePassword" deprecated="jetty.keystore.password" default="zf****c4"/></Set> <!--证书密钥库类型配置。default请填写证书密钥库类型。JKS格式的证书,密钥库类型为JKS。--> <Set name="KeyStoreType"><Property name="jetty.sslContext.keyStoreType" default="JKS"/></Set> <Set name="KeyStoreProvider"><Property name="jetty.sslContext.keyStoreProvider"/></Set> <!--default请填写jks-password.txt中的证书密码--> <Set name="KeyManagerPassword"><Property name="jetty.sslContext.keyManagerPassword" deprecated="jetty.keymanager.password" default="zf****c4"/></Set> <!--cert/domain_name.jks需替换为真实的证书路径--> <Set name="TrustStorePath"> <Property name="jetty.sslContext.trustStoreAbsolutePath"> <Default> <Property name="jetty.base" default="." />/<Property name="jetty.sslContext.trustStorePath" deprecated="jetty.truststore" default="cert/domain_name.jks"/> </Default> </Property> </Set> <!--可选。设置TLS协议的加密套件。以下为配置示例,请您自行评估是否需要配置--> <Set name="ExcludeCipherSuites"> <Array type="String"> <Item>SSL_RSA_WITH_DES_CBC_SHA</Item> <Item>SSL_DHE_RSA_WITH_DES_CBC_SHA</Item> <Item>SSL_DHE_DSS_WITH_DES_CBC_SHA</Item> <Item>SSL_RSA_EXPORT_WITH_RC4_40_MD5</Item> <Item>SSL_RSA_EXPORT_WITH_DES40_CBC_SHA</Item> <Item>SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA</Item> <Item>SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA</Item> </Array> </Set>
在jetty-ssl.xml配置文件中,定位到如下参数,修改HTTPS服务所使用的端口为443。
<Set name="port"><Property name="jetty.ssl.port" deprecated="ssl.port" default="443" /></Set>
编辑Jetty安装目录下的start.ini文件,并在末尾添加如下内容。
etc/jetty-ssl.xml etc/jetty-ssl-context.xml etc/jetty-https.xml
在Jetty安装目录下,执行如下命令,重启Jetty。
./bin/jetty.sh restart
证书安装完成后,您可通过访问证书的绑定域名验证该证书是否安装成功。
https://yourdomain #需要将yourdomain替换成证书绑定的域名。
如果网页地址栏出现小锁标志,表示证书已经安装成功。