一般申請 SSL 的過程,會需要驗證,驗證方式有 檔案、DNS 、Email
檔案就是在你的網站目錄底下放入字串,讓頒發機構可以連到你的網站加上路徑 (https://ssorc.tw/xxxxx) 驗證就是你
而 DNS 就是你要在你的 ssorc.tw DNS 設定加入一串 TXT 碼來驗證
再者 Email 就是寄信到 [email protected] 、或 [email protected] 等等信箱 (但我沒有)
所以我選擇使用 dehydrated 或 certbot
它們是用來申請 Let’s Encrypt (是免費、自動化和開放的憑證頒發機構)
dehydrated 用檔案方式,這是我一開始使用的工具,但後來有內部網站需要 SSL ,又沒辦法用檔案方式,所以就選擇 certbot 用 DNS 方式來驗證
certbot 只要這樣
yum install certbot -y certbot -d xxx.ssorc.tw --manual --preferred-challenges dns certonly
過程會跑出
1. 設定 email
2. 同意 Terms of Service
3. 不同意 share your email address
4. 設定 DNS TXT
看到 DNS TXT 就別急著按 Enter,要先跑去設定 DNS ,再繼續下一步讓它驗證
通過後就會在 /etc/letsencrypt/live/xxx.ssorc.tw/ 看到憑證檔
cert.pem -> ../../archive/xxx.ssorc.tw/cert1.pem # 憑證 chain.pem -> ../../archive/xxx.ssorc.tw/chain1.pem # 中繼 fullchain.pem -> ../../archive/xxx.ssorc.tw/fullchain1.pem privkey.pem -> ../../archive/xxx.ssorc.tw/privkey1.pem # 私鑰
(我沒研究 certbot 怎麼完全自動化,當然也要搭配你的 DNS 註冊局有 API 讓你串)
dehydrated 也是可以完全自動化,只要你的網站是 public 的
(dehydrated 安裝作法可以參考它的文件)
留言