acme.sh 申请通配符证书
docker中nginx为例
1、 不要忘记nginx的端口,映射80的同时还有443 ssl的端口
2、 安装socat
sudo apt-get install socat
// 或者
sudo yum install socat
3、 执行: curl https://get.acme.sh | sh
4.、申请证书需要验证域名
选择dns验证,详情看这里
以阿里云为例,点击这里获取
export Ali_Key="****************************"
export Ali_Secret="**************************"
5、 执行:
acme.sh --issue --dns dns_ali -d example.com -d *.example.com
然后看输出的内容可以确定证书所在位置,这时就申请成功了,然后在 nginx 等服务中进行对应的配置就可以了。
6、 复制生成的证书到容器
docker cp /root/.acme.sh/example.com/ 容器id:/var/example.com
紧接着,生成 dhparam.pem(如果没有这个最后评分会是B)
openssl dhparam -out /root/.acme.sh/dhparam.pem 2048
同样,将此文件复制到容器下
7、 修改nginx配置
server {
listen 80;
listen 443 ssl;
#下边这两行是新添加
ssl_certificate /var/example.com/fullchain.cer;
ssl_certificate_key /var/example.com/example.com.key;
......
}
8、重启nginx 刷新页面会看到url前已经有了小绿锁
此时可以查看等级了
点击这个测试 (www.ssllabs.com)
Let’s Encrypt 官方文档
——–end——-