專有名詞:
DV: Domain Validation
OV: Organization Validation
EV: Extended Validation
1. 確認網域資訊
在購買 SSL 之前,必須先擁有一個認證的網域。我們可以使用 whois 來查詢網域的申請資料。whois 查詢出來的資料,請確定 “Administrative Contact Email” 的電子信箱是正確的。因為 SSL 會以此信箱為對象寄發。
首先我們要先在CentOS 上面產生兩個檔案 server.key 跟 server.csr
# openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr
Country Name (2 letter code) [AU]: TW
State or Province Name (full name) [Some-State]: Taiwan
Locality Name (eg, city) []: Taichung
Organization Name (eg, company) [Internet Widgits Pty Ltd]: NA
Organizational Unit Name (eg, section) []: NA
Common Name (eg, YOUR name) []: <your-domain> (這裡一定要輸入正確的網域)
Email Address []: (網域註冊的信箱)
Please enter the following 'extra' attributes to be sent with your certificate request
A challenge password []: (可不填)
An optional company name []: (可不填)
2.到 Namecheap 申請 Comodo PositiveSSL 認證
申請時 Namecheap 會要求你提供 CSR (Certificate signing request) ,請將先前產生的 server.csr 的內容全部貼上。
設定完成後,Namecheap 會寄發 whois 提供的電子信箱,裡面附著認證碼。唯有通過認證後,SSL 才會由 “Pending Request” 變更為 “Certificates"。
3. 收到認證檔後序處理:
你會從Comodo 收到 crt的認證檔如下:
yourdomain_com.crt
yourdomain_com.ca-bundle
4. 在 Apache 下設定 SSL
Example of an SSL configured Virtual Host for Apache
(a)第一次安裝設定時...記得先到 /etc/httpd/conf.d/ssl.conf
把 VirtualHost 的預設選項都 mark 起來囉~才不會抓到這邊的設定
QUOTE:
#<VirtualHost _default_:443>
.
.中間的選項全部mark起來
.
#</VirtualHost>
(b) include 外部檔案
# vi /etc/httpd/conf/httpd.conf
在裡面加個ssl.conf 的 include 檔
QUOTE:
#
# Load config files from the config directory "/etc/httpd/conf.d".
#
Include conf.d/*.conf
Include conf/ssl.conf
(c)然後新增一個 ssl.conf 之後就可以把 SSL 的網站都集中在一起
# vi /etc/httpd/conf/ssl.conf
QUOTE:
NameVirtualHost 11.22.33.44:443
#----------------------------------------------------
# adj.com.tw
#----------------------------------------------------
<VirtualHost 11.22.33.44:443>
ServerName www.adj.com.tw
DocumentRoot /var/www/html/adj/
<Directory "/var/www/html/adj/">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
SSLEngine on
SSLCertificateKeyFile /etc/ssl/adj/server.key
SSLCertificateFile /etc/ssl/adj/adj_com_tw.crt
SSLCertificateChainFile /etc/ssl/adj/adj_com_tw.ca-bundle
</VirtualHost>
最後將 Apache 重啟就可以看到SSL認證的網站囉~~