NameCheap SSL Certificate 申請教學 (筆記)

台灣 ISP 有代理很多要錢又貴鬆鬆的 SSL 憑證,優點是可以開發票,缺點就是需要 Paper Work 而且貴鬆鬆。國外的 GoDaddy SSL Certificate 是有比較便宜一些,但是對於我這種窮人還是超出預算。如果您想要層級不高的免費 SSL 憑證,目前倒是有 Let’s Encrypt, WoSign 和 StartSSL 可以選擇,Let's Encrypt 只能發 90 天(有 Auto Renew Agent)、WoSign 可以 1~3 年 (我沒申請過)、StartSSL 可以簽 1 年 (申請過程複雜),上述的免費憑證都是 No Paper Work,需要的人可以擇一服用。

由於最近謠傳 SSL 有助於 SEO 與搜尋排名,所以我也申請了不少 SSL 憑證,主要是怕忘記註冊的流程,所以先來記錄一下申請的過程。比起 GoDaddy,NameCheap 確實比較便宜,但是服務與穩定度絕對不及 GoDaddy,最近我申請 SSL 有五次,其中兩次都發生系統問題,都要聯絡客服協助處理,雖然他們的線上客服是 7/24,但還是蠻麻煩的,不用 Paper Work 但是要 Human Work....... -_-

NameCheap SSL 憑證申請 + 啟用

申請的過程很簡單,首先要先購買 SSL 並且付款,之後在 Dash Board Product List 就可以看到購買的 SSL Item,接著按下「Activate」進行啟用。Server Type 請選擇「Apache, Nginx, cPanel or other」這個選項。然後找一台主機,輸入以下命令後,會產生一組 Key 與 CSR (Certificate Signing Request) 檔案,資訊可不要亂填,最重要的「Common Name / CN」要填上像要申請 SSL 的 DNS,如下:

ssl-CSR-generate

執行完成後,將 CSR 檔案的內容複製/貼上到啟用畫面的「Enter CSR」表單中,如下:

openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr

name-cheap-s1-1

接著會自動解析 CSR Block 並且顯示您要註冊的 Domain,這時千萬要確認 Domain 是正確的設定,如下:

name-cheap-s1-2

然後繼續選擇 DCV Method 驗證模式,我比較喜歡 DNS-based 驗證型態,不用在 HTTP Server 產生檔案,不然說真的 HTTP-based 比較好上手,接著下一步繼續。

name-cheap-s2

再來填一下線上驗證需要的表單,以下這幾個必填欄位不要漏掉即可。

name-cheap-s3

最後進行確認,按下「Confirm」之後會連接到憑證單位,系統會顯示要繼續驗證的動作,比如新增 DNS CNAME Record 或者上傳檔案到 HTTP Server 等等引導。我好幾次就是在這個步驟發生問題,導致無法進行認證,都要透過客服來解決,果然便宜的比較費力!

name-cheap-s4

完成之後會看到 SSL Certificate 處於 IN PROGRESS 的狀態,官方說明 15 分鐘以內就會開通,之後就可以在 Email 收到憑證相關檔案,也可以在 Dash Board 進行下載。

name-cheap-done

Apache SSL Certificate Setup

Apache 要掛載 SSL 也很簡單,編輯你的設定檔,加入以下:

<VirtualHost *:443>
    DocumentRoot /var/www/html
    ServerName demo.toright.com

    SSLEngine On
    SSLProtocol all -SSLv2 -SSLv3
    SSLCipherSuite ALL:!DH:!EXPORT:!RC4:+HIGH:+MEDIUM:!LOW:!aNULL:!eNULL
    SSLHonorCipherOrder On
    SSLCertificateFile /etc/ssl/certs/ssl-comodo.crt
    SSLCertificateKeyFile /etc/ssl/certs/server.key
    SSLCertificateChainFile /etc/ssl/certs/ssl-comodo-bundle.crt
</VirtualHost>

然後 service httpd restart 即可,有機會再來介紹免費的 SSL 申請。