透過頻內整合的網路安全整合功能,您可以在網路流量路徑中直接插入自己的網路安全設備 (例如防火牆或入侵偵測系統) 進行檢查。您可以使用這些網路設備檢查流量是否有任何已知的威脅,再將流量傳送到目的地。
網路安全整合功能會使用 Cloud Next Generation Firewall 和封包攔截技術,提供頻內整合功能,以服務為中心處理封包管道。封包攔截是一項 Google Cloud 功能,可讓您在網路流量路徑中插入網路設備,而不必修改任何現有的路由政策。
封包處理作業會在路由傳出封包之前,以及收到路由傳入封包之後進行。頻內整合使用通用網路虛擬化封裝 (GENEVE) 封裝,在傳送或接收虛擬機器 (VM) 與封包處理 VM (您的網路設備) 之間安全地傳輸封包。
頻帶內整合的優點
頻內整合具有下列優點:
- 擴充性:部署封包處理 VM,做為 VM 型防火牆、入侵偵測系統或網路設備。您可以視需求調整封包處理 VM 的規模。
- Geneve 封裝:保留原始封包,包括來源和目的地 IP 位址,因為封包會在傳送或接收 VM,以及封包處理 VM 之間傳輸以供檢查。如要進一步瞭解 GENEVE,請參閱 GENEVE RFC。
- Cloud NGFW 技術:使用階層式防火牆政策或全域網路防火牆政策中的輸入或輸出規則,並搭配
apply_security_profile_group動作,設定封包檢查。這樣一來,就不必依賴 VPC 網路中的路徑。詳情請參閱「頻內整合的運作方式」。
生產者和消費者模型
頻內整合採用生產者-消費者模型,設定如下:
服務供應商
服務生產者透過 VM 提供封包檢查服務。VM 可以是網路設備,也可以是執行自訂軟體解決方案的執行個體。生產者負責設定、調度及維護 VM。
服務生產者會部署及管理內部直通式網路負載平衡器,這些負載平衡器會使用後端 VM 執行封包檢查服務。生產者會透過區域攔截部署作業,向消費者提供封包檢查服務,這些部署作業會歸入全域攔截部署作業群組。詳情請參閱「設定生產者服務」。
服務生產者會使用下列重要元件提供封包檢查服務:
VM 執行個體:代管網路設備或自訂軟體解決方案。製作人負責設定、擴充及維護 VM。生產者可以使用區域非代管或區域代管執行個體群組,來代管封包檢查 VM。
內部直通式網路負載平衡器:將流量分配到後端封包檢查 VM。負載平衡器的轉送規則會做為需要檢查的流量進入點。
攔截部署:參考內部直通式網路負載平衡器轉送規則的可用區資源。攔截部署項目代表供應商為該可用區提供的檢查服務。
攔截部署項目群組:全域資源,內含多個區域攔截部署項目。
服務用戶
服務消費者會使用服務生產者提供的封包檢查服務。
在虛擬私有雲網路的每個區域中,服務消費者可以選擇生產者提供的封包檢查服務,也可以設定防火牆端點,搭配 Cloud Next Generation Firewall Enterprise 使用。防火牆端點和使用頻內整合的封包檢查服務互斥。詳情請參閱「設定消費者服務」。
服務消費者會使用下列重要元件,將流量傳送至生產者的封包檢查服務:
攔截端點群組:全域性資源,每個專案各有一個,可參照服務供應商的攔截部署項目群組。
攔截端點群組會表達消費者的意圖,也就是要在消費者虛擬私有雲網路的一或多個區域中,使用服務供應商攔截部署群組提供的封包檢查服務。
攔截端點群組關聯:全域性資源,適用於每個專案,可將攔截端點群組邏輯上連結至一或多個消費者虛擬私有雲網路。
防火牆規則:階層式防火牆政策或全域網路防火牆政策規則,可將流量導向封包檢查 VM。
安全性設定檔: 全域資源,每個機構各有一個,可參照攔截端點群組。
安全性設定檔群組:參照安全性設定檔的全球性機構資源。防火牆政策中的規則會參照安全性設定檔群組,並使用
apply_security_profile_group動作將封包傳送至生產者的封包檢查服務。
攔截防火牆規則具有狀態。如果新工作階段符合規則,系統會攔截與該工作階段相關聯的所有後續輸入和輸出封包,並在 GENEVE 標頭中以適當的安全性設定檔群組封裝這些封包。
頻帶內整合部署模式
頻內整合採用生產者-消費者模型。
圖 1 顯示頻內整合服務的高階部署架構。
下圖顯示下列生產者/消費者設定:
producer-project1是包含一個虛擬私有雲網路 (producer-vpc) 的服務生產者專案。網路設定如下:- 服務生產者在
us-west1-a和us-west1-b區域提供封包檢查服務。 - 每個區域都有一組封包檢查 VM、內部直通式網路負載平衡器,以及攔截部署作業。
- 服務生產者的封包檢查服務會歸入單一攔截部署群組。
- 服務生產者在
consumer-project1是服務消費者專案,內含兩個虛擬私有雲網路consumer-vpc1和consumer-vpc2。這兩個網路都已設定為使用生產者的封包攔截服務,設定如下:每個網路的防火牆政策和規則評估順序都設為
BEFORE_CLASSIC_FIREWALL。每個網路都有自己的攔截端點群組關聯,參照的是通用攔截端點群組。在圖表中,常見的攔截端點群組位於
consumer-project2消費者專案中。攔截端點群組會表達消費者使用供應商攔截部署項目群組的意圖。在消費者機構中,客戶已建立包含安全性設定檔的安全性設定檔群組。安全性設定檔會參照與
consumer-vpc1和consumer-vpc2虛擬私有雲網路相關聯的相同攔截端點群組。如要將封包導向生產者的封包檢查服務,消費者會在防火牆政策中使用輸入或輸出規則。
頻帶內整合的運作方式
在頻內整合中,當封包符合使用 apply_security_profile_group 動作的防火牆規則時,系統會攔截消費者流量中的封包。符合防火牆規則的封包會傳送至服務供應商虛擬私有雲網路中的內部直通式網路負載平衡器。
封包檢查規定
如要讓防火牆規則成功攔截消費者流量,必須符合下列條件:
- 使用
apply_security_profile_group動作的防火牆規則必須屬於階層式防火牆政策,或與消費者虛擬私有雲網路相關聯的全域網路防火牆政策。 - 用戶的攔截端點群組關聯必須將用戶的虛擬私有雲網路與正確的攔截端點群組建立關聯。
防火牆規則的安全設定檔群組必須包含安全設定檔,該設定檔會參照正確的攔截端點群組。
如果防火牆規則安全性設定檔參照的攔截端點群組,與虛擬私有雲網路相關聯的攔截端點群組不符,封包就不會遭到攔截。
封包傳輸流
當封包符合封包檢查的防火牆規則時, Google Cloud會依下列方式處理封包:
在消費者虛擬私有雲網路的區域中攔截封包。
Google Cloud 會根據流量方向攔截封包:
輸出流量 (從 VM 傳送的封包):系統會先攔截符合封包檢查輸出防火牆規則的封包,再轉送封包。
如果虛擬機器已將外部 IPv4 位址指派給其 NIC,或虛擬機器 NIC 使用 Cloud NAT 閘道, Google Cloud 會在處理輸出防火牆規則和封包檢查後,但在轉送輸出封包前,變更封包的來源 IPv4 位址。
輸入流量 (VM 收到的封包):符合封包檢查輸入防火牆規則的封包,會在封包完成路由程序後遭到攔截。
如果 VM 的 NIC 已指派外部 IPv4 位址,或 VM NIC 使用 Cloud NAT 閘道,Google Cloud 會在收到已路由傳入的封包後,但在處理傳入防火牆規則和封包檢查前,變更封包的目的地 IPv4 位址。
封裝封包。
在防火牆處理階段,原始輸出或輸入封包會使用 GENEVE 通訊協定封裝。這項封裝作業會保留 GENEVE 封包酬載中原始封包的來源和目的地 IP 位址。
將封裝的封包傳送至服務供應商。
封裝的封包會傳送至服務生產者虛擬私有雲網路中,內部直通式網路負載平衡器的後端 VM。系統會根據流量遭到攔截的 VM 所在區域,以及攔截端點群組參照的攔截部署群組設定,選取特定負載平衡器。
處理封包。
生產者的後端 VM 會在
UDP連接埠6081接收 GENEVE 封裝封包。每個封包處理 VM 都有軟體,可瞭解如何從 GENEVE 封包中擷取原始封包。VM 上的檢查軟體會擷取原始封包、檢查封包,並在允許流量的情況下,使用 GENEVE 重新封裝封包,不會變更原始封包的 IP 位址、通訊協定和連接埠。
退回封包。
封包處理 VM 會使用直接伺服器回傳 (DSR),將重新封裝的封包傳回給消費者網路。在此程序中,回應流量會直接從網路設備傳送至用戶端,略過負載平衡器以提升效率。詳情請參閱「內部直通式網路負載平衡器的運作方式」。
限制
- 當網路封包符合任何攔截規則時,Compute Engine 會以較慢的速率處理封包。封包處理速率取決於機器類型、封包大小和 CPU 使用率,與虛擬私有雲網路外部目的地的輸出速率相似。
- 區域網路防火牆政策不支援封包攔截。
- Producer 攔截部署作業不支援以動態 NIC 做為後端的執行個體。
攔截的 TCP 工作階段必須以 SYN 封包開頭,攔截裝置才能觀察完整工作階段。對於不明連線,設備會在攔截前捨棄所有非 SYN 封包。
SYN 封包是啟動新 TCP 連線的第一個封包。非 SYN 封包是指該連線中的任何其他封包。如果您的流量模式包含非 SYN 啟動器或分割路由,請與 Cloud 支援團隊聯絡,尋求建議。