您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關如何分析CDN HTTPS安全加速基本概念、解決方案及優化實踐,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
大家都知道,HTTP 本身是明文傳輸的,沒有經過任何安全處理,網站HTTPS解決方案通過在HTTP協議之上引入證書服務,完美解決網站的安全問題。
需求推進技術革命,互聯網是如此誕生,HTTPS也是這樣。人們有在互聯網上分享和瀏覽信息的需求,所以信息的傳輸技術由此誕生并不斷升級。后來,人們位互聯網上的信息傳輸制定了一些準則,也就是網絡協議HTTP。從最早1991年發布的HTTP/0.9版本,直到最新的HTTP/2,傳輸速度也在不斷升級。下面,我們來看下關于HTTP都有哪些基本的概念。
HTTP是什么?
HTTP是互聯網上應用最為廣泛的一種網絡協議,是一個客戶端和服務器端請求和應答的標準(TCP),用于從WWW服務器傳輸超文本到本地瀏覽器的傳輸協議,它可以使瀏覽器更加高效,使網絡傳輸減少。
HTTPS是什么?
HTTPS是安全超文本傳輸協議,英文全稱:Hyper Text Transfer Protocol over Secure Socket Layer,它是以安全為目標的HTTP通道,簡單講是HTTP的安全版。它的工作原理是將HTTP用SSL/TLS協議進行封裝,主要作用可以分為兩種:一種是建立一個信息安全通道,來保證數據傳輸的安全;另一種就是確認網站的真實性。
SSL是什么?
SSL是Secure Sockets Layer的縮寫,它是一個安全套接層。架構于TCP之上的安全通訊協定,它可以有效協助Internet應用軟件提升通訊時的資料完整性以及安全性。后來,標準化之后的SSL名稱改為 TLS(是“Transport Layer Security”的縮寫),中文叫做“傳輸層安全協議”。很多相關的文章都把這兩者并列稱呼(SSL/TLS),因為這兩者可以視作同一個東西的不同階段。
什么是握手?
在加密傳輸之前,客戶端和服務器首先必須建立連接和交換參數,校驗通過之后進行協商密鑰和傳輸數據,這個過程叫做握手(handshake)。
什么是加密和解密?
“加密”的過程,就是把“明文”變成“密文”的過程;反之,“解密”的過程,就是把“密文”變為“明文”。在這兩個過程中,都需要一個關鍵的東西——叫做“密鑰”——來參與數學運算。
總結:簡單來說,HTTPS就是HTTP的安全增強版本,是HTTP協議與SSL加密協議的結合,所以也被稱為HTTP over SSL。
HTTPS概念其實已經提出來好多年了,但直到近兩年,才開始被主流應用。所以,我們在給大家介紹CDN HTTPS解決方案之前,要先搞清楚,為什么要選擇使用HTTPS來替換掉HTTP。
第一,HTTPS是更具安全性的傳輸協議,可以防止網站被篡改和劫持,這是最基本的功能。Chrome和Firefox未來將HTTP標記為不安全的協議。
第二,Apple ATS,要求IOS的 9.0或10.0的版本的APP使用HTTPS傳輸。
第三,主流的瀏覽器已經支持基于TLS的HTTP/2。
第四,Google會給使用了HTTPS的網站進行搜索排名的加權,在鼓勵大家使用。
第五,美英政府的網站官網都已經轉向HTTPS。
我們可以看到,從用戶需求到整個行業大趨勢,都是在推送HTTPS的應用。那么阿里云CDN HTTPS的解決方案是怎樣的呢?
HTTPS能夠有效的防止網站內容被篡改被劫持,加強了網站的安全性。所以在阿里云CDN內容分發網絡中,我們已經引入HTTPS安全加速解決方案。
舉個例子,在一個具有兩級節點的CDN分發架構中,從Client到L1節點再到L2,再回源到源站,一共具有三段TCP連接,每一段都支持了HTTPS。在這中間,在第一段Client到L1節點的時候,需要用戶自己的證書。L1到L2節點的時候使用的是我們的證書,保證了數據加密。回到源站的時候,如果用戶也希望用HTTPS,我們也可以通過配置實現整個鏈路的HTTPS,充分保證了網站內容的防篡改、防劫持。
以上方案,用戶需要將證書和私鑰傳輸到CDN的證書管理中心來去處理HTTPS的請求。同時,我們還有更進一步的方案。對于對自己的證書和私鑰敏感性很高的用戶,希望將私鑰保存在自己的服務器上,減少泄露的風險。針對這種情況,我們推出了無私鑰解決方案。首先,用戶搭建私鑰服務器,當CDN和Client之間產生了HTTPS握手的時候,CDN處理的時候會提取SNI,域名配置拿到后,向私鑰服務器(KeyServer)請求簽名或者解密預主密鑰。這個方案,我們其實是把私鑰的部分剝離出來,通過KeyServer來實現。目前,阿里云已經實現了自己的KeyServer,用戶只需要在自己的私鑰服務器上安裝一下KeyServer的rpm和配置一下即可。
阿里云CDN 提供HTTPS安全加速方案,僅需開啟安全加速模式后上傳加速域名證書/私鑰,實現全網數據加密傳輸功能。
?支持HTTP/2功能
HTTP/2是對HTTP/1.x進行加強,阿里云CDN 現已全平臺支持 HTTP/2,使用阿里云 HTTPS 加速服務的域名,即可免費享受 HTTP/2服務。HTTP/2是一個二進制的協議,支持頭部壓縮的功能,多路復用以及服務器推送,能夠有效提升傳輸效率。
?豐富的HTTPS配置項
阿里云CDN HTTPS可以以實現動態設置。舉個例子,在實踐中發現有些用戶的APP對HTTP/2協議實現的不夠完美,一種解法就是用戶修改自己的APP,把問題修復。另一種解法就是CDN通過配置把APP的HTTP/2協議給關掉,走HTTP/1.1協議,給用戶足夠的選擇。
?KeyServer無私鑰解決方案
前文提到,對于對自己證書和私鑰敏感度很高的用戶,可保障證書和私鑰安全性,支持自建KeyServer,提供KeyServer解決方案和源碼。
?安全功能
HTTPS協議是由HTTP+SSL協議組合構建的需身份認證的加密傳輸網絡協議,可全方位保障安全性,防止敏感信息泄露,防止傳輸過程中流量被劫持,篡改,確保數據的完整性。
?動態證書
支持動態證書,一個用戶,如果想使用HTTPS,在上傳完證書和私鑰之后,全網1分鐘就可以生效了。提供多規格證書,支持免費證書、證書過期提醒、證書屬性預覽。并且與阿里云證書中心CAS聯動,可以申請免費證書。
?靈活付費方式
有后付費和預付費兩種形式,后付費HTTPS 0.05元/萬次請求,預付費請求包也有450元,4000元,35000元各種規格,規格為1億次、10億次、100億次(雙十一折扣)。
HTTPS相對于HTTP傳輸具有如此多的優勢,那HTTPS在性能方面是否也同樣超越HTTP呢?我們知道,阿里云CDN HTTPS可以減少回源率,提升通信效率,提高驗證效率,減少跳轉耗時,這些是通過哪些技術來實現優化的呢?下面我們來看看CDN HTTPS的優化實踐。
首先,我們知道,阻礙HTTPS的性能提升的關鍵因素是傳輸變慢,因為TCP連接握手了之后,還要進行SSL的握手,多層的數據加解密以及證書傳輸。
那么HTTPS一定會變慢嗎?
下圖,是淘寶和天貓使用了HTTPS后的一些性能提升數據。其實我們可以看到,淘寶首頁和搜索、聚劃算、天貓等頁面中,性能都是正向提升的。所以接下來,我們看看CDN HTTPS在性能方面到底做了哪些優化?
第一,我們知道,SSL在握手階段是非常消耗資源的,SSL本身也支持了session ID和session ticket這兩種方式,第一種session ID是在sever端存儲會話ID,client端下次請求時候如果攜帶了同樣的ID,就可以恢復以前的會話,省去了大量的握手環節。但是一個client訪問不同sever的時候,存在ID共享的問題,實現起來比較復雜。第二種session ticket可以把會話的信息發給client,client去保存信息,不會依賴于某個sever了。
第二,我們需要把HTTP/2協議用起來,多路復用和頭部壓縮都是可以提升傳輸效率的。
第三,域名合并,對于主站和用戶域名比較多的情況,我們就傾向于把域名做合并,合并成一個泛域名中做處理。這樣可以減少SSL握手,提升重用,進而提升效率。
第四,協議棧優化,這是各大CDN公司都在做的功能。傳統協議棧是逐漸的試探并且越來越多發送數據的過程,初始化窗口會比較小。我們現在會針對性進行調整,并且提升快速重傳的效率。
第五,優先算法,優先預制ECDSA的算法,在產生相同加密強度的時候,數據量更少。
以上,都是為了更高效的傳輸和減少數據量,CDN HTTPS所進行的一些優化實踐。
另外,在峰值的應對上,除了自身的HTTPS優化,我們還需要在Cache系統上進行預熱,全部都加載到一級節點,就不存在回源的問題了。另外,調度系統中,我們業務系統要給出預判峰值,同時CDN需要做熱點地區的統計,與臨近非熱點地區分攤,依據節點能力按比例進行分配。當然,針對峰值情況,我們也需要做限流。
說了這么多HTTPS的好處,那用戶可以如何更好的使用HTTPS呢?
第一,證書的申請,根據域名的類型來申請,阿里云也提供證書服務,可簽發Symantec、CFCA、GeoTrust證書。證書的分類有三種:DV、OV和EV。DV是指基于域名級別的證書,機構只需要驗證域名的所有者,安全級別比較低。OV和EV是企業級別證書,除了驗證域名所有者還要驗證企業信息。EV的證書,在訪問時能夠顯示公司名字。
第二,源站改造,包括頁面資源的改造,TLS版本選擇1.0以上,關于session ID和session ticket的優化配置,證書上支持SHA256等工作。另外,實際應用中,有一個問題,當用戶輸入域名,我們可以通過配置強制HTTPS訪問。
關于如何分析CDN HTTPS安全加速基本概念、解決方案及優化實踐就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。