Azure 虛擬網路是 Azure 中專用網的基本建置組塊,可讓 Azure 資源安全地彼此通訊、因特網和內部部署網路。 部署虛擬網路時,您必須實作安全性控制來保護網路基礎結構、控制流量,以及防止未經授權的資源存取。
本文提供如何最好地保護您的 Azure 虛擬網路部署的指引。
網路安全性
虛擬網路的網路安全性著重於控制流量、實作網路分割,以及防範外部威脅。 適當的網路安全性控制有助於隔離工作負載、防止橫向移動,以及防範分散式阻斷服務攻擊。
使用網路安全組 (NSG) 和應用程式安全組區隔工作負載:將 NSG 套用至子網和網路介面,以根據來源 IP、目的地 IP、埠和通訊協定來控制輸入和輸出流量。 使用應用程式安全組,以邏輯方式將虛擬機分組,並根據應用程式結構定義網路安全策略。 使用「預設拒絕,允許例外狀況」方法將受攻擊面降到最低。 如需詳細資訊,請參閱 網路安全組。
啟用流量監視的 NSG 流量記錄:設定 NSG 流量記錄,以擷取流經網路安全組的IP流量相關信息。 請將這些記錄傳送至 Azure 監視器 Log 分析,並使用流量分析將網路活動可視化及識別安全性威脅。 如需詳細資訊,請參閱 NSG 流量記錄。
部署 Azure 防火牆以進行集中式、具狀態保護:使用 Azure 防火牆,透過完全具狀態封包檢查來控制虛擬網路的輸入和輸出流量。 使用集中式防火牆原則大規模定義和管理應用程式和網路規則。 Azure 防火牆支援DNAT來保護輸入存取,並支援 SNAT 以保持一致的輸出連線。 為了增強安全性,啟用威脅情報型篩選,以自動警示和拒絕已知惡意IP位址和網域的流量,並使用Azure防火牆進階搭配入侵偵測和預防系統 (IDPS) 來監視和封鎖惡意網路流量。 與 Azure 監視器整合,以取得完整的流量可見度和記錄分析。 如需詳細資訊,請參閱 Azure 防火牆。
啟用 DDoS 保護標準:在您的虛擬網路上啟用 DDoS 保護標準,以防止分散式阻斷服務攻擊。 此服務提供增強的 DDoS 風險降低功能和公用 IP 位址的即時監視。 如需詳細資訊,請參閱 Azure DDoS 保護標準。
使用服務標籤來簡化安全性規則:使用 NSG 規則中的服務標籤取代特定 IP 位址,以允許與 Azure 服務通訊,同時維護安全性。 Microsoft隨著IP範圍變更而自動更新服務標籤。 如需詳細資訊,請參閱服務標籤。
設定封包擷取以進行鑑識分析:在虛擬機上啟用封包擷取,或使用 VPN 閘道封包擷取來記錄網路流量,以進行安全性分析和事件調查。 如需詳細資訊,請參閱 網路監看員封包擷取。
實作 Azure Bastion 來保護 RDP/SSH 存取:使用 Azure Bastion 透過 RDP 或 SSH 安全地連線到虛擬機,而不需將其公開至公用因特網。 Bastion 可消除 VM 上公用 IP 位址的需求,並減少受攻擊面。 如需詳細資訊,請參閱 Azure Bastion。
針對輸出流量實作 Azure NAT 閘道:使用 Azure NAT 閘道為虛擬網路資源提供靜態輸出 IP 位址,確保安全且可調整的輸出流量。 NAT 閘道也提供防止埠耗盡的保護。 如需詳細資訊,請參閱 Azure NAT 閘道。
針對 Azure 服務使用私人端點和 Private Link:使用 Azure Private Link 透過虛擬網路內的私人端點存取 Azure PaaS 服務(例如 Azure 記憶體、SQL Database)。 Private Link 可避免公開公用因特網,並藉由在 Azure 骨幹網路內保留流量來增強安全性。 如需詳細資訊,請參閱 Azure Private Link。
默認將子網設定為私人:對於不需要公用因特網存取的子網,請將子網設定為私人子網。 如有需要,請使用 Azure 防火牆或 NAT 閘道來控制輸出存取。 如需詳細資訊,請參閱 Azure 中的預設輸出存取
套用自適性網路強化建議:使用適用於雲端的彈性網路強化Microsoft Defender,根據實際流量模式和威脅情報接收以機器學習為基礎的建議,以收緊NSG 規則。 如需詳細資訊,請參閱 自適性網路強化。
使用深度防禦原則進行設計:實作多層的網路安全性控制,以建立備援保護。 使用隔離重要工作負載的分割策略,並在每個網路界限上套用不同的安全性措施,以包含潛在的缺口。
啟用虛擬網路加密:使用 Azure 虛擬網路加密來加密相同虛擬網路內的虛擬機與區域與全域對等互連虛擬網路之間的傳輸數據。 這會為敏感數據通訊提供額外的保護。 如需詳細資訊,請參閱 虛擬網路加密。
維護更新的安全性周邊:定期檢閱和更新安全性設定,包括 NSG、應用程式安全組和 IP 位址範圍。 過時的規則可能不符合目前的網路架構或流量模式,可能會造成安全性缺口。 如需詳細資訊,請參閱 網路安全組概觀。
限制公用IP位址使用方式:使用 Azure Front Door 或應用程式閘道等服務的共用公用IP位址,將公用IP位址數目降至最低。 需要公用IP時,請實作適當的埠管理和要求驗證。 如需詳細資訊,請參閱 公用IP位址。
身分識別管理
虛擬網路的身分識別管理牽涉到控制對網路資源的存取,並確保只有授權的用戶和服務才能修改網路設定。 適當的身分識別控制可防止未經授權的網路變更和維護網路安全性狀態。
使用 Azure RBAC 進行網路資源存取:指派適當的內建角色,例如網路參與者或具有特定許可權的自定義角色,以控制誰可以建立、修改或刪除虛擬網路和相關資源。 遵循最低權限原則。 如需詳細資訊,請參閱 適用於網路的 Azure RBAC。
啟用 Microsoft Entra ID 與 SSO 整合:使用 Microsoft Entra ID 作為集中式識別提供者,以管理對網路資源和相關 Azure 服務的存取。 實作單一登錄 (SSO),而不是為每個服務設定個別的獨立認證,以減少受攻擊面並將密碼需求降到最低。 Microsoft Entra ID 整合可確保跨網路基礎結構的一致驗證和授權。 如需詳細資訊,請參閱 單一登錄應用程式。
實作網路管理員的條件式存取:設定條件式存取原則以要求多重要素驗證,並根據使用者位置、裝置合規性和風險層級限制網路管理作業的存取。 如需詳細資訊,請參閱 條件式存取。
針對 Azure 資源使用受控識別:針對需要存取其他 Azure 服務的 Azure 資源啟用受控識別,而不需要將認證儲存在虛擬網路組態中。 這提供安全的無認證驗證。 如需詳細資訊,請參閱受控識別。
定期檢閱和協調使用者存取:執行一般存取權檢閱,以有效率地管理群組成員資格、企業應用程式的存取權,以及角色指派。 請確定只有活躍用戶能夠繼續存取網路管理功能。 如需詳細資訊,請參閱 Azure 身分識別存取權檢閱。
為網路角色套用最低許可權原則:為網路相關角色設定無存取思維的角色型訪問控制。 請確定使用者只能視其作業功能的要求修改網路設定,以將潛在的安全性風險降到最低。 如需詳細資訊,請參閱 Azure RBAC 最佳做法。
特權存取
虛擬網路的特殊許可權存取管理著重於保護系統管理作業,並確保授權人員透過適當的監督和監視來執行網路設定變更。
為網路系統管理員強制執行多重要素驗證:需要具備網路管理許可權的所有使用者使用 MFA,才能在密碼之外新增額外的安全性層。 MFA 可大幅降低認證型攻擊的風險。 如需其他資訊,請參閱 Microsoft Entra 多重要素驗證。
針對網路作業使用即時存取:實作 Microsoft Entra Privileged Identity Management,以提供對網路管理角色的限時存取。 JIT 存取可減少特殊許可權認證的曝光時間範圍。 如需詳細資訊,請參閱 Privileged Identity Management。
監視特殊許可權網路活動:啟用所有特殊許可權網路作業的記錄和監視,包括 NSG 變更、路由表修改和防火牆規則更新。 使用 Azure 活動記錄和 Azure 監視器來追蹤系統管理動作。 如需詳細資訊,請參閱 Azure 活動記錄。
搭配特殊許可權存取工作站使用專用系統管理帳戶:建立使用專用系統管理帳戶的標準作業程式。 部署特殊許可權存取工作站 (PAWs),並設定多重要素驗證,讓網路管理員執行系統管理工作。 PAW 提供強化且安全的環境來管理重要的網路基礎結構。 使用 Microsoft Defender for Cloud 的身分識別和存取管理來監視管理帳戶的數目。 如需詳細資訊,請參閱特殊權限存取工作站。
維護管理帳戶的清查:使用 Microsoft Entra ID 的內建系統管理員角色,這些角色可以明確指派且可查詢。 定期稽核屬於管理群組成員的帳戶,以確保適當的訪問控制。
數據保護
虛擬網路的數據保護涉及保護跨網路基礎結構傳輸的數據,並確保網路通訊已加密並受到保護,免於攔截或竄改。
啟用傳輸中的加密:確定所有網路流量都使用 TLS 1.2 或更高版本、VPN 連線的 IPsec,以及應用程式通訊的加密通訊協定。 Azure 預設會為 Azure 資料中心之間的流量提供加密。 如需詳細資訊,請參閱 傳輸中的加密。
啟用 Azure 虛擬網路加密:使用 Azure 虛擬網路加密來加密相同虛擬網路內虛擬機之間的傳輸數據。 這會為敏感數據提供額外的安全性層級。 如需詳細資訊,請參閱 Azure 虛擬網路加密。
實作敏感數據的網路訪問控制:使用 NSG 和 Azure 防火牆來限制對包含敏感數據的子網和資源存取。 使用多層網路安全性控制來套用深度防禦原則。
啟用適用於 Azure ExpressRoute 的 MACsec:針對 ExpressRoute 連線,啟用 MACsec (媒體存取控制安全性),以在內部部署網路與 Azure 之間提供第 2 層加密,確保傳輸中數據的機密性和完整性。 如需詳細資訊,請參閱 適用於 ExpressRoute 的 MACsec。
根據敏感度分類數據:將機密層級指派給流經虛擬網路的數據,並根據這些分類實作適當的網路安全性控制。 使用此分類來影響網路設計和安全性優先順序。
記錄和威脅偵測
虛擬網路的完整記錄和威脅偵測可啟用安全性監視、事件回應和合規性報告。 適當的記錄有助於識別安全性威脅,並提供事件調查的鑑識功能。
使用 Azure 監視器集中收集記錄:設定診斷設定,將虛擬網路記錄、NSG 流量記錄和 Azure 防火牆記錄傳送至 Azure 監視器 Log Analytics 工作區,以進行集中式分析和相互關聯。 根據貴組織的合規性法規設定適當的記錄保留期限,並使用 Azure 記憶體帳戶進行安全性記錄的長期封存。 如需詳細資訊,請參閱 Azure 監視器。
啟用適用於雲端的 Microsoft Defender:使用適用於雲端的 Microsoft Defender 來監視虛擬網路資源的安全性設定錯誤和威脅。 啟用增強的安全性功能,以提供完整的保護。 如需詳細資訊,請參閱適用於雲端的 Microsoft Defender。
設定安全性警示和通知:針對重大網路安全性事件設定 Azure 監視器警示,例如 NSG 規則變更、不尋常的流量模式或防火牆區塊。 設定動作群組以自動通知安全性小組。 如需詳細資訊,請參閱 Azure 監視器警示。
使用 Microsoft Sentinel 進行進階威脅偵測:將您的虛擬網路記錄連線至 Microsoft Sentinel,以取得進階安全性分析、威脅搜捕和自動化回應功能。 如需詳細資訊,請參閱 Microsoft Sentinel。
啟用網路資源的完整記錄:開啟虛擬網路、負載平衡器和其他網路元件的診斷記錄,以擷取組態變更和存取模式。 設定 Azure DNS 或自定義 DNS 伺服器的 DNS 查詢記錄,以偵測 DNS 型攻擊和數據外泄嘗試。 監視可疑網域查詢和 DNS 通道活動。
使用 UEBA 監視和分析記錄:定期檢閱記錄是否有異常行為和安全性事件。 使用 Azure 監視器的 Log Analytics 工作區來查詢及執行安全性數據的分析。 實作使用者和實體行為分析 (UEBA) 工具,從監視數據收集用戶行為,並加以分析,以偵測可能表示安全性威脅的異常使用者存取模式。
資產管理
虛擬網路的資產管理牽涉到維護網路資源的清查、實作治理原則,並確保符合安全性標準。 有效的資產管理有助於維護安全性狀態,並快速回應安全性事件。
使用 Azure 原則進行治理和資源限制:部署 Azure 原則定義來強制執行虛擬網路的安全性標準。 這些原則可能要求在子網上設置 NSG、強制特定的安全性規則,或禁止創建公用 IP。 使用內建原則定義,例如「不允許的資源類型」和「允許的資源類型」來限制資源建立。 如需詳細資訊,請參閱 虛擬網路的 Azure 原則。
為組織標記網路資源:將一致的標記策略套用至虛擬網路、子網、NSG 和相關資源,以啟用適當的組織、成本管理和安全策略強制執行。 使用 NSG 規則中的標籤和描述欄位來指定商務需求、持續時間和其他安全性規則資訊,以協助安全性稽核和規則管理。 如需詳細資訊,請參閱 資源標記。
監視資源設定變更:使用 Azure Resource Graph 來查詢和探索訂用帳戶間的所有網路資源。 針對重大網路組態的未經授權變更設定設定警示。 如需詳細資訊,請參閱 Azure Resource Graph。
實作標準化組態管理:使用 Azure Resource Manager 範本或 Bicep,以一致的方式定義及部署網路設定。 使用 Azure 藍圖,在單一藍圖定義中封裝重要環境成品,例如 Azure Resource Manager 範本、角色型訪問控制指派和原則,以簡化大規模的 Azure 部署。 將範本儲存在版本控制中,並實作網路修改的變更管理程式。 如需詳細資訊,請參閱 Azure 藍圖。
維護核准的資源清查:建立和維護已核准 Azure 資源的清查,以及網路環境的核准設定。 定期稽核部署,以確保符合已核准的基準。
安全性測試
虛擬網路的安全性測試可確保實作的安全性控制功能正常運作,而且可以偵測並防止潛在的威脅。 定期測試會驗證網路安全性狀態的有效性。
進行定期滲透測試:執行工作負載小組外部專家所執行的定期滲透測試,這些小組會嘗試以道德方式破解網路基礎結構。 這些測試會模擬真實世界攻擊來驗證安全性防禦。
實作弱點掃描:執行例程和整合式弱點掃描,以偵測網路基礎結構、虛擬機和網路設備中的惡意探索。 將掃描器整合到部署管線中,以自動偵測弱點。
測試事件回應程序:進行練習,定期測試您的網路安全性事件回應功能。 識別網路安全性回應程式中的弱點和差距,並視需要修訂計劃。
驗證網路分割:定期測試網路分割控件,以確保某個區段中遭入侵的資源無法存取其他區段的資源。 確認隔離界限已如設計般運作。
測試備份和復原程式:定期測試從導出的範本或檔重新建立虛擬網路組態的能力,以確保復原程式能夠正常運作,並符合復原時間目標。
啟用虛擬網路驗證器:在生產階段前環境中,使用 Azure 虛擬網路管理員中的虛擬網路驗證器來測試資源之間的連線能力,並確保它們可連線且不受原則封鎖。 如需詳細資訊,請參閱 虛擬網路驗證程式。
使用 Azure Chaos Studio 進行復原測試:實作 Azure Chaos Studio 來模擬網路連線中斷,並驗證安全性控制在失敗案例期間保持有效。 這可確保即使網路遇到壓力或部分中斷,安全性機制仍會繼續正常運作。 如需詳細資訊,請參閱 Azure Chaos Studio。
備份和復原
虛擬網路的備份和復原著重於保留網路設定,並確保在發生意外刪除或設定錯誤時快速還原網路連線。 雖然虛擬網路本身不需要傳統備份,但組態保留很重要。
匯出和保護網路組態:使用 Azure Resource Manager 將虛擬網路組態導出為可儲存及用於災害復原的範本。 使用 Azure 自動化或 Azure Pipelines 將此程式自動化。 使用 Azure DevOps 安全地儲存和管理程式代碼,例如自定義 Azure 原則定義和 Azure Resource Manager 範本。 在 Key Vault 中啟用 Soft-Delete 和清除保護,以防止密鑰遭到意外或惡意刪除。 如需詳細資訊,請參閱 匯出範本。
檔網路架構:維護網路設計的完整檔,包括IP位址配置、路由表、安全組規則和連線需求。 將此檔案儲存在安全且可存取的位置。
測試及驗證復原程式:定期測試從導出的範本或檔重新建立虛擬網路組態的能力,以確保復原程式正常運作,並符合復原時間目標。 定期將 Azure Resource Manager 範本部署至隔離的訂用帳戶,並測試備份客戶管理的密鑰還原,以確保復原程式正常運作。
備份已連線的資源和客戶管理的密鑰:雖然虛擬網路不需要備份,但請確定已連線到您網路的虛擬機和其他資源已使用 Azure 備份正確備份,以維護完整的復原功能。 如果在虛擬網路環境中使用客戶管理的密鑰進行加密,請確定這些密鑰會以適當的保留和復原程式備份在 Azure Key Vault 中。 如需詳細資訊,請參閱 Azure 備份。
準備備援網路基礎結構:事先複製網路基礎結構,特別是針對混合式設定。 請確定不同區域中的各個通路事先準備好互相通信。 跨主要和災害復原網站複製並維持NSG和Azure防火牆規則的一致性。 避免生產與災害復原網路之間的重疊 IP 位址範圍,以簡化網路管理,並在故障轉移事件期間加速轉換。
事件回應
虛擬網路的事件回應牽涉到建立程式,以偵測、回應及復原影響網路基礎結構的安全性事件。 適當的事件回應功能有助於將安全性缺口的影響降到最低,並確保快速還原服務。
建立事件回應指南:為您的組織建置事件回應指南,以定義從偵測到事件后檢閱到事件後處理的所有角色和事件處理階段。 包含網路安全性事件的特定程序。
實作事件評分和優先順序:建立程式,根據嚴重性和影響來設定安全性事件的優先順序。 使用 Microsoft 適用於雲端的 Defender 警示來協助排定應先調查哪些網路安全性事件的優先順序。
設定安全性事件聯繫人詳細數據:如果Microsoft資訊安全回應中心發現您的數據已由非法或未經授權的方存取,則設定Microsoft將用來與您連絡的安全性事件聯繫人資訊。 如需詳細資訊,請參閱 Microsoft Defender 雲端安全性聯絡人。
將安全性警示納入事件回應:使用持續匯出功能導出 Microsoft適用於雲端的 Defender 警示和建議,以協助識別 Azure 資源的風險。 使用數據連接器將警示串流至Microsoft Sentinel 以進行集中式事件管理。
測試安全性回應程序:進行練習,定期測試系統的事件回應功能。 識別網路安全性回應程式中的弱點和差距,並視需要修訂計劃。
自動化事件回應:使用適用於雲端的 Microsoft Defender 中的工作流程自動化功能,透過 Logic Apps 在安全性警示和建議上自動觸發回應,以保護 Azure 網路資源。