使用 Let's Encrypt 为知行之桥配置自动更新的 HTTPS 证书

Published On: 2026年6月29日Categories: MFT, 帮助文档, 常见问题和回答, 操作指南, 知行之桥, 知识库Views: 31

© All rights reserved. • 西安知行软件有限公司 • 陕ICP备09022277号

概述

Let's Encrypt 是由 Internet Security Research Group (ISRG) 提供的免费、自动化、开放的证书颁发机构(CA)。

通过 Let's Encrypt,用户可以免费为自己的域名申请受主流浏览器信任的 HTTPS 证书,而无需购买商业证书。

Let's Encrypt 提供以下优势:

  • 免费使用,无需购买证书
  • 自动完成域名验证和证书签发
  • 自动续期,无需人工干预
  • 广泛兼容主流浏览器和操作系统
  • 支持标准 ACME 协议,易于集成和自动化

相比传统的商业证书,Let's Encrypt 将证书管理从手工操作转变为自动化流程,显著降低了运维成本和证书过期风险。


工作原理

Let's Encrypt 证书默认有效期为 90 天。

虽然有效期较短,但配合 ACME 客户端(例如 Certbot)可以实现全自动续期。

典型工作流程如下:

  1. 安装 ACME 客户端(Certbot)
  2. 验证域名所有权
  3. 自动申请证书
  4. 将证书部署到服务器
  5. 定期自动检查证书有效期
  6. 到期前自动续期
  7. 触发自定义 Hook 更新应用程序使用的证书文件

整个过程无需人工干预。


前提条件

