1,执行下面命令
curl https://get.acme.sh | sh
如果报下面的错误:
则在hosts中添加下面配置,
140.82.114.4 github.com
185.199.108.153 github.github.io
199.232.69.194 github.global.ssl.fastly.net
199.232.28.133 raw.githubusercontent.com
然后重新执行命令:
查看 ~/.acme.sh/ 目录下内容:
2,找到阿里云的DNS解析
然后生成一个Key和Secret
然后使用 阿里云的域名生成:
-- 生成 泛域名证书,所有二级域名都能使用
acme.sh --issue --dns dns_ali -d example.com -d '*.example.com'
执行以下命令:
acme.sh --register-account -m 1023xxxx@qq.com
最后成功了:
然后把证书安装到其他目录:
./acme.sh --installcert -d mydomain.com -d *.mydomain.com \
--cert-file /etc/letsencrypt/zmbd/mydomain.com.cer \
--key-file /etc/letsencrypt/zmbd/mydomain.com.key \
--ca-file /etc/letsencrypt/zmbd/ca.cer \
--fullchain-file /etc/letsencrypt/zmbd/fullchain.cer \
--reloadcmd '/www/server/nginx/sbin/nginx -c /www/server/nginx/conf/nginx.conf'
3,配置Nginx
/usr/local/nginx/ssl 是存放https证书的文件。 然后配置nginx.conf
server {
listen 80;
server_name mydomain.com www.mydomain.com;
return 301 https://www.mydomain.com$request_uri;
}
server {
listen 443 ssl;
server_name www.mydomain.com;
ssl_certificate /etc/letsencrypt/zmbd/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/zmbd/mydomain.com.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_session_timeout 5m;
add_header Strict-Transport-Security max-age=60;
location / {
root /usr/local/program/ning;
try_files $uri $uri/ /index.html;
}
}