簡介
本文檔介紹如何在高度信任的環境中,在Azure中部署自動縮放的Cisco Firepower威脅防禦虛擬(FTDv)。
必要條件
需求
思科建議您瞭解以下主題:
- NGFW和Firepower管理中心應通過私有IP通訊
- 外部負載平衡器不應具有公共IP
- 該功能的應用應該能夠與專用IP通訊
採用元件
本文中的資訊係根據以下軟體和硬體版本:
- Azure
- Firepower管理中心
- 虛擬機器規模集
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
背景資訊
FTDv將思科的Firepower下一代防火牆功能引入虛擬化環境,從而支援一致的安全策略,以跟蹤您的物理、虛擬和雲環境以及雲之間的工作負載。
由於這些部署可在虛擬化環境中使用,因此NGFW目前無法支援HA。因此,為了提供高度可用的解決方案,思科下一代防火牆(NGFW)利用Azure的本地功能(如可用性集和虛擬機器規模集(VMSS))使NGFW高度可用,並滿足日益增加的按需流量。
本文檔重點介紹根據不同引數將思科NGFW配置為自動擴展,其中NGFW按需擴展或按需擴展。這涵蓋了客戶要求使用Firepower Management Center(FMC)的使用案例,FMC在代管資料中心中可用,需要集中管理所有NGFW,而且客戶也不希望使用FMC和FTD通過公共IP進行通訊以實現管理流量。
在深入瞭解配置和設計之前,請注意以下幾個向Azure寫入時應充分瞭解的概念:
可用區: 可用區是一種高可用性產品,可保護您的應用程式和資料免受資料中心故障的影響。可用區域是Azure區域內唯一的物理位置。每個區域由一個或多個資料中心組成,這些資料中心配備了獨立的電源、冷卻和網路。
VNET: Azure虛擬網路(VNet)是Azure中你的專用網路的基本構建塊。VNet使許多型別的Azure資源(如Azure虛擬機器[VM])能夠安全地相互通訊、網際網路和本地網路。VNet與傳統網路類似,您可在自己的資料中心中運行,但它也帶來了Azure基礎設施的其他優勢,如規模、可用性和隔離性。預設情況下,VNET中的每個子網均可相互訪問,但不同VNET中的子網則不同。
可用性集: 可用性集是另一種資料中心配置,用於提供VM冗餘和可用性。資料中心內的此配置可確保計畫內或計畫外維護事件期間至少有一個虛擬機器可用,並滿足99.95%的Azure SLA。
VMSS: Azure虛擬機器規模集允許您建立和管理一組負載均衡的VM。VM例項的數量可以自動增加或減少,以響應需求或定義的計畫。擴展集為您的應用程式提供了高可用性,並允許您集中管理、配置和更新大量虛擬機器。藉助虛擬機器規模集,您可以為計算、大資料和容器工作負載等領域構建大規模服務。
功能應用:Azure功能是按需提供的雲服務,提供運行應用程式所需的所有持續更新的基礎設施和資源。你關注對你來說最重要的代碼片段,Azure函式處理其餘的代碼。您可以使用Azure函式構建Web API、響應資料庫更改、處理IoT流、管理消息隊列等。在此自動縮放解決方案中,Azure函式是向FMC發出的各種API請求,用於建立對象、註冊/註銷FTDv、檢查引數等。
邏輯應用:Azure Logic Apps是一項雲服務,可在您需要跨企業或組織整合應用、資料、系統和服務時,幫助您計畫、自動化和協調任務、業務流程和工作流。Logic Apps可簡化您設計和構建可擴展解決方案的方式,這些解決方案可用於應用集成、資料整合、系統整合、企業應用整合(EAI)以及企業到企業(B2B)通訊(無論是在雲中、在內部或兩者兼有)。此解決方案為自動縮放解決方案的功能提供了要執行的功能的邏輯順序。
目前,可用於NGFW的AutoScale解決方案不提供與VNet本地專用IP通訊的管理計畫,並且需要公共IP在Firepower管理中心和NGFW之間交換通訊。
本文旨在解決此問題,直到經驗證的解決方案可用於Firepower管理中心和NGFW通過私有IP進行通訊。
設定
為了建立自動縮放的NGFW解決方案,本配置指南經過多次修改後可用於解決以下使用案例:
- 功能應用應該能夠與客戶的內部IP網段通訊
- 負載平衡器不應具有公共IP
- NGFW和FMC之間的管理流量應通過專用IP網段交換
為了建立自動擴展NGFW解決方案,您需要使用上述使用案例,在思科官方指南中提到的步驟中修改這些案例:
1. Azure ARM模板
ARM模板用於啟用Azure中的自動化。思科提供了經過驗證的ARM模板,可用於建立自動擴展解決方案。但Public Github提供的此ARM模板建立了一個功能應用,無法使其與客戶的內部網路通訊,儘管它們可以通過快速路由到達。因此,您需要對此進行一些修改,以便函式應用現在可以使用高級模式而不是消費模式。所需ARM模板可在https://github.com/Madhuri150791/FunctionApp_with_Premiium_Plan.git上獲得。
2.功能應用
函式應用是一組Azure函式。基本功能包括:
- 定期通訊/探測Azure度量。
- 監控FTDv負載並觸發「縮放輸入/縮小」操作。
- 向FMC註冊新的FTDv。
- 透過FMC設定新的FTDv。
- 從FMC中註銷(移除)按比例縮放的FTDv。
如要求中所述,為按需建立或刪除NGFW建立的各種功能基於NGFW的公共IP完成。因此,我們需要調整C#代碼以獲得私有IP,而不是公共IP。在調整代碼後,可在https://github.com/Madhuri150791/FunctionApp_with_Premiium_Plan.git上找到用於建立函式應用的zip檔案
名為ASM_Function.zip。這樣,功能應用就能夠與內部資源進行通訊,而無需使用公共IP。
3.邏輯應用
自動縮放邏輯應用是一個工作流,即序列中的步驟集合。Azure函式是獨立的實體,無法相互通訊。此協調器會對這些功能的執行進行排序,並在它們之間交換資訊。
- 邏輯應用用於協調和傳遞自動縮放Azure功能之間的資訊。
- 每個步驟代表一個自動縮放Azure功能或內建標準邏輯。
- Logic App作為JSON檔案提供。
- 可以通過GUI或JSON檔案自定義邏輯應用。
注意:應仔細修改https://github.com/Madhuri150791/FunctionApp_with_Premiium_Plan.git上提供的邏輯應用詳細資訊,並且必須以部署詳細資訊、FUNSTIONAPP名稱、資源組名稱和訂閱ID替換這些項。
網路圖表
此圖顯示Azure環境中入站和出站流量如何通過NGFW流動。
組態
現在建立自動縮放解決方案所需的各種元件。
- 建立自動縮放邏輯的元件。
使用ARM模板並建立VMSS、Logic APP、Function APP、App Insight和Network Security Group。
導航至 Home > Create a Resource > Search for Template
然後選擇 Template Deployment
.現在按一下 Create
並在編輯器中構建自己的模板。
- 按一下
Save
.
對此模板進行所需更改,然後按一下 Review + create
.
- 這將建立上述資源組下的所有元件。
- 登入URL。
上傳檔案 ASM_Function.zip
和 ftdssh.exe
成長至 site/wwwroot/
資料夾(必須將其上載到指定的位置。函式應用無法識別各種函式)。
應該如下圖所示:
- 請檢視
Function app > Function
.你應該看看所有的功能。
- 更改訪問許可權,以便VMSS可以執行功能應用內的功能。導航至
-vmss> Access Control (IAM) > Add role assignement
.向此VMSS參與者提供對
-function-app
.
按一下 Save
.
- 導航至
Logic App > Logic Code
檢視並更改邏輯代碼,代碼位於https://github.com/CiscoDevNet/cisco-ftdv/tree/master/autoscale/azure/NGFWv6.6.0/Logic%20App。 在此,Azure訂閱、資源組名稱和函式應用名稱在使用前需要替換,它不允許成功儲存。
- 按一下
Save
.導航到Logic App Overview並啟用 Logic App
.
驗證
一旦邏輯應用被啟用,它將在5分鐘的間隔內開始執行。如果所有配置都正確,則您會看到觸發器操作成功。
此外,VM是在VMSS下建立的。
登入FMC,並檢查FMC和NGFW是否透過FTDv私人IP連線:
登入NGFW CLI時,您會看到以下內容:
因此,FMC通過Azure專用VNet子網與NGFW通訊。
疑難排解
有時,當您構建新的NGFW時,Logic App會失敗,要排除此類故障,可以採取以下步驟:
- 檢查邏輯應用是否已成功運行。
- 確定故障原因。按一下失敗的觸發器。
嘗試從代碼流中識別故障點。在此圖中,ASM邏輯顯然失敗,因為它無法連線到FMC。接下來,您需要確定無法按流在Azure中訪問FMC的原因。