安装acme.sh
curl https://get.acme.sh | sh
命令简介
申请证书需要对你的域名进行验证,使用本地 Nginx 验证:
~/.acme.sh/acme.sh --issue -d 你的域名 --nginx
上面这条命令会在 ~/.acme.sh 文件夹下生成域名相关的证书文件,而 nginx 读取的证书文件最好在 /etc/nginx 中,下面的命令会把文件复制一份到 /etc/nginx/ssl 下。
~/.acme.sh/acme.sh --installcert -d 你的域名 \
--key-file /etc/nginx/ssl/你的域名/你的域名.key \
--fullchain-file /etc/nginx/ssl/你的域名/fullchain.cer \
--reloadcmd "service nginx force-reload"
还有一步,就是在nginx上加证书配置,如下:
server {
listen 443;
server_name 你的域名;
ssl on;
root /var/www/html;
index index.html index.htm;
ssl_certificate /etc/nginx/ssl/你的域名/fullchain.cer;
ssl_certificate_key /etc/nginx/ssl/你的域名/你的域名.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
location / {
index index.html index.htm;
}
}
重启nginx,测试证书有效性:
nginx -t && nginx -s reload