certimate 推荐一个自动获取泛域名证书+多平台部署 支持宝塔 1panel edgeone等CDN平台

项目地址: GitHub - usual2970/certimate: 开源的SSL证书管理工具,可以帮助你自动申请、部署SSL证书,并在证书即将过期时自动续期。An open-source SSL certificate management tool that helps you automatically apply for and deploy SSL certificates, as well as automatically renew them when they are about to expire.

后端GO, 数据库sqlite, 前端react+ant-design

原项目简介: 开源的SSL证书管理工具,可以帮助你自动申请、部署SSL证书,并在证书即将过期时自动续期。An open-source SSL certificate management tool that helps you automatically apply for and deploy SSL certificates, as well as automatically renew them when they are about to expire.

支持的域名提供商

https://docs.certimate.me/docs/reference/providers/#supported-host-providers

支持的平台

我使用的原因主要是支持edgeone和1panel

其他介绍可以看作者的项目readme, 我这里简单写一下我是怎么用的.

我的安装方法

作者的文档: Docker 安装 | Certimate

我自己使用docker安装的, 并且部署在国外的VPS, 因为我使用的google证书, 别的证书提供商就无所谓了, 国内VPS也可以, 甚至部署在群晖什么的都行

services:
  certimate:
    image: woodchen/certimate:latest # 我用的是我自己打包的docker, 也没做什么变化, 原作者的docker镜像地址是: usual2970/certimate:latest
    container_name: certimate
    ports:
      - 1009:8090
    volumes:
      - ./data:/app/pb_data
    restart: unless-stopped

然后反代一下端口, 就可以访问了.

默认账号密码, 自己要记得改, 我是先改账号, 再改密码

我用的证书签发商

google

其他的

作者很细心, 每一个地方都有说明和官方文档链接 :+1:

我使用的DNS解析商和部署的平台

DNS解析: cloudflare + dnspod

部署的平台: 多个VPS的1panel + edgeone

edgeone是直接使用DNS同样的授权方法

1panel就稍微麻烦一点, 需要自己开API接口, 在这里:

然后在certimate里这样添加:

需要注意的是

如果certimate1panel在同一个服务器, 那么1panel的API接口的白名单, 需要填写docker容器的IP, 而不是服务器的IP, 比如我这个:

等同于:

编辑工作流

这个看一下应该就会了, 新建一个, 大概像我这样:

这里我填的是10天. 因为一周检查一次, 没到10天就不用续期

不懂的地方就鼠标移到问号上, 作者都给了文档地址和说明

这个1panel的网站ID, 可能很多人找不到在哪, 看我下面截图

这个就是网站ID, 90

并行串行都可以, 看自己想怎么弄, 通知我用的飞书机器人, 也支持别的通知平台:

运行

编辑好工作流之后, 点击发布更改启用

可以手动执行一下, 查看日志, 看看有没有问题


其他有啥不了解的可以看作者的文档站: https://docs.certimate.me/

写的很详细, 基本挺完美了, 代码我简单看了一下, 基本引用的官方sdk, 不是自己手搓的, 后续更新也方便.

自己用很方便, 如果想改成SaaS对外提供并收钱, 估计不太有市场, 都白嫖证书了, 一般也不会有人为了这个花钱. 还要考虑到别人让你请求它的服务器, 导致泄露自己服务器IP的种种问题.