docker 安装 certd 并配置 SSL 证书自动化部署

使用 docker 部署 certd 并配置 SSL 证书自动化部署
certd在线文档地址:https://certd.docmirror.cn/

先决条件

  • 已安装 Docker
  • 已注册域名并配置域名解析到服务器 IP
  • 服务器已安装并配置好 Nginx 反向代理服务器

1. 拉取镜像

1
docker pull greper/certd:latest

2. 运行容器

1
docker run -d --name certd -p 7001:7001 -p 7002:7002 -v d:/docker/certd/data:/app/data -v d:/docker/certd/ssl:/app/ssl greper/certd:latest

3. 访问 certd 管理界面

  • 打开浏览器,访问 http://IP:7001
  • 登录 certd 管理界面,默认用户名 admin,默认密码 123456
  • 首次登录后,需要修改密码

4. 配置域名授权(以阿里云为例)

4.1 创建阿里云 AccessKey

  • 登录阿里云控制台
  • 进入 权限与安全 -> AccessKey

阿里云账号

  • 记录 AccessKey IDAccessKey Secret

创建 AccessKey

4.2 配置阿里云 AccessKey 到 certd

  • 在 certd 证书自动化 菜单下,点击 设置 按钮,选择 授权管理 点击 添加 选择 阿里云授权 aliyun
  • 填写 AccessKey IDAccessKey Secret 点击 确定 按钮

配置阿里云域名授权

4.3 添加服务器 ssh 授权 到 certd

  • 在 certd 证书自动化 菜单下,点击 设置 按钮,选择 授权管理 点击 添加 选择 主机登录授权 ssh
  • 填写 主机地址(服务器 ipv4 地址)、主机端口(默认端口 22)、用户名密码 点击 确定 按钮

配置阿里云域名授权

4.4 配置 certd 邮件服务器

  • 在 certd 系统设置 菜单下,点击 邮件服务器设置
  • 填写 SMTP域名SMTP端口用户名密码发件邮箱 点击 保存 按钮
  • 输入 测试收件邮箱 点击 测试 按钮,查看是否收到测试邮件

邮件服务器设置

  • 收件效果

测试收件邮箱

4.5 配置 certd 通知设置

  • 在 certd 证书自动化 菜单下,点击 通知设置
  • 收件人邮箱填写 自己的邮箱、通知类型选择 电子邮件 点击测试按钮,查看是否收到测试邮件

通知设置

  • 收件效果

测试收件邮箱

5. 配置域名授权(以阿里云为例)

  • 在 certd 管理界面,点击 设置 按钮,选择 域名管理 点击 添加
  • 填写阿里云域名 点击 确定 按钮

添加域名

6. 配置创建证书流水线

  • 在 certd 证书自动化 菜单下,点击 证书自动化流水线 选择 创建证书流水线

创建证书流水线

  • 编辑证书流水线、新阶段 - 添加任务 - 添加步骤

添加任务

  • 选择 主机-部署证书到SSH主机 点击 确定

主机-部署证书到SSH主机

  • 证书格式选择 pem(crt),Nginx等大部分应用
  • 证书保存路径填写 服务器 nginx 的 ssl 文件目录(根据实际情况填写)

    C:/Users/root/Desktop/nginx-1.26.2/ssl/example.com/cert.pem
    C:/Users/root/Desktop/nginx-1.26.2/ssl/example.com/cert.key

  • 主机登录配置选择 ssh
  • 后置命令填写重启 nginx 服务命令(路径根据实际情况填写)
  • 点击 确定 按钮
1
2
cd C:\Users\root\Desktop\nginx-1.26.2
nginx -s reload

填写步骤内容

  • 点击 保存 按钮

保存任务

  • 点击 运行流水线 按钮

运行流水线

  • 查看运行结果

查看运行结果

  • 查看邮件结果

查看邮件结果

单个 SSL 证书自动化部署配置已完成,可根据情况添加自己其他的域名自动化部署配置