背景
最近服务商的免费域名开始从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)所颁发的证书。
暂无评论,还不快来坐沙发...