[筆記] SSL 憑證購買記
2009 年 二月 23 日 星期一 6 則迴響
由於某些因素,我這次學會了怎麼購買 SSL 憑證。
你沒看錯,不是自己簽發,是購買憑證!購!買!憑!證!
一開始以為憑證申購很麻煩又要花一大筆錢,但後來發現原來有 Turbo SSL Certificate 這種東西。簡單來說就是只要通過 Domain Control Validation (證明你具有控制該網域的權限,指的是向網域代理商購買的根網域,不是子網域),那你就可以拿到一個「不會被瀏覽器叫」的憑證了。
不需要甚麼奇怪的管道,知名的網域名稱代理商去你爸的 Go Daddy 就有賣了,DM 在這裡,左邊的「Standard SSL」就是了。
—
先從 SSL 憑證說起好了
SSL 憑證在簽發的時候需要有一個根憑證,這個根憑證如果已經內建在作業系統或瀏覽器裡面,那就不會出現以下的畫面:
—
當然,你自己簽發的 SSL 憑證一定都沒有那種內建在電腦裡的;我的意思是,自己簽的憑證一定會出現以上的畫面。當然你也可以教使用者如何把根憑證加入他的電腦裡,不過這種步驟對於一個跟電腦不熟的人,一定是一大挑戰。
(偷偷表一下師大計中ㄎㄎ)
現在如果你想花錢消災的話,除了購買貴桑桑的 Verisign 憑證之外 (台灣有代理,請 Google 一下「 Verisign 台灣」),其實你還有別的選擇,那就是買一個 Turbo SSL Certificate。
貴桑桑的憑證到底差在哪裡呢?
你可以看一下國內知名網站的憑證,例如台灣高鐵線上訂票系統(或各大銀行)
你可以看到它裡面記載了很仔細的公司名稱資訊。
至於 Turbo 版的呢,給個例子,像是國內著名線上報名系統 Registrano:
差異在於裡面只有寫網域名稱。
但是,兩支憑證都是從大廠商的 SSL 根憑證簽發出來的,所以在大部份的現代主流瀏覽器都不會出現「憑證錯誤」的問題。
如果你的網站只想要讓這個「憑證錯誤」的訊息消失的話,那 Turbo SSL Cert 就是你要的。
Go Daddy 的 Standard SSL Certificate 報價是一年 29.99 美金,折合新臺幣約一千出頭,怎麼算都比花一萬多塊錢買個 VeriSign 的 Certificate 還便宜吧?
(老實說我也是看了 Registrano 的憑證才知道有這種東西)
—
首先當然是去 Go Daddy 的網站透過線上付款的方式購買 Standard SSL 這個產品。
刷卡完成後,大概要等五分鐘,你才會在你的帳號頁裡面看到有 SSL Certificate 這個產品。
進去之後就照著這個網頁的流程去走,如果你要放的伺服器不是 Go Daddy 的 hosting,記得要選「Third-party Server」
在簽發 SSL 憑證之前有幾件事你要注意:
- 請確定 Whois 記錄沒有設成 Private ,而且聯絡信箱你可以存取。Go Daddy 的域名認證是會寄信到 Whois 的 Administrative Contact Email,你一定要確定在你的 Whois 記錄裡面,這個欄位的 email 是你收得到的,不然你拿不到認證信。要查 Whois 記錄可以在這裡查。
- 請準備好你的地址的英文翻譯,在送出 CSR 的時候會用到。但是這些資料不會顯示在簽發給你的憑證裡面。
- 在你的伺服器或電腦裡產生 CSR 檔案的時候,Passphrase 一定要記住,你可以打密碼,也可以隨便找一段文字來貼上,但這一個字串一定要記住,因為網頁伺服器在開啟憑證的時候會需要你輸入這個字串。
- 產生 CSR 檔案的時候,Common Name (CN) 一定要填寫你想簽署的網域名稱。例如今天我要簽署這個 SSL 憑證給 secure.yorkxin.org,那我就要填 secure.yorkxin.org,絕對不要寫 Apache OpenSSL 程式叫你填的「My name」 -_-
- 產生 CSR 過程中所使用的 .key 檔案不要丟掉!
Apache 2.x 要製作 CSR 檔案的方法如下:(其實在申請 SSL 的頁面裡面就有說明了)
openssl genrsa -des3 -out ca.key 1024
openssl req -new -key ca.key -out ca.csr
在上述的第二步,你需要輸入一堆資料,我之前寫的這篇文章裡面有一張圖,參考著用。
—
整理步驟大概如下:
- 刷卡買 Turbo SSL Certificate
- 進入帳號頁面的 SSL Certificate 產品頁面,找找看哪裡有可以 Manage Certificates 的連結,按進去
- 按下 Request Certificate 之類的連結
- 填寫申請人資料,Email 欄位要填寫的是「收取憑證的 Email」
- 產生一個 CSR 檔案,然後把檔案的內容貼到要你輸入 CSR 的欄位 (通常是最頭和最尾兩行有很多個等號 = ,然後中間一堆看起來是亂碼的東西。
- 送出之後可能會確認資料,再用肉眼確認一次
- 接著就等著收 Whois 記錄裡面 Administrative Email 的認證信,或是請網管協助。
- 按一下認證信裡面的連結,完成 Domain Access Verification
- 然後到你在申請人資料裡填寫的 email 裡面,會有一封信說網域認證已經過了,要你點擊連結,你就點吧。然後你要選擇這個憑證要放在哪一種伺服器裡面,有 Apache 2.x 可以選,或著你要用大硬的 IIS 就選 IIS。
- 最後就可以拿到你的 SSL 憑證了。 Go Daddy 是寄到你的 email 裡面,一個 zip 檔案
這個 Zip 檔案解開來有兩個檔案 (例如我申請的是 secure.yorkxin.org):
- secure.yorkxin.org.crt
- gd_bundle.crt
第一個是你的伺服器 SSL 憑證
第二個是中繼憑證 (Intermediate Certificate)
—
Apache 2 要設定 SSL 的方法如下:
先把你之前自己生出來的 ca.key 、廠商給你的 domain.com.crt (檔名依你的網域而有所不同) 、和 gd_bundle.crt 複製到主機上
在你的 ssl.conf 裡面(我是放在 Virtual Host 的設定裡面)寫這樣:
SSLCertificateFile /path/to/domain.com.crt
SSLCertificateKeyFile /path/to/ca.key
SSLCertificateChainFile /path/to/gd_bundle.crt
然後重新啟動 Apache (/etc/init.d/apache2 restart 或其他類似指令),會要你輸入當初產生 ca.key 的時候使用的 Passphrase (所以才叫你不要忘記啊 XD),打上去就可以啟動了。…如果忘了的話…ㄎㄎ
—
心得:憑證這麼便宜為什麼一堆單位都偷懶自己簽發呢?而且買 Wildcard 的憑證還有優惠ㄟ!
Update:
心得 2 :具備 SSL 的網站也不是一定就可信的,你看投資 1000 台票就有這種東西了…





They’re lazy, or they don’t (want to) know.
Or should I use 『AND』?
前幾天才看到有人在問, 結果真的又(?)是你 lol
如果您是說師大精靈之城吸吸板上那篇 是我啊 lol
補一個心得 2 :
具備 SSL 的網站也不是一定就可信的,你看投資 1000 台票就有這種東西了…
請問如果是apache 1.X 的版本,那申請時會有 for apache 1.X 的版本可用嗎??
自己找到答案了,是可以用的,而且我也安裝好了…..
SSL凭证部署指南:http://www.wosign.com/support/ssl_installation.htm