在申请证书之前,请确保满足以下条件:

  • 已拥有域名(例如:example.com
  • 域名已解析到 知行之桥 所在服务器
  • 服务器的 80 端口可从公网访问
  • 已安装并运行 知行之桥
  • 拥有服务器管理员权限

安装 Certbot

以下示例基于 Ubuntu / Debian 系统。

安装 Certbot 及其依赖:

sudo apt update
sudo apt install certbot

确认安装成功:

certbot --version

示例输出:

certbot 3.x.x

申请证书

执行以下命令申请证书:

sudo certbot certonly --standalone \
  -d example.com \
  -d www.example.com

如果服务器已经有 Web 服务占用 80 端口,可以使用 WebRoot 模式:

sudo certbot certonly --webroot \
  -w /path/to/webroot \
  -d example.com \
  -d www.example.com

申请成功后,证书将保存在:

/etc/letsencrypt/live/example.com/

目录结构如下:

cert.pem        # 服务器证书
chain.pem       # 中间证书链
fullchain.pem   # 服务器证书 + 中间证书链
privkey.pem     # 私钥

知行之桥使用 PKCS12(PFX)证书

知行之桥基于 Java 和 Jetty,使用 Java KeyStore 加载 TLS 证书。

因此,需要将 Let's Encrypt 提供的 PEM 格式证书转换为 PKCS12(.pfx  .p12)格式。

执行以下命令:

openssl pkcs12 -export \
  -out /opt/arc/mycertificate.pfx \
  -inkey /etc/letsencrypt/live/example.com/privkey.pem \
  -in /etc/letsencrypt/live/example.com/cert.pem \
  -certfile /etc/letsencrypt/live/example.com/chain.pem \
  -name arc

系统会提示输入 PFX 密码,请妥善保管。


配置 知行之桥启用 TLS

 arc.properties 中添加以下配置:

cdata.tls.keyStoreType=PKCS12
cdata.tls.keyStorePath=${cdata.home}/mycertificate.pfx
cdata.tls.keyStorePassword=mypassword

说明:

  • cdata.tls.keyStoreType:证书格式,固定为 PKCS12
  • cdata.tls.keyStorePath:PFX 文件路径
  • cdata.tls.keyStorePassword:生成 PFX 时设置的密码

保存配置后,重启 知行之桥 服务使配置生效。


自动续期与自动生成 PFX

Certbot 会自动创建系统定时任务,在证书即将过期时自动续期。

可通过以下命令验证自动续期是否正常工作:

sudo certbot renew --dry-run

示例输出:

Congratulations, all simulated renewals succeeded

由于 知行之桥 使用的是 PFX 文件,因此需要在证书续期成功后自动重新生成 PFX 文件。

Certbot 支持通过 Deploy Hook 执行自定义脚本。

创建目录:

sudo mkdir -p /etc/letsencrypt/renewal-hooks/deploy

创建脚本:

sudo nano /etc/letsencrypt/renewal-hooks/deploy/arc-export-pfx.sh

写入以下内容:

#!/bin/sh

DOMAIN="example.com"
OUTPUT="/opt/arc/mycertificate.pfx"
PASSWORD="mypassword"

openssl pkcs12 -export \
  -out "$OUTPUT" \
  -inkey "/etc/letsencrypt/live/$DOMAIN/privkey.pem" \
  -in "/etc/letsencrypt/live/$DOMAIN/cert.pem" \
  -certfile "/etc/letsencrypt/live/$DOMAIN/chain.pem" \
  -name arc \
  -passout pass:"$PASSWORD"

systemctl restart arc

授予执行权限:

sudo chmod +x /etc/letsencrypt/renewal-hooks/deploy/arc-export-pfx.sh

Deploy Hook 仅在证书实际续期成功后执行。

每次证书续期时,Certbot 将自动完成以下操作:

  1. 更新 PEM 格式证书
  2. 自动生成新的 PFX 文件
  3. 自动重启 知行之桥 服务
  4. 知行之桥 加载最新证书

整个流程无需人工干预。


验证 TLS 配置

重启 知行之桥后,可通过浏览器访问:

https://example.com:8443

也可以使用 OpenSSL 检查证书信息:

openssl s_client -connect example.com:8443 -servername example.com

检查证书有效期:

openssl x509 -in /etc/letsencrypt/live/example.com/cert.pem -noout -dates

常见问题

是否必须使用商业证书?

不需要。

对于绝大多数场景,包括:

  • 企业官网
  • API 服务
  • 知行之桥 管理界面
  • B2B 集成平台

Let's Encrypt 提供的证书已经完全满足需求。

商业证书通常只适用于存在特殊合规要求的场景,例如:

  • 银行
  • 政府机构
  • 金融行业
  • 特定企业采购规范

Let's Encrypt 证书为什么只有 90 天有效期?

短周期证书能够:

  • 降低私钥泄露风险
  • 提高自动化程度
  • 减少遗忘续期导致的服务中断

由于续期过程完全自动化,用户通常无需关注证书有效期。


自动续期失败怎么办?

建议定期检查 Certbot 日志:

/var/log/letsencrypt/letsencrypt.log

手动测试续期:

sudo certbot renew --dry-run

如果测试成功,则后续续期通常不会出现问题。


总结

通过 Let's Encrypt 和 Certbot,知行之桥用户可以快速实现:

  • 免费 HTTPS 证书
  • 自动证书申请
  • 自动证书续期
  • 自动生成 PFX 文件
  • 自动更新 知行之桥 TLS 配置

整个方案具有以下特点:

  • 零证书采购成本
  • 零人工续期操作
  • 基于开放标准
  • 易于自动化和集成

推荐所有公网部署的 知行之桥实例启用 HTTPS,并使用 Let's Encrypt 实现证书自动化管理。

为什么选择

知行之桥®?​

根据企业规模与集成需求,提供从本地部署到云端托管的灵活选择

可视化 EDI 工作流

基于拖拽式图形化设计器,零代码构建完整 EDI 业务流程,满足复杂供应链自动化场景。

Odette & Drummond 认证

通过 Odette(OFTP) 与 Drummond(AS2) 权威认证,确保与主机厂安全合规、高可靠的数据交换。

多系统集成能力

提供数据库、REST/SOAP、FTP/SFTP 等标准化接口,实现 ERP、WMS、MES 等系统的双向数据自动同步。

数据映射格式转换

内置可视化 Mapping 编辑器,零代码实现 EDI 报文与企业内部数据格式(XML/JSON…)的映射转换及复杂规则处理。

实时监控预警机制

全流程可视化监控报文状态,支持邮件、钉钉、企业微信自动预警,保障 JIT 交付的稳定性与及时性。

多工厂支持

支持集团级多组织、多工厂架构,实现数据隔离与权限管控,统一平台集中运维,满足大型制造企业多地点协同需求。