


扁平網絡(Flat network)是當前業界的熱門話題。由于其可以使設備和端點之間實現更直接的通信,因此無論是速度還是性能都要勝過傳統分層網絡。同時,扁平網絡還適用于高度虛擬化的環境,并為虛擬化技術所特有的功能實現(如虛擬機遷移)提供了便利。
不過,扁平網絡概念收到熱捧的同時,也帶來了一個安全難題:如何兼顧網絡的高性能和低風險。要知道,扁平網絡去除了三層網絡分割界限。而長期以來,我們一直使用這種分割界限來區隔流量并提供深層防御機制。
如今大多數企業網絡都被劃分成了眾多的虛擬局域網(VLAN),每個VLAN代表一個子網。建立VLAN的目的是打破廣播域(broadcast domain),對設備進行邏輯分組,并且方便在不同子網之間實施各不相同的訪問控制機制。這些內容對網管員是非常有用的。現在已經有很多方法可以確定設備與VLAN的歸屬關系:既可以按照類型來分隔設備,把所有服務器放到一個或多個VLAN中,也可以按照樓層或者建筑的物理位置來分隔設備。
除了劃定不同訪問機制外,把設備分隔到不同子網/VLAN中的另一個好處是,這為網絡管理員提供了上下文線索,以便了解網絡上系統的運行狀況。比如,網管員可以將某個VLAN劃分為專門為無線連接使用。這種歸類有助于排除故障、優化網絡及其他常見任務。此外,作為兩種最常見的網絡過濾控制機制,基本的防火墻和訪問控制列表(ACL)通常 基于IP地址等三層網絡參數。數據流從某個IP地址或某組地址發來,傳送到某個IP地址或某組地址去。安全策略和系統需求規定了過濾規則,而這些規則則負責對數據流進行允許或禁止通過操作。
以上描述的是傳統分層網絡的優勢。不過,由于消除了子網的劃定,因此在扁平網絡中,我們會把更多設備放在同一個子網上,這就等于網管員失去了一個安全層劃分機制。
在本文中,我們要談到的是,IT部門其實可以采用二層控制機制,對網絡流量保持有效的分隔,在物理網絡和依賴虛擬網絡接口的虛擬化環境中都能做到這點。這些控制機制包括:VLAN訪問控制列表、私有虛擬局域網(PVLAN)和二層防火墻。此外,通過使用端口配置文件和可運用于虛擬機的安全區也可以達到風險控制的目的。
VACL很有用
改用更扁平的網絡架構也許能夠提高企業網絡的速度,但是由于其涉及一種全然不同的設計策略,因此在很多方面同以往相比都是顛覆性的。比如,VLAN不會消失,也不會從多層體系結構中完全移除,但更多設備都會在同一個子網中運行,VLAN的使用將受到限制。比如在三層網絡模型中,你可能會把Web服務器和數據庫系統放在兩個不同的子網中,這兩個子網之間的網絡流量經由防火墻來傳送。而在扁平網絡的二層模型中,可能我們需要把所有主機都放在一個子網上。不過,由于實施了控制機制,在扁平網絡中,只有被許可的流量才能經過每個系統來傳送。
可供使用的第一個控制機制是VLAN訪問控制列表(VACL)。VACL同傳統的三層/四層ACL沒有太大區別,不過在扁平網絡中,其還可以用在二層的物理交換/路由設備上。這就意味著,VACL可以過濾同一個VLAN上多個設備之間橋接的流量,而不一定只被用于進出VLAN的路由流量。IT部門可以定義VACL來阻止特定類型的流量(UDP、TCP等)或端口,VACL就能有目的性地阻止進出各個主機的流量。根據網管員的要求不同,VACL可以與特定的接口聯系起來,或者更廣泛地用于整個VLAN。這意味著,我們可以實施最小權限概念——比如說,允許來自一臺Web服務器的流量通過特定的端口與必要的數據庫系統進行聯系,同時阻止流量進入到同一個子網上其他毫無關聯的服務器。
不過,正確實施VACL需要深入了解主機的數據流動和網絡通信要求。如果VACL定義得不合適,設備之間反而可能會出現多余的通信流量。另一方面,如果VACL設置得過于嚴格,設備可能無法與被許可系統進行通信。
流量控制保安全
在扁平網絡中,物理交換機/路由器層的私有虛擬局域網(PVLAN)會將系統規劃為三種類型中的一種,每一種都有各自的流量控制屬性:混雜端口(promiscuous port)、社區端口(community port)和隔離端口(isolated port)。
使用混雜端口的PVLAN通常用于某個子網的網關,其可以自由地訪問PVLAN上的其他接口。使用社區端口的PVLAN允許與各個端點和PVLAN上的混雜端口進行通信,對于某一個網段上需要互相通信的一組服務器(比如一組Web服務器和一臺數據庫服務器)來說,社區端口是很好的選擇。使用隔離端口的PVLAN實施的控制最嚴格,只允許設備與PVLAN上的混雜端口進行聯系。
PVLAN對二層流量通常提供了籠統的分隔,而不是精細的控制。其可被用于支持深層防御,并且打破子網廣播域。另外,如果需要更特定的訪問配置文件,PVLAN還可以與VACL配合使用。
二層防火墻提供了與VACL相似的功能,不過其在結構上更為清晰。高級防火墻產品(比如Palo Alto Networks的防火墻)支持這種功能:在同一個VLAN上的兩個或多個接口之間進行實際交換,并檢查通過這條路徑傳送的流量。這種方案的優點是,其充分利用了企業級防火墻的功能,并且提供了一條清晰的路徑,把控制機制集成到一致的防火墻策略中。不過,就像每個完美的產品一樣,其惟一的缺點就是價格昂貴。由于端口密度方面有要求,加上每個物理接口成本高,其實施起來費用高昂。
真正的二層防火墻相當少見,其可以作為在同一子網上不同物理交換機之間的過濾層,對企業很有意義。
需要注意的是,添加任何二層控制機制都會為整個網絡引入另一種異構環境,這很有可能對整個網絡造成破壞。在這種情況下,內網主機訪問不了的原因會很多,防火墻、主機適配器、應用程序進程和網絡都有可能出現問題。
我們說過扁平網絡可能會讓網絡速度更快,但沒有說其可以簡化你的工作。
網管員尤其要考慮在運用VACL和PVLAN等控制機制時,其對運營方面的影響。企業一定要有出色的管理和審查機制,以簡化配置任務、減小故障排除難度。通常來說,這意味著要使用管理工具或可以監控過濾規則的網元管理系統,以提供集中式、可以付諸行動的審查日志,并且能夠在整個實施過程中確保一致性。我們從物理設備談到虛擬二層控制機制時,可管理性和一致性方面的概念極其重要。
“扁平”的虛擬化網絡安全
很多人都知道,扁平網絡架構很適合私有云或高度虛擬化的數據中心。在這種環境下,虛擬機常常在服務器之間遷移。但是在這些架構中仍需要二層網絡控制,這意味著我們就要與虛擬接口和虛擬交換機打交道。
通過上文,如果你已經了解了VACL、PVLAN和物理二層防火墻的控制機制,就可以把這套知識照搬過來,因為以虛擬機為中心的這些控制機制與上文所述大同小異。
對虛擬化系統進行精細控制有幾個原則:強審查、可擴展性和便于了解流量如何控制的可視性。
強有力的低級分隔在虛擬化網絡中仍然需要。隨著占用某個子網的虛擬化設備數量越來越多、設計的復雜性越來越大,這種分隔變得越來越重要。
確保高度虛擬化扁平網絡的安全需要重點關注端口配置文件和安全配置文件。這兩類文件規定了被分配到某個組的虛擬機如何運行。網管員一旦創建和設定了配置文件,虛擬機的配置就會永遠保持不變,哪怕其被遷移到了不同的物理硬件上或改變了狀態。
創建虛擬機時,我們可以動態地運用這些配置文件。比如說,可以創建一個配置文件,牢牢保護通過管理GUI對某個管理子網進行的訪問。我們也可以在配置文件中明確拒絕可信度較低的系統通過網絡訪問一組比較敏感的虛擬機。配置文件簡化了管理任務,而且有助于為相似系統執行一致的基本策略。
除了配置文件外,管理員還可以為網段建立安全區。所謂安全區,指的是為有共同特點的一組設備進行如操作角色、相對的安全值或者訪問要求等在內的一系列設定。安全區的設定會降低操作復雜度并且節省時間。我們可以將應用服務器放入到應用安全區,Web服務器可以放入到Web安全區。
扁平網絡的本質是降低網絡復雜性(更少的VLAN,更簡單的子網),并提升性能。在虛擬化環境中更是如此。雖然打破網絡界限并非在所有情況下都是“萬金油”,但是扁平網絡依然吸引著對擁有虛擬化架構或者需要提高網絡速度的企業。借助合適的工具,我們能夠在虛擬網卡上,提供非常靠近網絡流量來源的過濾控制機制。這有助于減少資源浪費、提高性能,因為不需要的流量在靠近來源的地方被過濾掉了。如果IT部門善于使用相關工具,就能在二層實施強有力的控制,享受選用扁平網絡帶來的好處。