1. 安装 acme.sh
curl https://get.acme.sh | sh
创建 一个 bash命令: alias acme.sh=~/.acme.sh/acme.sh
2. 生成证书
(1)申请DNS API(不同的DNS提供商有不同的方法)
官方介绍:https://github.com/acmesh-official/acme.sh/wiki/dnsapi
(2)export DP_Id="XXXXXXXX"
export DP_Key=“XXXXXXXXX”
(3)执行官方介绍的指定命令,我使用的是阿里云的
命令:acme.sh --issue --dns dns_ali -d example.com -d www.example.com
3. copy/安装 证书
acme.sh --install-cert -d example.com
--cert-file /path/to/certfile/in/apache/cert.pem
--key-file /path/to/keyfile/in/apache/key.pem
--fullchain-file /path/to/fullchain/certfile/apache/fullchain.pem
4. 配置nginx
#*代表通配符
server {
listen 80;
server_name *.xxxx.cn;
rewrite ^(.*)$ https://${server_name}$1 permanent;
}
server
{
listen 443 ssl;#监听端口
server_name *.xxxx.cn;#域名
ssl_certificate /usr/local/webserver/nginx/ssl/fullchain.cer; # 指定证书的位置,绝对路径
ssl_certificate_key /usr/local/webserver/nginx/ssl/a.key; # 绝对路径,同上
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
ssl_prefer_server_ciphers on;
}
5. 重启nginx