30分鐘讓網站支持HTTPS

對於一個良好和安全的網絡——而且也爲了更快的性能,新的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。安全

2016061301.jpg

 

選擇好了以後,你就能夠獲得:服務器

 

  • 針對網站的SSL證書網絡

  • 證書私鑰性能

  • CA /鏈證書                  網站

 

安裝證書htm

下面,針對你的託管服務提供商以及你的服務器類型,或者若是你是本身託管的話,有不一樣的方法。就我而言,我對這個網站使用Media Temple,而且它們在Twitter上很是有用,並且它們的在線支持聊天會指點我正確的方向。

 

全部我須要作的是:

 

  1. 進入賬戶中心。正如Media Temple有一個,我敢確定它適用於大部分的託管選項。

  2. 選擇導入SSL證書,添加我以前獲得的SSL證書,私鑰,CA /鏈證書以前。

  3. 成功!

 

好了嗎,沒有。第3步是騙人的。當我在第2步中進入個人密鑰時,我會獲得一個錯誤說個人私鑰是無效的。我慌了一下,而後開始去找問題出在什麼地方。Media Temple支持指引我到Let’s Encrypt論壇上的「Error adding cert, Invalid private key」討論中。

 

原來須要轉換私鑰到RSA格式,使用下面的代碼行就能夠在終端中快速轉換:

2016061302.jpg

固然要相應地改變上面的域和路徑。而後複製輸出和提交/另存爲私鑰。

 

更多高級設置

 

若是你正在某個地方運行你本身的服務器或虛擬機,或者剛好沒有針對主機的簡單賬戶中心選擇,那麼我推薦你閱讀下面這些文章考慮手動安裝:

 

  • 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 文件以確保:

2016061303.jpg

一塊兒試試添加HTTPS到你的網站吧!你值得擁有。

原文連接:http://www.colotu.com/html/gcs/125.html

相關文章
相關標籤/搜索