Inspired by Let's Encrypt Community , thx to sahsanu, jsha, and orzorc.web
Lets Encrypt 是一款免費的網站 SSL 證書籤發機構,Certify 是一款開源的 Windows + IIS 下的 Lets Encrypt 申請/自動更新程序。api
花生殼是oray的動態域名解析服務。測試
筆者在嘗試在啓用了花生殼的域名網站申請 Lets Encrypt 證書時,發現 validation 老是失敗,彷彿證書服務沒法訪問咱們的域名同樣。網站
並且這個問題與 域名、網站配置、操做系統 無關。spa
在 Lets Encryp t社區筆者發現了問題的癥結:操作系統
Oray 的 DNS 不支持 DNS 0x20。.net
在向 Lets Encrypt 申請證書時,會對每一個提供的域名進行解析,當 Lets Encrypt 發出解析請求時,會隨機將域名中的部分字母大寫。server
例如:域名爲 envsafe.cn,但發送時改成 eNvsAfE.cNdns
Lets Encrypt 期待 DNS 的應答中的域名爲徹底一致的 eNvsAfE.cN,不然將拒絕申請ip
然而 oray 的 DNS 應答中域名變回了非大寫的 envsafe.cn
在聯繫了oray的專員客服後,筆者認爲花生殼的技術人員對此不甚瞭解,等待他們更新服務,不如另闢蹊徑。
既然 oray 的 DNS 不行,那就臨時換一個能行的。經筆者測試,DNSPod(騰訊雲)的 DNS 是能夠的。
成功申請證書步驟以下:
證書有效期爲90天,應在證書到期以前執行上述步驟 renew。