Let's Encrypt 证书申请及配置

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

 
 
原文地址:https://www.cnblogs.com/cw828/p/13602406.html