let's encrypt 证书

安装 acme.sh

1
2
3
4
5
6
7
8
9
# 安装依赖
# CentOS
yum install socat curl
# Debian
apt install socat curl
# 注意安全
curl https://get.acme.sh | sh手动配置
# 安装目录
$HOME/.acme.sh/

泛域名证书,只支持 DNS 验证,未核实

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# 本机http验证,单域名
acme.sh --issue -d kldidi.com --nginx /usr/local/nginx/conf/nginx.conf

# 本机网站根目录验证,单域名
acme.sh --issue -d kldidi.com --webroot /data/www
# --keylength ec-256 是签发 ECC 类型的证书

# dns 验证,通配
acme.sh --issue --dns -d kldidi.com -d *.kldidi.com

acme.sh --issue --dns -d supaytechgo.com -d *.supaytechgo.com

# 显示相应解析记录,需要在域名管理面板中添加这条 `txt` 记录
acme.sh --renew -d kldidi.com -d *.kldidi.com

acme.sh --renew -d supaytechgo.com -d *.supaytechgo.com

使用 API

申请 api token

腾讯云需要去 dnspod.cn 创建 api key

1
2
3
4
5
6
7
8
9
10
11
12
13

# 腾讯云 dnspod

export DP_Id="id"
export DP_Key="token"
~/.acme.sh/acme.sh --issue --dns dns_dp -d kldidi.com -d *.kldidi.com

# 阿里云
export Ali_Key="id"
export Ali_Secret="token"
# 生成证书,会手动生成一个 txt 记录验证,时间间隔 `120s`
.acme.sh/acme.sh --issue --dns dns_ali -d kldidi.com -d *.kldidi.com

配置 nginx

acme.sh 每 60 天更新证书

1
2
3
4
5
6
7

# 复制证书
~/.acme.sh/acme.sh --installcert -d kldidi.com \
--cert-file /usr/local/nginx/cert/kldidi.com.cer
--key-file /usr/local/nginx/cert/kldidi.com.key \
--fullchain-file /usr/local/nginx/cert/kldidi.com.fullchain.cer \
--reloadcmd "/usr/local/nginx/sbin/nginx -s reload"

配置 apache2

1
2
3
4
5
6
7
8
9
10
11
# apache debian
acme.sh --issue -d yorutech.cn

mkdir -p /etc/apache2/certs

# 复制证书
acme.sh --install-cert -d yorutech.cn \
--cert-file /etc/apache2/certs/yorutech.cn.cer \
--key-file /etc/apache2/certs/yorutech.cn.key \
--fullchain-file /etc/apache2/certs/fullchain.cer \
--reloadcmd "systemctl reload apache2"

更新 acme.sh

1
2
3
4
5
6
7
8
9
10
11
12
# 查看更新证书计划任务
crontab -l

# 手动
acme.sh --upgrade

# 自动
acme.sh --upgrade --auto-upgrade

# 关闭自动
acme.sh --upgrade --auto-upgrade 0

多域名,不同 api key

方式是新建一个用户,并给序权限

1
2
3
# 创建一个用户
useradd jieztech
usermod -aG cent jieztech

Windows IIS

仅用于本地 IIS,系统要求 Windows Server 2012 R2 SP1 +

1
2
3
4
# 下载对应 win 应用
https://github.com/win-acme/win-acme/releases
# 以管理员身份运行
# wacs.exe 按提示操作即可

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!