撥云見日:企業網絡準入策略小議
近來有機會接觸了一些企業網絡準入的項目,感觸頗深。針對這個復雜的市場有一點自己的心得,沒有結論,意在拋磚引玉,為大家的思考和討論鋪路。
本文只關注企業用戶,而且是具備一定用戶規模的國內企業用戶,不是學校、不是小區寬帶;其次,范圍是用戶對網絡資源的訪問,包括有線、無線、VPN等等。之所以要這么規定一下,是為了后面的討論更準確、更有針對性,企業用戶有自己的特點和需求,適合其它環境的思路在企業網中很可能玩兒不轉,任何一種技術方案只有在立足的環境中才存在討論的意義。
一. 緣起
網絡準入是一個由來已久的話題,但一直以來并不是IT安全的重點,直到近年來,才逐漸成為炙手可熱的話題。無線接入、智能移動終端和云計算的興起共同催生了這一波熱潮。
隨著云計算的不斷深入,越來越多的企業業務系統由傳統的C/S架構向B/S架構遷移,以往訪問后臺數據需要安裝專用軟件,IT部門控制客戶端軟件的許可發放,就能夠大致控制訪問用戶的范圍。而在B/S架構中,用戶只需要一個WEB瀏覽器即可登錄系統,加上智能手機、智能平板和WiFi的流行,以往的限制條件消失了,任何人手中的設備都成了可能訪問后臺數據庫的平臺,IT部門突然一下子失去了對局面的控制,因此,對網絡的準入控制被重新提上日程。只有合法的用戶才能夠接入網絡,通過對接入用戶的控制,IT部門開始試圖重新奪回對數據訪問的控制權。
二. 幾種思路
控制用戶接入網絡的技術伴隨網絡本身的誕生和發展已經衍生出五花八門的派別,每種方式都有自己的特點和適用場景,很難說那種方式在技術和最終效果上技高一籌取得了絕對的領先地位。
在新形勢下,接入技術本身并沒有發生翻天覆地的變化,其演進更多地是從滿足需求的前提出發,將現有的方式進行重新的優化、組合,從而推出一個滿足新需求的解決方案。在實際環境中常見的認證方式包括二層認證、三層認證和基于客戶端方式的認證。
二層認證
二層認證就是用戶在獲得IP地址之前必須通過的認證,大型企業往往利用DHCP進行IP地址分發,用戶在接入網絡之初同網絡側通過二層連接進行認證數據的交互,只有成功通過認證才能向DHCP服務器申請IP地址,從而收發數據。
二層認證的代表實現方式就是802.1X。802.1X是IEEE 802.1協議集的一部分,定義了EAP在以太網環境中的實現方式,而EAP是IETF在RFC3748中制定的在數據鏈路層中進行認證行為的一種機制,以滿足在不同的二層環境下進行統一、一致的認證的需求。這個邏輯連起來就是,IETF首先制定了在數據鏈路層也就是二層上進行驗證的EAP機制,然后IEEE給出了EAP在以太網環境中的運行方式,這個方式就是大家熟知的802.1X。現在,我們可以回答兩個常常被混淆的問題:
1)802.1X是802.11的子集嗎?
No,802.1X不但可以工作在無線環境中,同樣能夠工作在有線環境中,并且在WiFi被大規模部署之前,802.1X就已經是有線網絡中一種重要的認證方式。
2)EAP是802.1X專用的認證方式嗎?
No,理論上EAP可以被運用在任何一種數據鏈路層之上,例如PPP或以太。
基于802.1X的二層認證基本工作方式如下圖所示:
上圖中的三個元素,分別是客戶端(Supplicant)、認證方(Authenticator)和認證服務器(Authentication Server)。客戶端就是支持802.1X功能的終端設備,如筆記本、智能手機;認證方是將客戶端接入網絡的接入設備,在有線網絡中是接入交換機,無線網絡中是無線AP和控制器,在VPN連接中,認證方則是VPN服務器,認證方負責接受客戶端的認證請求,但本身并沒有處理這些請求的能力,它會將獲得的信息轉發到認證服務器,由認證服務器辨別客戶端的合法性;認證服務器通常是集中部署在網絡內的一臺安全設備,當收到轉發來的用戶請求后,認證服務器將請求信息同已有的用戶資料做比對,并將結果返還給認證方,如用戶合法,認證方便會將客戶端接入網絡,否則予以屏蔽,或放入特殊VLAN,至此,一個標準的二層認證流程才結束。
在這個過程中,認證方和認證服務器之間通過特定的協議通信,目前采用最普遍的兩個協議是RADIUS和TACACS+,總體說來,TACACS+的穩定性、安全性和靈活性更高,但TACACS+是思科私有協議,因此,在一般的用戶接入場合,RADIUS更加常見。
通過多年的發展,802.1X+RADIUS的實現方式已經發展成為一個功能非常強大的準入方案,RADIUS豐富的字段使得認證可以不僅僅針對用戶名與密碼,還可以根據接入設備的MAC地址、IP地址、交換機端口等信息來進行認證。
之所以解釋這么多二層認證的細節,是想說明基于802.1X的二層接入是一個非常成熟的方案,市場接受程度很高,不管認證方還是認證服務器,都不難找到多家廠商的產品,客戶端的支持方面也不是問題,主流的桌面操作系統和智能手機終端大都支持802.1X。用戶的接受與市場的成熟,對于安全策略的長期部署是非常重要的,802.1X在這方面的優勢異常明顯,其他方案不一定有這么幸運。
總體說來,802.1X的二層模式具備了以下三個特點:
1)完全公開的架構,每一個部分都有相應的國際標準,便于企業客戶自由選擇軟硬件、搭建一個靈活的安全架構,不會受制于特定廠家;
2)成熟的技術標準,802.1X已經部署在全球成千上萬的園區網,本身是一個非常成熟的技術,實施風險和成本低;
3)包含完善的認證和授權機制,能夠滿足企業用戶的大部分需求。
如果仔細揣摩這三點,你會發現802.1X同以太網非常相似–公開、成熟、實用,這其實就是企業客戶的核心需求,企業的IT部門在做任何選擇時首先考慮的都是技術的可延續性以及成熟性,如果某項技術大家都在用,本身功能又實現得七七八八,這個方案就是最優方案,華而不實的新鮮玩意反而難以得到企業用戶的垂青。#p#
三層認證
說了這么多,傳統的二層方案是個完美的方案了?如果放在五年前,也許是這樣,但隨著網絡的發展,接入環境越來越復雜,802.1X在某些方面漸漸顯得力不從心了。例如,某些企業需要為訪客提供無線網絡接入,但不可能每次有來訪人員時臨時在筆記本電腦上配置802.1X策略,這就需要一個快捷的辦法將沒有經過認證的第三方設備接到網絡中。
三層認證就在這種背景下應運而生了。
三層認證又被稱為WEB認證,顧名思義,認證過程是通過一個WEB頁面完成的。當有新的設備需要接入時,網絡設備不會默認屏蔽它,而僅僅為其提供一些基本數據的轉發能力,如DHCP、DNS等,客戶端可以通過DHCP拿到地址,但他還沒有辦法獲得完全的網絡權限,比如上個QQ啥的;此時,用戶需要發起一個HTTP請求(在瀏覽器中訪問任意一個WEB頁面),交換機或者無線控制器從中截取到用戶的這個HTTP請求,并將用戶重定向到一個預先寫好的認證頁面上(這個頁面可以存放在任意一個IP可達的WEB服務器上),用戶在在這個頁面使用用戶名/密碼完成認證,從而獲得全面的網絡訪問權限。
同傳統的二層認證比較,WEB最大區別就是去除了對客戶端的要求,用戶端設備無需進行配置,只要有一個瀏覽器就OK了,而這個條件基本上所有的個人設備都能夠滿足。因此,近年來WEB認證的發展非常快,特別是在無線、大型園區等環境中得到了大規模的部署,而主流網絡廠家也紛紛將WEB認證作為無線控制器和接入交換機的一項默認內置功能。
三層認證憑借其自身的特點獲得了市場的認可,但在現階段畢竟還是一個補充方案,難以作為企業環境的主力認證方式。首先,每次上網通過WEB頁面登錄的方式對大多數企業用戶來說都“土”了一點兒,而且WEB認證檢查的內容也比較簡單,大部分時候僅有用戶名和密碼,在高安全級別的環境中仍顯單薄。
客戶端方式
除了三層認證和二層認證,還有一種很有意思的思路,即通過客戶端對接入用戶進行認證。這里所說的客戶端是指安裝在用戶設備的上的軟件,其表現形式五花八門,以殺毒軟件起家的廠商會做成殺軟的功能子集、以桌面控制立足的廠家會做成控制軟件的一部分、而傳統的網絡設備廠家則會將這部分功能集成到VPN\無線接入的用戶端軟件中。不管是什么路子,這類軟件一般只干兩件事情:1)從操作系統接手802.1X的認證流程;2)對操作系統的健康狀況做檢查,如是否安裝了最新版補丁、殺毒軟件是否更新到最新病毒庫等等,若操作系統處于可靠的狀態則允許接入網絡,否則拒絕。
這種方式有一點像一個加強版的360軟件,它不但幫你檢查身體,還基于你的身體狀況決定你是否能獲得一張游泳證。由于健康狀態的檢查內容包含了系統的補丁安裝、應用軟件安裝、殺毒軟件更新等情況,因此,必須在客戶的設備上安裝一個系統權限非常高的客戶端軟件才能完成所有的檢查工作。
很明顯,客戶端方式完全是從企業IT部門的視角出發,對最終用戶采取更多的限制。通常,這種方式都會和廠家進行緊密的綁定,通過在每臺終端設備上安裝客戶端,用戶的IT流程和安全規范也緊密地同廠家能夠提供的功能選項結合在一起。#p#
三種方式的對比表格
三. 延伸思考
用戶需要什么樣的方案?
企業網的準入是一項非常特殊的技術,最終用戶的體驗是決定一個項目成敗的關鍵。有的方案從技術上評估非常完美,但實施之后發現最終用戶根本接受不了,過多挑戰用戶的使用習慣,最終被行政層面廢掉。
有的客戶在被廠家忽悠過后決定在整個公司范圍內推廣嚴格的網絡準入控制,在所有PC終端上安裝安全客戶端軟件。結果,客戶端裝上后頻頻告警,因為不少人在自己的電腦上安裝的下載軟件強行修改了系統的下載線程限制,還有的員工干脆卸載了原有殺毒軟件,自己重新安裝了互聯網上的免費殺軟。這些被折騰過的電腦,在安全客戶端內置的嚴格的策略規則前統統被亮了紅燈,上線測試第一周就有不少員工無法正常接入網絡。結果IT部門啥都顧不上,成天到各處救火,最后這個系統被大領導一句話下了馬。
即使是最通行的802.1X方式,也不一定適應每個地方的水土。當一臺配置了802.1X接入的PC機剛開機時需要一定時間同網絡側交互認證信息,如果用戶接受程度不高,很可能會認為網絡接入效率低,從而投訴,給IT部門造成很大壓力。
因此,對于最用用戶來說,最好的方案就是用戶體驗最友好的方案,只有對原有使用流程影響最小的技術方案才能得到上下一致的支持,從而推動最終的全面部署。另一方面,業務部門對準入的支持也至關重要。
IT部門需要什么樣的方案
對于IT部門來說,網絡準入是一個非常籠統、模糊的概念,什么樣的用戶能夠接入網絡?什么樣的安全檢查才是足夠安全?同企業的其他安全策略該如何整合?這些問題在業界都沒有統一的結論,而且安全防護是一場沒有終點的拉鋸戰,IT部門不可能無限制地投入資源去追求極致的安全級別。
準入控制的實施過程是非常復雜的,是一個驚動全局的工程,因此,IT部門在上馬準入時無不希望是一個循序漸進的過程,先從最基本的二層準入或三層準入開始,逐漸推進到設備健康狀態檢查等復雜的機制,這在準入項目的實施過程中尤其重要。
其次,準入控制的最終對象是企業內部的人員,而大部分企業往往已經具備了用戶數據庫,且用戶的合法性以此數據庫的實時數據為準,比如供人力部門使用的微軟Active Directory。新的準入系統要能夠方便地與原有數據庫集成,特別是將準入系統內復雜的策略直接綁定到已有的用戶帳號上。例如有的用戶希望對PC機的MAC地址進行認證,而在原有的Active Directory內是沒有MAC地址這一個字段的,且這個數據庫的管理權不一定在IT部門手里,那么新添加的MAC地址信息如何同原有的用戶帳號綁定,并實現帳號信息的定期自動更新就是一個挑戰。
最后,準入控制系統一定要有一個清晰、簡潔的管理流程和界面。
什么是完美的產品?
綜上所述,一個優秀的準入控制技術方案需要具備以下特點:
1)可延續性
所謂可延續性是指采用的技術方案要具有長期的發展路線和支持力度,或者是被廣泛應用的公開標準,或者是強大廠商的主流產品。準入機制一旦部署將延伸到網絡的各個角落,并同企業今后的安全策略緊密結合起來,如果基礎平臺不穩定,后期變更將是遷一發動全局的麻煩事;
2)可用性
準入策略的順利實施一定是以最終用戶的接受為基礎,因此,準入系統對最終用戶的使用流程不能有太大的影響,要提供一個足夠友好的用戶體驗;
3)靈活性
準入策略的內涵非常廣泛,企業IT部門在實施時一定是一個逐漸完善的過程,為了應對這種需求,準入系統要具備一定靈活性,各個功能模塊的實現不能有沖突;
4)整合性
準入系統要能夠方便地同主流的企業數據庫系統整合,并將安全策略綁定到相應的用戶帳號之上,實現自動化的用戶數據更新。
虛擬桌面的機會
網絡環境的變化,帶來的是訪問方式的變化。一方面,網絡準入技術開始快速發展,另一方面,很多人開始詢問“是否一定需要在網絡邊界做這么嚴格的控制,還有沒有其他方法?”。
也許是有的。
虛擬桌面在企業內部的應用開始逐漸鋪開,員工對數據庫的訪問全部通過虛擬桌面完成,而硬件本身可能是一個簡單的瘦客戶端,不具備復雜的功能。在企業網絡內部對虛擬桌面流量設置高優先級QoS策略,對其余流量以及網絡接入采取從簡的思路,在未來,這并非不會是一種解決方案。
總之,隨著云計算、智能手機、WiFi等新應用的快速發展,傳統的企業網絡不得不開始主動變化,這種變化將如何發生,往哪里去,得出怎樣的結果,現在都還不明晰,但有一點是明確的,那就是有意企業數據網絡和安全的廠家現在就必須開始重視這股潮流,未雨綢繆,才能從容應對未來的新一代企業網絡的發展。
【編輯推薦】