1. Certd简介
Certd
是一个开源的证书生命周期管理系统,专注于帮助开发者和组织更加便捷、安全地管理他们的数字证书。无论是在小型个人项目中还是大型企业环境中,Certd都能提供强大的功能,确保您的HTTPS服务始终处于安全状态。
1.1. 技术分析
- 微服务架构:Certd采用微服务设计,每个组件都独立运行,保证系统的稳定性和可扩展性。
- Docker容器化:所有组件都被封装在Docker容器中,易于部署和升级,同时也支持多环境一致性。
- Let’s Encrypt集成:与免费的SSL/TLS证书颁发机构Let’s Encrypt深度集成,自动签发和更新证书。
- Prometheus监控:内置Prometheus监控和Grafana仪表板,实时了解系统状态。
- API驱动:提供了RESTful API接口,方便与其他系统集成或自定义工作流程。
- Go语言开发:选用高性能的Go语言编写,保证了服务的响应速度和并发处理能力。
1.2. 应用场景
- 自动化SSL/TLS管理:自动申请、续期和撤销证书,减少人为错误和疏忽。
- 多域名/子域名管理:一次性管理多个域名和子域名的证书,简化操作。
- 集成CDN或边缘网络:与CDN提供商配合,自动将新证书分发到全球节点。
- 云环境部署:适合AWS、GCP、Azure等云平台,轻松配置安全策略。
- 企业级合规性:满足企业对证书生命周期管理和审计的需求。
2. 在线体验
-
官方Demo地址,自助注册后体验
-
https://certd.handsfree.work/
- 注意数据将不定期清理,生产使用建议私有化部署
- 包含敏感的信息,建议自己本地部署进行生产使用
3. 私有化部署CertD
- Certd 是一个免费全自动申请和自动部署更新SSL证书的管理系统。
3.1. 安装docker、docker-compose
3.1.1. 安装docker
#关闭selinuxsetenforce 0sed -i '/SELINUX/s/enforcing/disabled/g' /etc/selinux/config
#安装依赖包yum -y install yum-utils device-mapper-persistent-data lvm2
#配置docker镜像源
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#更新 yum 缓存
yum makecache fast
#安装docker
yum -y install docker-ce
#启动docker服务
systemctl start docker
systemctl enable docker.socket
3.1.2. 安装docker-compose
#下载Docker compose脚本
curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose#添加脚本x权限
chmod +x /usr/local/bin/docker-compose#查看版本信息
docker-compose --version
Docker Compose version v2.17.2
3.2. 部署certd容器
#创建certd目录
mkdir /data/certd
#进入目录
cd /data/certd
# 下载docker-compose.yaml文件,或者手动下载放到certd目录下
wget https://gitee.com/certd/certd/raw/v2/docker/run/docker-compose.yaml
# 可以根据需要修改里面的配置
# 1.修改镜像版本号【可选】
# 2.配置数据保存路径【可选】
# 3.修改端口号【可选】
vi docker-compose.yaml # 【可选】
# 启动certd
docker compose up -d#如果想升级,可以执行以下操作
1. 修改docker-compose.yaml中的镜像版本号
2. 运行docker compose up -d 即可
4. 访问测试
- http://your_server_ip:7001
- 默认账号密码:admin/123456
4.1. 输入密码登录
4.2. 修改密码
4.3. 创建证书自动化流水线
- 创建之前先创建域名授权
- 登录主机查看证书是否部署成功