使用 ACME.sh 签发 SSL 泛域名证书

脚本

1
2
3
4
5
6
7
8
9
10
11
12
13
~/.acme.sh/acme.sh \
--debug \
--issue \
--dns dns_dp \
-d *.starudream.cn

~/.acme.sh/acme.sh \
--debug \
--install-cert \
-d *.starudream.cn \
--fullchain-file '/usr/local/openresty/nginx/conf/ssl/*.starudream.cn.crt' \
--key-file '/usr/local/openresty/nginx/conf/ssl/*.starudream.cn.key' \
--reloadcmd 'service nginx reload'

nginx 配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
server {
listen 80;
listen [::]:80;
listen 443 ssl http2;
listen [::]:443 ssl http2;
ssl_certificate /usr/local/openresty/nginx/conf/ssl/*.starudream.cn.crt;
ssl_certificate_key /usr/local/openresty/nginx/conf/ssl/*.starudream.cn.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_timeout 10m;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_buffer_size 1400;
add_header Strict-Transport-Security max-age=15768000;
ssl_stapling on;
ssl_stapling_verify on;
server_name test.starudream.cn;
access_log /data/wwwlogs/test.starudream.cn_nginx.log combined;
index index.html;
root /data/wwwroot/default;
if ($ssl_protocol = "") { return 301 https://$host$request_uri; }
}

参考

  • https://github.com/acmesh-official/acme.sh