ZeroSSL 教學,免費 SSL 憑證-申請與安裝步驟

hacking, cyber, hacker

本文為 ZeroSSlL教學,介紹如何使用 ZeroSSL 申請免費 SSL 憑證,並在 Hostinger 虛擬主機安裝憑證。

什麼是 SSL 憑證

SSL 憑證可以加強網站和瀏覽器之間的安全性,網站的網址如果是以 http (沒有s) 開頭,請考慮是不是要繼續瀏覽,網站和瀏覽器之間在背後傳輸了很多我們的個人資訊,這已無法避免,但我們可以做的就是確保資訊安全,確保資訊完整不被竄改或洩漏。

網站站長的責任就是一定要安裝 SSL 憑證,而使用者就是避免瀏覽不安全的網站。

什麼是 ZeroSSL

一般 SSL 憑證都需要付費購買,而且有時效限制,有效期限一般就一年,時間到了必須再付費延長。

ZeroSSL 提供免費申請 SSL 憑證,免費的有效期限只有 90 天,專業版本可以到一年,免費 ZeroSSL 憑證最多只能申請三個。

Let’s Encrypt 是另一個免費的 SSL 憑證服務,沒有數量限制,但 ZeroSSL 的網站介面很好操作,申請流程簡單易懂,也有提供 API,可以做到憑證申請,驗證和自動更新憑證等功能。

如何申請免費 SSL 憑證

#1 開啟 ZeroSSL 網站

註冊網址:Sign Up – ZeroSSL
先註冊帳號,或直接開始申請憑證,註冊帳號是必須的。

#2 開啟管理介面

帳號註冊完成,進入管理介面,點擊 [New Certificate]

#3 輸入網域名稱

Enter Domains 輸入網域名稱
範例:google.com

輸入別人的也可以,只是驗證不可能會通過。

#4 選擇有效期限

免費服務只能選擇 90 天有效期限,90 天後必須再來更新憑證。

#5 自動產生 CSR

CSR 是憑證簽署要求 (Certificate Signing Request),申請憑證時必須提交,內容包含你的網域名稱、組織名稱、地址、電子郵件等等。

勾選自動產生就好,或者自行輸入。

#6 選擇憑證方案

選擇免費方案對一般小網站就可以了,已有足夠的安全保護。

基本方案每個月 10 美金,可以無限制申請 90 天期限憑證,和 3 個 1 年期憑證。

#7 網域驗證

我們必須先證明申請的網域名稱是自己的才行,有三種驗證方式:

  1. Email 驗證
  2. DNS 驗證
  3. 檔案上傳驗證

選擇一個對自己最簡單方便的方式即可。

# 7-1 Email 驗證

step 1

選擇要驗證的 Email,限制只能使用以下的 Email,如果你是網域的擁有者,才能設定這些 Email 帳號。

  • admin@your-domain.com
  • administrator@your-domain.com
  • hostmaster@your-domain.com
  • postmaster@your-domain.com
  • webmaster@your-domain.com

step 2

點擊 [Next Step ->],過一會就會收到驗證信。

step 3

如下圖在網頁中輸入驗證碼,驗證後即可下載憑證。

# 7-2 DNS 驗證

不管是使用 cPanel 管理介面,或 Hostinger 的 hPanel,或是網域註冊商的管理介面都可以,依據上圖指示新增一筆 CNAME record。

這邊需要了解一點 DNS 知識,而且 DNS 設定需要時間讓設定同步,可能不會馬上完成。

但其實也只是滑鼠點一點,複製貼上數值就好,不用新增設定 Email 帳號,或上傳檔案再設定檔案讀取路徑。

驗證後即可下載憑證。

# 7-3 檔案上傳驗證

  1. 依據上圖指示,先下載 Auth File
  2. 上傳 Auth File 到指定路徑 /.well-known/pki-validation/
  3. 確定檔案可以依據指示的 URL 讀取。

驗證成功即可下載憑證。

#8 下載憑證檔案

點擊 [Install Certificate] 下載憑證檔案,這邊的 Install 是下載檔案,安裝要自己來,ZeroSSL 不會知道你的 Server 在哪裡?

將下載後的檔案解壓縮備用。

#9 安裝憑證

這邊使用 Hostinger 當安裝範例。

如上圖進入後台管理,點擊 [SSL],點擊 [Manage]。

  1. 點擊 [Import SSL]。
  2. 選擇已驗證網域名稱。
  3. 使用任何文字編輯器開啟憑證檔案 certificate.crt,將內容複製到此。
  4. 使用任何文字編輯器開啟憑證檔案 private.key,將內容複製到此。
  5. 使用任何文字編輯器開啟憑證檔案 ca_bundle.crt,將內容複製到此。
安裝成功啦!

如何更新憑證

ZeroSSL 的憑證只有 90 天的有效期,必須定期更新憑證才能維持網站的安全,但是 ZeroSSL 也只有 90 天的免費使用,怎麼辦呢?

簡單的方式,就是找一間有提供免費,且會自動更新 SSL 憑證的虛擬主機商,例如 NameHero,NameHero 使用 cPanel 管理介面,使用 Let’s Encrypt SSL,在第一次的憑證設定完成後,就不用煩惱了,完全的自動化更新。

如果你使用 Hostinger 虛擬主機,搭配 hPanel,一樣可以無限免費更新憑證,只是沒那麼方便。

首先使用 hPanel SSH Access 進入主機

開啟終端機,執行上圖的 SSH CLI Command。

然後執行下列指令:

curl https://get.acme.sh | sh -s email=this.is.your@email.com --force

email 要換成自己的,和 ZeroSSL 同樣的登入 email。

以上會安裝 acme 工具,接下來請進入安裝目錄,開始建立憑證:

cd ~/.acme.sh/
acme.sh --issue -d domain.com -d www.domain.com -w ~/domains/domain.com/public_html/

請先把 domain.com 換成你的網域名稱。

等一會時間,等待建立憑證,憑證檔案會出現在 ~/.acme/domain.com 目錄中

你會發現這裡有 .cer 和 .key 為副檔名的檔案,打開這兩個檔案,將內容文字複製貼到前面 Import SSL 的地方 (.cer 複製到 Certificate 空格,.key 複製到 Private key 空格),完成更新。

這個方式申請的憑證只有 60 天有效期,而且不容易自動化,除非使用 VPS 主機才有更大的主機權限,要省麻煩可以考慮購買 ZeroSSL 專業版憑證,一年的有效期。

最後

使用 ZeroSSL 一陣子了,真是一個佛心產品,但是有個奇怪的地方,就是現在無法使用 GTmetrix 測試網站速度了,測試時會顯示 HTTPS 憑證錯誤,之前用免費的 Let’s Encrypt 都沒問題。

比較玻璃心的人適合使用 GTmetrix,評分都很好看;想挑戰 Google 標準的,就用 PageSpeed Insights,滿滿挫折啊。

08/26 更新:Hostinger 現在也可以使用 Let’s Encrypt 免費憑證,並且自動更新,如果原本使用 ZeroSSL 想改用 Let’s Encrypt,可以先移除 ZeroSSL 憑證,然後使用自動安裝即可。

點擊 Install SSL 安裝 Let’s Encrypt

安裝成功,永久免費