不会飞的章鱼

熟能生巧,勤能补拙,静能生慧;念念不忘,必有回响。

Certimate的使用

简介

Certimate是开源的 SSL 证书管理工具,可以帮助你自动申请、部署 SSL 证书,并在证书即将过期时自动续期。

部署Certimate主要解决:

  • 麻烦:申请证书并部署到服务的流程虽不复杂,但也挺麻烦的,尤其是你有多个域名需要维护的时候。
  • 易忘:当前免费证书的有效期只有 90 天,这就要求你定期的操作,增加了工作量的同时,你也很容易忘掉续期,从而导致网站访问不了。

准备

  • 一台云服务器
  • 一个域名

部署

Docker Compose 一键部署

1
2
3
4
mkdir -p ~/.certimate && \
cd ~/.certimate && \
curl -O https://raw.githubusercontent.com/certimate-go/certimate/refs/heads/main/docker/docker-compose.yml && \
docker compose up -d

docker-compose.yml文件的内容:

1
2
3
4
5
6
7
8
9
10
11
12
version: "3.0"
services:
certimate:
image: certimate/certimate:latest
container_name: certimate
ports:
- 8090:8090
volumes:
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
- ./data:/app/pb_data
restart: unless-stopped

默认的端口号是8090,然后通过浏览器访问http://49.233.219.254:8090/,账号admin@certimate.fun,密码1234567890登录即可。

使用

新建工作流,选择标准模板

开始节点,选择自动触发

申请节点,选择对应的DNS提供商

部署节点,将申请的证书部署到指定的服务器

这一步比较关键,尤其需要注意,如果你是用二进制启动的Certimate,就选择本地主机即可;如果你是用容器启动的Certimate,那么保存的证书是在容器内而不是宿主机,你需要做目录映射。

通知节点,如果失败了,需要通过各种方式通知,前提是需要设置好Webhook

比如我这里用的是飞书的Webhook,需要上飞书的官方文档上找对应的设置指南:Webhook 触发器

点击工作流右上角的发布更改,然后点击执行

在执行历史里可以看到执行的结果和详情

在证书管理页面可以看到有效期限

在服务器的指定目录下也可以看到新生成的SSL证书

参考

------ 本文结束------
如果你喜欢这篇文章,打赏一下让我开心到原地转圈圈~,金额随意,感谢鼓励与支持!