2016年2月15日 星期一

在 ssls.com 購買 SSL 憑證


要買 Rapid SSL 

如果你只是買 1 domain 的 ssl ,有兩種可以買:PositiveSSL ,一年 4.99USD;RapidSSL ,一年 8.99USD。比較貴就是比較好。我向客服要了兩個 domain 來看,PositiveSSL 和 RapidSSL 的差異。PositiveSSL 是四層,傳給瀏覽器的憑證大小 5378 bytes;RapidSSL 是三層,憑證大小 2989 bytes。簡單的說,RapidSSL 比較貴,但是速度比較快!Cloudflare Blog 也說 Long Chain = Slow Performance

免費的憑證有哪些?

cloudflare:整個 DNS 要放在它那,而且要啟用 proxy,然後設 設定 →  crypto → SSL 要設成 flexible
letsencrypt:有幾個條件:三個月要更新一次、要在線上的環境來取得憑證(多台機器就很麻煩)、同一個 domain 只能拿 5 個 sub domain。我沒用,因為上述條件太嚴格了。

wildcard DNS

買 wildcard ssl ,申請了 *.example.com ,只支援一層子網域,也就是 sub.example.com ;像是 sub2.sub.example.com 兩層的就不了。要再買 *.sub.example.com 才能提供 sub2.sub.example.com

子網域的 DNS

如果你是 blog.example.com,買 1 domain 的 SSL ,啟用 blog.example.com 的,憑證會包含 www.blog.example.com 和 blog.example.com

一般 naked 網域的 SSL

買 1 domain 的 SSL,申請 www.example.com ,會自動包含 www.example.com 和 example.com。如果是申請 example.com ,則包含 www.example.com

如何安裝

在網站上購買之後,要啟用憑證,會要求輸入 CSR

# 產生 key
openssl genrsa -out ./example.com.key 2048

# 產生 csr
openssl req -new -sha256 -key ./example.com.key -out ./example.com.csr

# 會跳出下列問題
Country Name (2 letter code) [AU]:TW
State or Province Name (full name) [Some-State]:Taiwan
Locality Name (eg, city) []:Taipei
Organization Name (eg, company) [Internet Widgits Pty Ltd]:example.com
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:
*.example.com 或 www.example.com 或 blog.example.com (請自行決定)
Email Address []:your-email@gmail.com

接下來的步驟就是認證和填基本資料。
email 認證之後通常要很久,我都是直接找客服。

完成申請後,直接在網站上下載。
下載下來,再解壓縮後有三個檔案
example.com.ca-bundle
example.com.crt
example.com.p7b

前兩個,要合併成一個檔案我是用指令:
cat example.com.ca-bundle example.com.crt >> example.com.ca-bundle.crt
再配合先前產生的 key 去設定 web server 即可。