本次任務是在 Apache 環境,為網站安裝中華電信的 SSL 憑證,我不解為何官方的說明文件可以寫得這麼複雜 😐,anyway, 最後依手上得到的檔案成功安裝憑證了,紀錄一下過程。
中華電信會提供三個檔案,分別是:
要安裝在 Apache 沒有在 IIS 這麼方便能一鍵安裝,需要先將 SSL 憑證(CABAK.pfx)轉檔,才可得到 server.crt and server.key。步驟如下:
3. 以系統管理員執行剛複製到 ssl資料夾中的 openssl.exe
4. 取得 server. crt
指令:pkcs12 -in CABAK.pfx -out server.crt -nodes
按 enter 後請輸入密碼,輸入過程中沒動靜是正常的(游標不會隨著輸入字元而移動,會以為沒在敲鍵盤),打完按 enter, 目錄就多一個 crt 憑證了。
5. 同理,取得 server.key
指令:pkcs12 -in CABAK.pfx -out server.key -nodes
6. 轉檔完根目錄就多出兩個憑證檔,分別是 server.crt 及 server.key
7. 複製 PublicCA2_6.crt,並重新命名為 ca-bundle.crt,這樣就不用再修改 apache 的 httpd_ssl.conf。這純粹是因為我懶,本來文字檔命名就是ca-bundle。不要重新命名也可以,但要記得到 httpd_ssl.conf 去更改中繼憑證的檔名。
8. 最後,替換資料夾的舊檔,重啟 Apache 即完成更新。
注意:建議舊憑證先不要改檔名覆蓋,以免憑證有問題無法還原 😭
若網站的公家機關所有,要使用政府憑證,在政府憑證入口網下載 GTLSCA憑證串鍊,會包含根憑證ROOTeCA_64.crt及中繼憑證eCA1_to_eCA2-New.crt、GTLSCA.crt
步驟跟之前大同小異,從 CABAK.pfx 解出 server.crt and server.key 後,只有兩個地方不同:
1. 把 eCA1_to_eCA2-New.crt 重新命名為 ca-bundle.crt
2. 把 GTLSCA.crt 的內容複製貼上到 server.crt
參考來源:Apache SSL 憑證請求檔製作與憑證安裝手冊
延伸閱讀: