certbot&certimate的使用

By Heanny
2024-09-22
186 read

背景

最近服务商的免费域名开始从1年有效期改成了90天,导致如果有多个域名会很难管理,每天的域名ssl证书到期提醒可能就很多,于是就开始找一些工具,从历史文件中找到了从https://letsencrypt.osfipin.com/ 下载过的证书,发现这个可以申请泛域名证书,那么为什么不自己不熟一套Let’s Encrypt证书签发的呢。

于是在Let’s Encrypt官方找到了提供的客户端工具:Certbot

1. Certbot的安装与使用

官方提供了多种系统的多种安装方式,包括snap、pip等,我是在虚拟环境中使用的pip

sudo apt update
sudo apt install python3 python3-venv libaugeas0
pip install certbot

获取并安装证书

certbot --nginx

仅获取证书

certbot certonly --nginx

使用crontab 定期检查并续期证书

echo "0 0,12 * * * root /opt/certbot/bin/python -c 'import random; import time; time.sleep(random.random() * 3600)' && sudo certbot renew -q" | sudo tee -a /etc/crontab > /dev/null

虽然但是,我发现使用txt域名手动解析验证可以配置好证书,但是自动校验不知道是参数问题还是什么,一直未成功

使用txt验证进行生成证书

sudo certbot certonly --manual --preferred-challenges=dns  -d '*.heanny.cn'

尝试了很多次自动校验的,不行,于是乎,转战场

2. certimate安装和使用

发现了certmate,https://github.com/usual2970/certimate ,感谢作者
二进制运行

./certimate serve

docker

git clone git@github.com:usual2970/certimate.git && cd certimate/docker && docker compose up -d

登录

用户名:admin@certimate.fun
密码:1234567890

端口是8090

其他

Let’s Encrypt证书是一种由非营利性组织互联网安全研究小组(ISRG)提供的免费、自动化和开放的SSL/TLS证书颁发机构(CA)所颁发的证书。

nextcloud迁移问题

Comments

暂无评论,还不快来坐沙发...

Leave a Reply