在完成跟 GoDaddy 申請憑證之後,Godaddy 網站上可以取得兩個 CRT 檔
我這邊拿到的,一個是命名很像亂碼的 fe461f1ba212ab7.crt 檔案,另一個則是 gd_bundle-g2-g1.crt。
fe461f1ba212ab7.crt 這個檔案是 SSL Certificate File,而 gd_bundle-g2-g1.crt 則是 SSL Certificate Chain File
加上申請憑證前,我們需要自行先產生的金鑰,假設檔名是 my-private-key.key
總共有三個檔案,就可以完成 Apache 2.4 的 HTTPS 設定了。
安裝 Apache2
因為這裡假設是一個全新的 Apache 2.4,因此先在一個全新的 Ubuntu 14.04 上安裝 Apache 2.4。
apt-get update && apt-get install -y apache2
設定 Apache2 的 SSL
首先先編輯 /etc/apache2/sites-available/default-ssl.conf 這個檔案,這是 Apache2 上預設的 SSL 網站的設定
依序修改以下三個參數,把金鑰和憑證檔的位置寫上去(假設檔案都放在 /home/ubuntu 資料夾內)。
SSLCertificateFile /home/ubuntu/fe461f1ba212ab7.crt SSLCertificateKeyFile /home/ubuntu/my-private-key.key … SSLCertificateChainFile /home/ubuntu/gd_bundle-g2-g1.crt
接著要執行以下的指令啟用 Apache2 的 SSL。
第一行是設定讓 Apache2 啟用並讀取 SSL 網站的設定
第二行則是啟用 Apache2 的 SSL 模組,讓 Apache2 支援 SSL。
ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled a2enmod ssl
如果金鑰並沒有用密碼加密的話,到這步就已經設定完成了。
設定金鑰的密碼
如果金鑰是有密碼的話,需要適當設定密碼,讓 Apache2 有辦法正確解開金鑰。
Apache2 預設的方法是把密碼寫在 /usr/share/apache2/ask-for-passphrase 這個檔案上
但我比較傾向每次啟動 Apache2 時,直接詢問我,讓我手動輸入密碼。
要達到這個目標,就要先去修改 /etc/apache2/mods-enabled/ssl.conf 這個檔案
把原本有的 SSLPassPhraseDialog 那行改成這樣:
#SSLPassPhraseDialog exec:/usr/share/apache2/ask-for-passphrase SSLPassPhraseDialog builtin
重新啟動 Apache2
service apache2 restart
沒有留言:
張貼留言