acme.sh 申請萬用字元證書
阿新 • • 發佈:2019-02-11
docker中nginx為例
1、 不要忘記nginx的埠,對映80的同時還有443 ssl的埠
2、 安裝socat
sudo apt-get install socat
// 或者
sudo yum install socat
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)
證書過期了,可以更新證書
/root/.acme.sh/acme.sh --renew -d example.com --for ce
然後複製到你的容器,記住是覆蓋原來的檔案
最後重啟nginx
Let’s Encrypt 官方文件
--------end-------