免费泛域名SSL证书全自动申请、续期、部署,支持部署到阿里云、腾讯云、ssh主机。Automatically apply, renew and deploy free Generic domain SSL Certificates。
 
 
 
 
 
 
Go to file
xiaojunnuo 1b7debc6a4 Merge remote-tracking branch 'origin/acme_sync' into v2
# Conflicts:
#	packages/core/acme-client/package.json
#	packages/core/acme-client/src/auto.js
#	packages/core/acme-client/src/axios.js
#	packages/core/acme-client/src/http.js
2024-07-01 23:09:57 +08:00
.github chore: pre publish 2023-05-25 16:49:05 +08:00
doc perf: 支持windows文件上传 2024-06-27 16:38:43 +08:00
docker perf: 支持重置管理员密码,忘记密码的补救方案 2024-06-16 02:06:44 +08:00
packages Merge remote-tracking branch 'origin/acme_sync' into v2 2024-07-01 23:09:57 +08:00
test refactor: for test 2023-05-09 09:49:42 +08:00
.gitignore chore: 2023-07-10 11:56:04 +08:00
.npmrc chore: 1.20.10 2024-05-30 14:17:43 +08:00
CHANGELOG.md v1.20.15 2024-06-28 16:06:55 +08:00
LICENSE agpl license 2022-10-07 21:52:06 +08:00
README.md perf: 支持windows文件上传 2024-06-27 16:38:43 +08:00
deploy.js chore: 1 2024-05-30 11:37:45 +08:00
lerna.json v1.20.15 2024-06-28 16:06:55 +08:00
package.json chore: 2024-03-22 11:18:51 +08:00
plugin.md pref: 调整插件目录,增加一些帮助说明 2024-05-27 18:38:41 +08:00
pnpm-workspace.yaml chore: 2024-02-28 10:10:47 +08:00
step.md refactor: doc 2023-07-06 15:18:41 +08:00

README.md

CertD

CertD 是一个免费全自动申请和部署SSL证书的工具。
后缀D取自linux守护进程的命名风格意为证书守护进程。

一、特性

本项目不仅支持证书申请过程自动化,还可以自动化部署证书,让你的证书永不过期。

  • 全自动申请证书支持阿里云、腾讯云、华为云、Cloudflare注册的域名
  • 全自动部署证书(目前支持服务器上传部署、部署到阿里云、腾讯云等)
  • 支持通配符域名
  • 支持多个域名打到一个证书上
  • 邮件通知
  • 证书自动更新
  • 免费、免费、免费(阿里云单个通配符域名证书最便宜也要1800/年

二、在线体验

官方Demo地址自助注册后体验

https://certd.handsfree.work/

注意数据将不定期清理,生产使用请自行部署
包含敏感信息,务必自己本地部署进行生产使用

三、使用教程

本案例演示如何配置自动申请证书并部署到阿里云CDN然后快要到期前自动更新证书并重新部署

演示 演示 演示 演示 演示

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
-------> 点我查看详细使用步骤演示 <--------
↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑

四、本地docker部署

1. 安装docker、docker-compose

1.1 准备一台云服务器

  • 【阿里云】云服务器2核2G新老用户同享99元/年,续费同价!【 立即购买
  • 【腾讯云】云服务器2核2G新老用户同享99元/年,续费同价!【 立即购买

1.2 安装docker
https://docs.docker.com/engine/install/ 选择对应的操作系统,按照官方文档执行命令即可

2. 下载docker-compose.yaml文件

docker-compose.yaml下载

mkdir certd
cd certd
# wget下载docker-compose.yaml文件
wget https://raw.githubusercontent.com/certd/certd/v2/docker/run/docker-compose.yaml
# 或者使用gitee地址
wget https://gitee.com/certd/certd/raw/v2/docker/run/docker-compose.yaml

# 根据需要修改里面的配置
# 1.修改镜像版本号【可选】
# 2.配置数据保存路径【可选】
# 3.配置certd_auth_jwt_secret【必须】
vi docker-compose.yaml


镜像版本号与release版本号同步
https://github.com/certd/certd/releases

3. 运行

# 如果docker compose是插件化安装
export CERTD_VERSION=latest
docker compose up -d

如果提示 没有compose命令,请安装docker-compose
https://docs.docker.com/compose/install/linux/

4. 访问

http://your_server_ip:7001 默认账号密码admin/123456 记得修改密码

5. 升级

  • 修改版本号,重新运行 docker compose up -d 即可
  • 数据存在/data/certd目录下,不用担心数据丢失

五、一些说明

  • 本项目ssl证书提供商为letencrypt
  • 申请过程遵循acme协议
  • 需要验证域名所有权一般有两种方式目前本项目仅支持dns-01
    • http-01 在网站根目录下放置一份txt文件
    • dns-01 需要给域名添加txt解析记录通配符域名只能用这种方式
  • 证书续期:
    • 实际上acme并没有续期概念。
    • 我们所说的续期,其实就是按照全套流程重新申请一份新证书。
  • 免费证书过期时间90天以后可能还会缩短所以自动化部署必不可少
  • 设置每天自动运行当证书过期前20天会自动重新申请证书并部署

六、不同平台的设置说明

七、问题处理

7.1 忘记管理员密码

解决方法如下:

  1. 修改docker-compose.yaml文件将环境变量certd_system_resetAdminPassword改为true
services:
  certd:
    environment: # 环境变量
      - certd_system_resetAdminPassword=false
  1. 重启容器
docker compose up -d
docker logs -f --tail 500 certd
# 观察日志当日志中输出“重置1号管理员用户的密码完成”即可操作下一步
  1. 修改docker-compose.yamlcertd_system_resetAdminPassword改回false
  2. 再次重启容器
docker compose up -d
  1. 使用admin/123456登录系统请及时修改管理员密码

八、联系作者

如有疑问欢迎加入群聊请备注certd

  • QQ群141236433
  • 微信群:

加作者好友

九、捐赠

媳妇儿说:“一天到晚搞开源,也不管管老婆孩子!😡😡😡
拜托各位捐赠支持一下,让媳妇儿开心开心,我也能有更多时间进行开源项目,感谢🙏🙏🙏

十、贡献代码

贡献插件教程

十一、我的其他项目

  • 袖手GPT ChatGPT国内可用无需FQ每日免费额度
  • fast-crud 基于vue3的crud快速开发框架
  • dev-sidecar 直连访问github工具无需FQ解决github无法访问的问题