阿里云代理商
热卖产品·活动价
推荐文档
在Jetty服务器安装SSL证书
在Jetty服务器安装SSL证书
更新时间:2024-09-27 15:54

您可以在Jetty服务器上安装SSL证书,实现通过HTTPS安全访问Web服务。本文介绍如何为Jetty服务器安装SSL证书。

重要

本文以Linux操作系统、jetty-distribution-9.4.51.v20230217为例介绍,不同版本的操作系统或Jetty服务器,部署操作可能有所差异,如有问题,请联系产品技术专家进行咨询,详情请参见专家一对一服务

前提条件

  • 已通过数字证书管理服务控制台签发证书。具体操作,请参见购买SSL证书提交证书申请

  • SSL证书绑定的域名已完成DNS解析,即您的域名与主机IP地址相互映射。您可以通过DNS验证证书工具,检测域名DNS解析是否生效。具体操作,请参见DNS生效验证

  • 已在Web服务器开放443端口(HTTPS通信的标准端口)。

    如果您使用的是阿里云ECS服务器,请确保已经在安全组规则入方向添加TCP 443端口。具体操作,请参见添加安全组规则

步骤一:下载SSL证书

  1. 登录数字证书管理服务控制台

  2. 在左侧导航栏,选择证书管理 > SSL证书管理

  3. SSL 证书页面,定位到目标证书,在操作列,单击下载

  4. 服务器类型为JKS的操作列,单击下载

  5. 解压缩已下载的SSL证书压缩包。

    根据您在提交证书申请时选择的CSR生成方式,解压缩获得的文件不同,具体如下表所示。CSR

    CSR生成方式

    证书压缩包包含的文件

    系统生成选择已有的CSR

    • 证书文件(JKS格式):默认以证书ID_证书绑定域名命名。

    • 密码文件(TXT格式):默认以证书格式-password命名

      重要

      每次下载证书时都会产生新的密码,该密码仅匹配本次下载的证书文件。

    手动填写

    • 如果您填写的是通过数字证书管理服务控制台创建的CSR,下载后包含的证书文件与系统生成的一致。

    • 如果您填写的不是通过数字证书管理服务控制台创建的CSR,下载后只包括证书文件(PEM格式),不包含证书密码或私钥文件。您可以通过证书工具,将证书文件和您持有的证书密码或私钥文件转换成所需格式。转换证书格式的具体操作,请参见证书格式转换

步骤二:在Jetty服务器安装SSL证书

  1. 在Jetty的安装目录下创建一个用于存放证书的cert目录。

    1. 执行以下命令,进入Jetty安装目录。

       
       
      cd /usr/local/jetty #请您根据Jetty实际安装目录调整。
    2. 执行以下命令,创建cert目录。

       
       
      mkdir cert #创建证书目录,命名为cert。
  2. 将证书文件上传至创建完成的cert目录。

    说明

    您可以使用远程登录工具附带的本地文件上传功能,上传文件。例如PuTTy、Xshell或WinSCP等。如果您使用的阿里云云服务器 ECS,上传文件具体操作,请参见上传或下载文件(Windows)上传文件到Linux云服务器

  3. 打开Jetty配置文件jetty-ssl.xmljetty-ssl-context.xml,修改与证书相关的配置。

    1. 执行以下命令,打开jetty-ssl-context.xml配置文件。

       
       
      vim /usr/local/jetty/etc/jetty-ssl-context.xml
    2. 在jetty-ssl-context.xml配置文件中,定位到以下参数,按照注释修改。

      说明

      在Jetty的一些旧版本中,证书相关配置参数可能在jetty-ssl.xml文件中。

      image.png

       
       
      <!--证书文件配置。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>
    3. 在jetty-ssl.xml配置文件中,定位到如下参数,修改HTTPS服务所使用的端口为443。

      说明

      在Jetty的一些旧版本中,HTTPS服务端口配置可能在jetty-https.xml文件中。

       
       
       <Set name="port"><Property name="jetty.ssl.port" deprecated="ssl.port" default="443" /></Set>
  4. 编辑Jetty安装目录下的start.ini文件,并在末尾添加如下内容。

     
     
    etc/jetty-ssl.xml etc/jetty-ssl-context.xml etc/jetty-https.xml
  5. 在Jetty安装目录下,执行如下命令,重启Jetty。

     
     
    ./bin/jetty.sh restart

步骤三:验证SSL是否安装成功

证书安装完成后,您可通过访问证书的绑定域名验证该证书是否安装成功。

 
 
https://yourdomain   #需要将yourdomain替换成证书绑定的域名。

如果网页地址栏出现小锁标志,表示证书已经安装成功。

image.png

说明

如果出现Error 404,表示您的Jetty服务器没有web应用,并非Jetty服务器未启动成功。

上云优选,普惠权益,云服务器99元/年
立即查看

首页| 云服务器| 数据库RDS| 虚拟主机| 安全产品| 云存储| 云网络| SSL证书| 企业邮箱| 短信服务| 阿里云注册| 最新动态| 帮助中心

轻量应用服务器| 香港云服务器| 阿里云电脑| 阿里云手机| 云服务器99元

阿里云新用户优惠| 阿里云老用户优惠| 阿里云代理商| 热门问题| 使用帮助| 最新活动| 最新动态| 阿里云注册

© Aliyunvip.com