在傳送極度機密資料時,都應該使用https協定,這也是銀行會在提供線上刷卡時必須使用https協定讓使用者刷卡的原因。本討論區也是使用了 https協定,主要有兩個理由,一是筆者的帳號/密碼都是一樣地,如果你過濾出這個ops討論區中我所使用的帳號/密碼,那也知道我所有管理機器的密碼了,二是我不想讓各地的proxy server快取這個ops討論區的內容,這個討論區我希望是小眾的、專屬於會員的。
https的使用是很簡單,像ssh的tips一樣,先把公私錀生出來,然後放對位置,再重新啟動你的網頁伺服器即可啦。
首先生成公私key,
# openssl req -new > your_define.csr
過程中會要求你輸入your_define.csr的密碼,先隨便輸入4個字以上的密碼,這個your_define.csr只是設定過程中的產物,最後的成品與它無關,所以它的密碼也就隨便設吧!接著輸入你的國家代碼、州名(省名)、縣市名、組識名、單位名、主機名、系統管理員email等。最後的兩個項目,我也不知道該輸入什麼,但是沒輸也沒有關係。
# openssl rsa -in privkey.pem -out your_define.key
輸入剛設定your_define.csr的密碼來產生your_defice.key
# openssl x509 -in your_define.csr -out your_define.crt -req -signkey your_define.key -days 3560
-days 3650表這個公私錀會在10年才過期。
到這裡表示公私錀已成功完成了,接下來更改你的/etc/httpd/conf.d/ssl.conf。
......
SSLCertificateFile /where_you_stored/your_define.crt
SSLCertificateKeyFile /where_you_stored/your_define.key
......
......
這個檔在你安裝mod_ssl.xxx.rpm後才會出現。
最後重新啟動你的apache就可以了。
注意:使用apache的老手可能會很習慣一個ip設很多虛擬網站,但是在https上,因為ssl layer比http layer還要早溝通完畢,所以一個ip只能使用一對公私錀,這在你有兩個以上的虛擬網站時,如果你的公私錀名字定為a.hoamon.info,那當使用者連到b.hoamon.info時,會出現「這個憑證名字為a.hoamon.info,但你所要連線的網站是b.hoamon.info,有可能是有人要截斷你與伺服器之間的通訊,你確定要繼續連線嗎?」
這個問題目前是無解的。只有多設幾個ip才行。
沒有留言:
張貼留言
注意:只有此網誌的成員可以留言。