LetsEncrypt是一個免費、自動、開放的證書頒發機構。
acme.sh 實現了 acme 協議, 能夠從 LetsEncrypt 生成免費的證書。html
本文介紹如何使用acme.sh來簽發並自動續期LetsEncrypt免費SSL證書。git
安裝acme.sh,只須要一條命令 github
curl https://get.acme.sh | sh
使用DNS方式驗證 ,本文以CloudXNS爲例,其餘DNS服務商見文章結尾web
事實上,acme.sh支持http方式和DNS方式驗證域名全部權,但考慮到有時會失效和部分用戶服務器無web服務,此處使用DNS驗證方式。api
登陸DNS控制檯,進入API管理頁面(不一樣DNS服務商的頁面不一樣,見文章結尾),記錄下API信息服務器
導入API信息到acme.sh,運行命令app
export CX_Key="1234" export CX_Secret="sADDsdasdgdsf"
[1]簽發指定域名,如example.com,運行命令curl
acme.sh --issue --dns dns_cx -d example.com -d www.example.com #簽發ECC證書請使用如下命令 acme.sh --issue --dns dns_cx -d example.com -d www.example.com --keylength ec-256
[2]簽發泛域名,運行命令ide
acme.sh --issue --dns dns_cx -d example.com -d *.example.com #簽發ECC證書請使用如下命令 acme.sh --issue --dns dns_cx -d example.com -d *. example.com --keylength ec-256
請注意,命令中export CX_Key、export CX_Secret、–dns dns_cx爲CloudXNS的參數,請根據你的服務商修改阿里雲
各大DNS商API獲取方法請參考官方文檔(本教程在第三點,阿里雲在第11),以下:
https://github.com/Neilpang/acme.sh/blob/master/dnsapi/README.md
https://github.com/Neilpang/acme.sh/wiki/dnsapihttps://github.com/Neilpang/acme.sh/wiki/dnsapi
簽發成功!
另外有standalone生成ssl證書的方式,請參考 http://www.javashuo.com/article/p-olfrzblv-dv.html