海运的博客

使用acme.sh申请Let’s Encrypt ecc免费证书

发布时间:December 2, 2019 // 分类: // No Comments

之前有记录使用certbot安装Let’s Encrypt证书,但是certbot不支持管理更新ecc证书,功能也没acme强大。
安装acme.sh,成功后会添加crontab定时自动续期。

curl  https://get.acme.sh | sh
source ~/.bashrc 

设置邮件地址,用以续期通知,也可以使用高级安装acme时指定邮箱和证书目录。

acme.sh --update-account --accountemail a@haiyun.me

高级安装:

cd /usr/local/src/
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install --home /usr/local/acme --config-home ~/etc/acme \
--accountemail "a@haiyun.me"

使用dns验证域名,设置dnspod api,运行acme后会自动保存到配置:

export DP_Id="api id"
export DP_Key="api key"

申请ecc证书,renew-hook参数只在在issue新申请证书时有效,申请成功后将保存到域名配置文件/etc/acme/haiyun.me/haiyun.me.conf,后续renew时调用。

acme.sh --issue --dns dns_dp -d haiyun.me -d www.haiyun.me -k ec-256 --renew-hook "systemctl restart nginx"

acme申请泛域名:

acme.sh --issue --dns dns_dp -d haiyun.me -d *.haiyun.me -k ec-256

使用其它dns api:

ls /usr/local/acme/dnsapi/*gandi*
grep KEY /usr/local/acme/dnsapi/*gandi*

复制申请的证书到指定目录,acme会记录安装的位置,后续更新证书后会自动复制:

acme.sh --installcert -d haiyun.me --ecc --key-file /etc/nginx/ssl/haiyun.me.key \
--cert-file /etc/nginx/ssl/haiyun.me.cert --fullchain-file /etc/nginx/ssl/haiyun.me.fullchain.cer \
--reloadcmd  "nginx -s reload"

吊销证书:

acme.sh --revoke -d haiyun.me --ecc

更新证书:

acme.sh --renew -d haiyun.me --ecc

crontab定时更新:

00 1 * * * /usr/local/acme/acme.sh --cron --home "/usr/local/acme" --config-home "/etc/acme"

标签:none

发表评论

分类
最新文章
最近回复
  • mr_yang: 求博主联系方式,有问题请教
  • 何立军: 海运,你好,很高兴浏览到你的网页,很有帮助,非常感谢,但是有网页加密,不知如何浏览。
  • mingyu wen: 写的让我豁然开朗,但请问这句什么意思:有状态的+无状态的,使用dhcpv6有状态分配地址,同时...
  • alex heryy: Androidblue
  • 海运: 不清楚,可尝试使用ubuntu18.04系统按本文方法编译试试。
  • bbr: 大佬,请问debian9编译错误怎么解决? github有人提问,没人解答,只好来这里看看.p...
  • 田博: 如果dts中没有USB信息,这样也能装上?
  • 海运: 正常情况下编译整个内核执行make menuconfig后就不会出现此提示,当单独编译单个模块...
  • oijq: 就是用的armbian的配置文件哈,按你的教程做的,在执行make LOCALVERSION=...
  • 海运: 使用armbian的配置文件,其它添加或修改自己懂的部分,不懂的就不要碰了。