對於一個良好和安全的網絡——而且也爲了更快的性能,新的API網絡例如Service Workers,更佳的搜索排名,還有——在你的網站上使用HTTPS是關鍵。這裏我會指導你們如何輕鬆搞定。css
我不是安全專家也不是搞服務器的,因此這對我而言也是一種有趣的經歷,而記錄這個過程可讓其餘任何人也能很快地作到這些。包括一些暫時的停頓時間,我總共只花了20-30分鐘。html
得到證書web
有一些官方出售的證書,但從個人經驗來看,最容易上手是Let’s Encrypt。它也是免費的,並且背後有一些主要的贊助商,例如Mozilla,Chrome,Akamai和Cisco。瀏覽器
經過Let’s Encrypt爲你的網站生成證書的最快方法是使用SSL For Free。而後,你即可以選擇Automatic FTP Verification或者Manual Verification。安全
選擇好了以後,你就能夠獲得:服務器
針對網站的SSL證書網絡
證書私鑰性能
CA /鏈證書 網站
安裝證書htm
下面,針對你的託管服務提供商以及你的服務器類型,或者若是你是本身託管的話,有不一樣的方法。就我而言,我對這個網站使用Media Temple,而且它們在Twitter上很是有用,並且它們的在線支持聊天會指點我正確的方向。
全部我須要作的是:
進入賬戶中心。正如Media Temple有一個,我敢確定它適用於大部分的託管選項。
選擇導入SSL證書,添加我以前獲得的SSL證書,私鑰,CA /鏈證書以前。
成功!
好了嗎,沒有。第3步是騙人的。當我在第2步中進入個人密鑰時,我會獲得一個錯誤說個人私鑰是無效的。我慌了一下,而後開始去找問題出在什麼地方。Media Temple支持指引我到Let’s Encrypt論壇上的「Error adding cert, Invalid private key」討論中。
原來須要轉換私鑰到RSA格式,使用下面的代碼行就能夠在終端中快速轉換:
固然要相應地改變上面的域和路徑。而後複製輸出和提交/另存爲私鑰。
更多高級設置
若是你正在某個地方運行你本身的服務器或虛擬機,或者剛好沒有針對主機的簡單賬戶中心選擇,那麼我推薦你閱讀下面這些文章考慮手動安裝:
Tim Kadlec的《Taking Let’s Encrypt for a Spin》
Jeremy Keith的《Switching to https》
驗證證書安裝
安裝好了以後,驗證證書的一個簡單方法是使用SSL Checker以發現任何潛在的問題。而後,當你使用https://訪問你的網站的時候,全部一切都應該顯示良好和安全。然而在現實生活中不多是這樣的狀況。要當心混合的內容,即部份內容經過https://提供服務,而一些內容使用的則是http://。使用http://的內容將不顯示。
注意:不要使用相對路徑/協議相關的URL,即/css/style.css。它會對可能的端點攻擊開放,並且,從http://你能夠隨時請求https://資源,反之則不能。
一旦確保安全以後,你應該能夠在全部的web瀏覽器中看到掛鎖圖標,在地址欄的URL旁邊。若是沒有顯示,那麼可使用偉大的服務Why No Padlock? 來找出可能的問題。我敢打賭,你的1%的時間用來改變內部引用到https://,而後剩下99%的時間用來搞清楚有關第三方的內容,以及如何安全地包含這些內容。
強制SSL / HTTPS用於全部請求
一旦網站安全並在能夠平穩運行HTTPS以後,沒有理由不確保全部請求都經過SSL。
正如使用.htaccess和mod_rewrite的Force SSL/https中概述的那樣,下面有一個代碼片斷能夠用來添加.htaccess 文件以確保:
一塊兒試試添加HTTPS到你的網站吧!你值得擁有。