當網站加入 SSL 加密協定(HTTPS,網址列會是綠色鎖頭圖示),就不會被讀者誤會是危險網站或詐騙網站了(HTTP,是紅色鎖頭圖示)。申請方式其實很簡單,但是因為是免費的,所以每3個月需要重新申請SSL憑證。我覺得不會太麻煩,反正就用手機日曆功能提醒自己就好了,或者注意線上申請網站,發送的電子郵件通知信,通常會在憑證到期前一個星期會收到信件,再找個時間更新憑證就可以了!
而我也是最近才搞清楚 Let’s Encrypt、SSL For Free、ZeroSSL 三者的關係,在文章中會一併說明。雖然有沒有搞清楚它們之間的關係並不影響憑證的申請,純粹是基於好奇心,才會在空閒時爬文。
Let’s Encrypt、 SSL For Free、ZeroSSL 三者的關係
簡單說,從下圖可以清楚了解 Let’s Encrypt 是憑證中心,可以透過線上工具網站( ZeroSSL、SSL For Free、 Certbot)的幫忙,完成SSL憑證申請,然後再安裝於網站當中。整個流程都是免費的,不需要額外付費。假使是免費申請SSL的話,憑證效期只有 90 天,在期限到之前,必須再重新申請一次憑證來使用。
原本使用SSL For Free 來完成憑證申請已經好長一段時間了,可是從去年( 2020 )開始,想要重新申請憑證時,網站都會自動轉址到 ZeroSSL 來完成後續流程。一直也搞不懂原因,也害怕SSL憑證出狀況無法使用,所以就花了一些時間了解什麼是 ZeroSSL。接下來可以看一下如何利用 ZeroSSL 網站,完成整個憑證申請的流程!

現在前往SSL For Free網站的話,可以明顯看到: Never pay for S S L again. Powered by ZeroSSL with free 90-day certificates.不難理解, ZeroSSL 網站似乎已經取代SSL_For_Free 網站的申請功能的原因了。

透過 ZeroSSL 網站,申請 SSL 的流程
輸入要申請的網址
前往 ZeroSSL 網站,輸入要申請憑證的網址。

建立帳號
這個帳號除了用來登入來維護所有憑證之外,還會收到未來 ZeroSSL 憑證到期的提醒信件。

填寫網域

憑證效期: 90天(免費版)
順利的話,在這一步當中可以看到【Domains】是綠色符號,這代表前一步的流程是正確的。接著因為是免費版憑證申請的關係,所以只能選 90-Day Certificate 這個選項,然後點選下一步。

選取 Auto-Generate CSR

ZeroSSL 方案選擇
因為是申請免費版憑證,所以直接點選下一步。

驗證網站所有權
提供了三種驗證網站所有權的方式:
- Email Verification
- DNS ( CNAME )
- HTTP File Upload
按照說明步驟,將測試檔案放在網站中,然後點選下一步即可。


下載 SSL 憑證
當驗證網站所有權沒問題之後,接著就是要選擇要下載的伺服器類型,然後把憑證下載到電腦中備份,最後按下一步。

安裝 SSL 憑證到網站中
因為目前是使用 XAMPP 自架網站的關係,所以直接將剛剛下載的憑證檔案解壓縮,放在以下路徑後,開啟 XAMPP 控制面板,然後 restart Apache ,連上網站測試連線看看。假使可以正常連線的話,就完成所有憑證申請的流程了(下圖)。
- ca_bundle.crt
- 放在 C : \ xampp \ apache \ conf \ssl.crt \
- certificate.crt
- 放在 C : \ xampp \ apache \ conf \ssl.crt \
- private.key
- C : \ xampp \ apache \ conf \ssl.key \

(已停用) 透過SSL_For_Free 網站,申請SSL的流程
連結到【SSL_For_Free】網站
點選下方連結,進到【SSL_For_Free】網站後,在欄位中填入你要申請 Let’s Encrypt 憑證的網域名稱,再用空白鍵來輸入不同的網址,例如
- 申請網站: https://www.sslforfree.com/
- 輸入網域名稱 (範例) : 【 hipay0.com www.hipay0.com 】
- 點選按鈕: 【 Create_Free_SSL_Certificate 】

使用 Manual Verification
可以看到剛剛輸入想要申請憑證的網址會列在最上方,假使正確的話,就可以按【 Manual Verification 】
- Manual Verification
- Upload verification files manually to your domain to verify ownship

Manually Verify Domain
滑鼠往下滑動,然後按【 Manually Verify Domain 】

建立 .well-known 資料夾
先打開 command windows ,在安裝 WordPress 的路徑下新增【 .well-known 】資料夾:
- cd \
- cd C : \ wamp64 \ www \ spa
- mkdir .well-known

建立 acme-challenge 資料夾
然後開啟檔案總管,在 C : \ wamp64 \ www \ spa \ .well-known \ 的路徑下再新增【 acme-challenge 】資料夾

Download Certificate
在下方【 1 】的兩個檔案下載到【 1 – 5 】的路徑下,然後點選下方【 2 】兩個連結,假使能夠開啟新的網頁,而且正確顯示文字的話,就代表成功了。接著按下【 Download_SSL_Certificate 】按鈕

設定通知信箱
接著會出現帳號登入的畫面,就輸入你常用的 email 信箱,這樣子,憑證到期前一周,會透過這個 email,通知你要更新憑證。

下載憑證到電腦
然後把憑證下載到電腦

解壓縮憑證檔案
解壓縮後複製到 C : \ wamp64 \ bin \ apache \ apache2.4.37 \ conf ,這樣子就完成憑證申請了。

驗證網站
最後,在瀏覽器網址列輸入【 https://hipay0.com/ 】,假使可以進入登入畫面,就表示成功了!
Q&A for SSL
不用。無須下載或安裝任何外掛程式,只需要透過瀏覽器,在 ZeroSSL 網站中填入相關資訊,照著憑證產生精靈的步驟做即可或取憑證。
沒有,可以免費無限次數續用(Renew)。
跟密鑰洩露和誤發行有關係,假使發生錯誤或被盜的話,可以在較短的時間內發現、解決。
幾個常見的網站都提供憑證申請,只是在臺灣比較多人討論 SSL_For_Free 、 ZeroSSL。其餘的工具有:
1. Let’s Encrypt: https://letsencrypt.org/
2. Certbot: https://certbot.eff.org/
3. WoSign’s KuaiSSL: 網站似乎有問題,無法連線
4. Free_SSL_Certificate: https://www.freesslcertificate.org/
可以有其它選擇,例如: The better option is provided by Cloudflare.
Cloudflare 不僅只是 CDN service provider,也提供免費版的憑證讓 CDN 用戶使用。
架網站懶人包
- 架網站概觀
- Step 1: 兩個選一個來安裝
- Step 2: No-IP DDNS 服務
- Step 3: Let’s Encrypt 申請SSL憑證
- Step 4: VirtualHost設定
- 網站搬家( Astra Theme )與網頁速度( Pagespeed Insights )微調