ubuntu 使用 acme 工具免费申请 SSL 证书

安装 acme 工具

# 提前安装依赖
sudo apt install socat

# 切换为 root 用户, 后边的操作均使用 root 用户(acme 官方推荐)
sudo -i

# wget 默认下载到文件, 使用 '-' 表示输出到标准输出, 经管道提供给 sh 执行
wget -O - https://get.acme.sh | sh -s email=my@example.com
或者
# curl 默认下载到标准输出
curl https://get.acme.sh | sh -s email=my@example.com

安装会完成以下内容:

  1. 创建安装目录 ~/.acme.sh, 即 /root/.acme.sh
  2. 创建别名 alias acme.sh=~/.acme.sh/acme.sh
  3. 创建一个定时任务(用于证书的续签)
# 查看定时任务
$ crontab -l
48 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null

最后不要忘了 source ~/.bashrc, 不然别名没有生效


如果想卸载 acme 工具, 可以执行:

$ acme.sh --uninstall
$ rm -r ~/.acme.sh

签发 SSL 证书

使用 HTTP/HTTPS 验证

前提: 域名(假设为 example.com)绑定到了当前服务器的公网 IP 地址

Standalone 模式

该模式下, acme.sh 自动建立服务器来完成签发, 需要临时占用 80 或 443 端口(需要 root 权限, 所以上面需要切换为 root 用户)

# HTTP
acme.sh --issue -d example.com --standalone -k ec-256
# 或者使用 TLS
acme.sh --issue -d example.com --alpn --standalone -k ec-256

这里使用了 ec-256 秘钥, 性能比 rsa-4096 更好

可以通过 -d 参数指定多个子域名

acme.sh --issue -d example.com -d www.example.com --standalone -k ec-256

使用 DNS 手动验证
$ acme.sh --issue --dns -d example.com

得到以下输出:

Add the following txt record:
Domain:_acme-challenge.example.com
Txt value:9ihDbjYfTExAYeDs4DBUeuTo18KBzwvTEjUnSwd32-c

Please add those txt records to the domains. Waiting for the dns to take effect.

紧接着手动添加一条 TXT 类型的 DNS 解析记录

这里以阿里云的 DNS 解析配置界面为例:

使用这种方式时, 没法自动续签证书, 只能每 60 天手动更新一次 DNS 的解析配置


安装证书

将证书和密钥移动至 /home/admin 目录

$ acme.sh --installcert -d example.com --fullchainpath /home/admin/example.crt --keypath /home/admin/example.key --ecc

上文的 ec-256 属于 ECC 证书, 此处添加了 --ecc 选项


更新证书

默认会自动更新证书(DNS 模式除外), 也可以手动强制更新证书, 当然快要到期时会自动给 my@example.com 发送邮件

$ acme.sh --renew -d example.com --force --ecc
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值