共用方式為


Azure 防火牆常見問題集

一般

Azure 防火牆是什麼?

Azure 防火牆是受控的雲端式網路安全性服務,可保護您的 Azure 虛擬網路資源。 它是完全具狀態的防火牆即服務,具有內建的高可用性和不受限制的雲端延展性。 您可以橫跨訂用帳戶和虛擬網路集中建立、強制執行以及記錄應用程式和網路連線原則。

Azure 防火牆支援哪些功能?

如需 Azure 防火牆功能的詳細清單,請參閱 Azure 防火牆功能

Azure 防火牆的一般部署模型是什麼?

Azure 防火牆可以部署在任何虛擬網路上。 不過,它通常會部署在中樞和輪輻模型中的中央虛擬網路上,而其他虛擬網路則與它對等互連。 來自對等互連虛擬網路的預設路由會設定為指向此中央防火牆虛擬網路。 雖然支援全域虛擬網路對等互連,但由於跨區域的潛在效能和延遲問題,不建議這麼做。 為了獲得最佳效能,請為每個區域部署一個防火牆。

此模型允許跨不同訂用帳戶集中控制多個輪輻 VNet,並藉由避免在每個虛擬網路中部署防火牆來節省成本。 應根據流量模式,根據相關聯的對等互連成本評估成本節省成本。

如何部署 Azure 防火牆?

您可以使用 Azure 入口網站、PowerShell、REST API 或範本來部署 Azure 防火牆。 如需逐步指示,請參閱 教學課程:使用 Azure 入口網站部署和設定 Azure 防火牆

什麼是一些重要的 Azure 防火牆概念?

Azure 防火牆會使用規則和規則集合。 規則集合是一組具有相同順序和優先順序的規則。 規則集合會依優先順序執行。 DNAT 規則集合的優先順序高於網路規則集合,而網路規則集合的優先順序會高於應用程式規則集合。 所有規則都會終止。

規則集合有三種類型:

  • 應用程式規則:設定可從虛擬網路存取的完整功能變數名稱(FQDN)。
  • 網路規則:使用來源地址、通訊協定、目的地埠和目的地位址來設定規則。
  • NAT 規則:設定 DNAT 規則以允許傳入的網際網路或內部網路 (預覽) 連線。

如需詳細資訊,請參閱設定 Azure 防火牆規則

Azure 防火牆支援哪些記錄和分析服務?

Azure 防火牆會與 Azure 監視器整合,以檢視和分析記錄。 記錄可以傳送至 Log Analytics、Azure 記憶體或事件中樞,並使用 Log Analytics、Excel 或 Power BI 等工具進行分析。 如需詳細資訊,請參閱教學課程:監視 Azure 防火牆記錄

Azure 防火牆與市集中 NVA 有何不同?

Azure 防火牆是受控的雲端式網路安全性服務,可保護虛擬網路資源。 它是完全具狀態的防火牆即服務,具有內建的高可用性和不受限制的雲端延展性。 它與第三方安全性即服務 (SECaaS) 提供者預先整合,以增強虛擬網路和分支因特網連線的安全性。 如需詳細資訊,請參閱 Azure 網路安全性

應用程式閘道 WAF 與 Azure 防火牆有什麼不同?

應用程式閘道 WAF 可為 Web 應用程式提供集中式輸入保護,以防止常見的惡意探索和弱點。 Azure 防火牆可提供非 HTTP/S 通訊協定的輸入保護 (例如 RDP、SSH 和 FTP)、所有連接埠與通訊協定的輸出網路層級保護,以及輸出 HTTP/S 的應用程式層級保護。

網路安全性群組 (NSG) 和 Azure 防火牆有什麼不同?

Azure 防火牆可補充 NSG,以提供更佳的「深度防禦」網路安全性。 NSG 提供分散式網路層流量篩選,以限制每個訂用帳戶中虛擬網路內的流量。 Azure 防火牆提供跨訂用帳戶和虛擬網路的集中式、完整具狀態網路和應用層級保護。

AzureFirewallSubnet 上是否支援網路安全性群組 (NSG)?

Azure 防火牆是具有多個保護層的受控服務,包括具有 NIC 層級 NSG 的平臺保護(無法檢視)。 AzureFirewallSubnet 上不需要子網層級 NSG,且已停用以防止服務中斷。

具有私人端點的 Azure 防火牆新增值為何?

私人端點是 Private Link 的元件,這是一種技術,可讓您使用私人 IP 位址而非公用 IP 位址與 Azure PaaS 服務互動。 Azure 防火牆可用來防止存取公用 IP 位址,因此避免數據外流至 Azure 服務,而不利用 Private Link,以及藉由定義組織中的誰需要存取這些 Azure PaaS 服務來實作零信任原則,因為預設 Private Link 會開啟整個公司網路的網路存取。

使用 Azure 防火牆檢查私人端點流量的正確設計將取決於您的網路架構,您可以在 Azure 防火牆案例一文中找到更多詳細數據 ,以檢查目的地為私人端點的流量

具有虛擬網路服務端點的 Azure 防火牆新增值為何?

虛擬網路服務端點是私人連結的替代方案,可用來控制 Azure PaaS 服務的網路存取。 即使用戶端仍然使用公用IP位址來存取 PaaS 服務,來源子網仍會顯示出來,讓目的地 PaaS 服務可以實作篩選規則,並限制每個子網的存取。 您可以在 比較私人端點和服務端點中找到這兩種機制之間的詳細比較。

Azure 防火牆應用程式規則可用來確保不會對流氓服務執行任何數據外洩,以及實作具有超出子網層級之數據粒度的存取原則。 虛擬網路服務端點通常需要在連線至 Azure 服務的用戶端子網中啟用。 不過,使用 Azure 防火牆檢查服務端點的流量時,您必須改為在 Azure 防火牆子網中啟用對應的服務端點,並在實際用戶端的子網上停用它們(通常是輪輻虛擬網路)。 如此一來,您可以使用 Azure 防火牆中的應用程式規則來控制 Azure 工作負載將可存取的 Azure 服務。

Azure 防火牆的定價為何?

如需定價詳細數據,請參閱 Azure 防火牆定價

Azure 防火牆的已知服務限制為何?

Azure 防火牆會將客戶資料儲存在何處?

Azure 防火牆不會將客戶數據移動或儲存在部署所在的區域之外。

卡達是否支援安全虛擬中樞 (vWAN) 的 Azure 防火牆?

否,卡達目前不支援安全虛擬中樞的 Azure 防火牆(vWAN)。

支援的功能和功能

Azure 防火牆是否支援輸入流量篩選?

是,Azure 防火牆同時支援輸入和輸出流量篩選。 輸入篩選通常用於非 HTTP 通訊協定,例如 RDP、SSH 和 FTP。 針對輸入 HTTP 和 HTTPS 流量,請考慮使用 Azure Web 應用程式防火牆 (WAF) 之類的 Web 應用程式防火牆 ,或 Azure 防火牆進階的 TLS 卸除和深層封包檢查功能。

Azure 防火牆基本版是否支援強制通道?

是,Azure 防火牆版基本支援強制通道。

為什麼即使沒有任何規則允許流量,TCP Ping 或類似工具還是會連線到目標 FQDN?

TCP Ping 實際上不會連線到目標 FQDN。 除非規則明確允許,否則 Azure 防火牆會封鎖與任何目標 IP 位址或 FQDN 的連線。

在 TCP Ping 的情況下,如果沒有規則允許流量,防火牆本身就會回應用戶端的 TCP Ping 要求。 此回應無法連線到目標IP位址或 FQDN,而且不會記錄。 如果網路規則明確允許存取目標 IP 位址或 FQDN,Ping 要求就會到達目標伺服器,且其回應會轉送回用戶端。 此事件會記錄在網路規則記錄中。

Azure 防火牆是否支援 BGP 對等互連?

否,Azure 防火牆原生不支援 BGP 對等互連。 不過, Autolearn SNAT 路由功能 會透過 Azure 路由伺服器間接使用 BGP。

管理和設定

如何停止和啟動 Azure 防火牆?

您可以使用 Azure PowerShell 來解除分配及配置 Azure 防火牆。 此程式會根據組態而有所不同。

對於沒有管理 NIC 的防火牆:

# Stop the firewall
$azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "RG Name"
$azfw.Deallocate()
Set-AzFirewall -AzureFirewall $azfw

# Start the firewall
$azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "RG Name"
$vnet = Get-AzVirtualNetwork -ResourceGroupName "RG Name" -Name "VNet Name"
$publicip1 = Get-AzPublicIpAddress -Name "Public IP1 Name" -ResourceGroupName "RG Name"
$publicip2 = Get-AzPublicIpAddress -Name "Public IP2 Name" -ResourceGroupName "RG Name"
$azfw.Allocate($vnet, @($publicip1, $publicip2))
Set-AzFirewall -AzureFirewall $azfw

針對具有管理 NIC 的防火牆:

# Stop the firewall
$azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "RG Name"
$azfw.Deallocate()
Set-AzFirewall -AzureFirewall $azfw

# Start the firewall
$azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "RG Name"
$vnet = Get-AzVirtualNetwork -ResourceGroupName "RG Name" -Name "VNet Name"
$pip = Get-AzPublicIpAddress -ResourceGroupName "RG Name" -Name "azfwpublicip"
$mgmtPip = Get-AzPublicIpAddress -ResourceGroupName "RG Name" -Name "mgmtpip"
$azfw.Allocate($vnet, $pip, $mgmtPip)
Set-AzFirewall -AzureFirewall $azfw

針對安全虛擬中樞中的防火牆:

# Stop the firewall
$azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "RG Name"
$azfw.Deallocate()
Set-AzFirewall -AzureFirewall $azfw

# Start the firewall
$virtualhub = Get-AzVirtualHub -ResourceGroupName "vHUB RG Name" -Name "vHUB Name"
$azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "Firewall RG Name"
$azfw.Allocate($virtualhub.Id)
Set-AzFirewall -AzureFirewall $azfw

注意

停止和啟動防火牆時,計費會據此停止並啟動。 不過,私人IP位址可能會變更,如果已設定路由表,可能會影響連線能力。

如何在部署後設定可用性區域?

建議您在初始部署期間設定可用性區域。 不過,您可以在部署後重新設定它們::

  • 防火牆部署在虛擬網路中(安全虛擬中樞不支援)。
  • 區域支援可用性區域。
  • 所有連結的公用IP位址都會使用相同的區域進行設定。

若要重新設定可用性區域:

  1. 解除分配防火牆:
    $azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "RG Name"
    $azfw.Deallocate()
    Set-AzFirewall -AzureFirewall $azfw
    
  2. 更新區域設定並設定防火牆:
    $azfw = Get-AzFirewall -Name "FW Name" -ResourceGroupName "RG Name"
    $vnet = Get-AzVirtualNetwork -ResourceGroupName "RG Name" -Name "VNet Name"
    $pip = Get-AzPublicIpAddress -ResourceGroupName "RG Name" -Name "azfwpublicip"
    $mgmtPip = Get-AzPublicIpAddress -ResourceGroupName "RG Name" -Name "mgmtpip"
    $azfw.Allocate($vnet, $pip, $mgmtPip)
    $azfw.Zones = 1, 2, 3
    Set-AzFirewall -AzureFirewall $azfw
    

是否有任何 Azure 防火牆資源群組限制?

是的:

  • Azure 防火牆和虛擬網路必須位於相同的資源群組中。
  • 公用IP位址可以位於不同的資源群組中。
  • 所有資源(Azure 防火牆、虛擬網路、公用IP)都必須位於相同的訂用帳戶中。

布建狀態 **Failed** 代表什麼意思?

失敗的布建狀態表示一或多個後端實例上的組態更新失敗。 Azure 防火牆仍可運作,但設定可能不一致。 請重試更新,直到布建狀態變更為 [成功] 為止。

Azure 防火牆如何處理計劃性維護和非計畫性失敗?

Azure 防火牆會使用主動-主動設定搭配多個後端節點。 在計劃性維護期間,連線清空可確保正常更新。 針對非計劃性失敗,新的節點會取代失敗的節點,且連線通常會在10秒內還原。

防火牆名稱是否有字元限制?

是,防火牆名稱限制為50個字元。

為什麼 Azure 防火牆需要 /26 子網路大小?

/26 子網可確保在 Azure 防火牆布建額外的虛擬機實例時,有足夠的 IP 位址進行調整。

當服務調整時,防火牆子網路大小是否需要變更?

否,/26 子網適用於所有調整案例。

如何增加防火牆輸送量?

Azure 防火牆會根據 CPU 使用量、輸送量和聯機計數自動調整。 輸送量容量的範圍從 2.5–3 Gbps 一開始到 30 Gbps(標準 SKU)或 100 Gbps(進階 SKU)。

IP 群組支援的 IP 位址數目是否有限制?

是。 如需詳細資訊,請參閱 Azure 訂用帳戶和服務限制、配額和條件約束

是否可以將 IP 群組移至另一個資源群組?

否,目前不支援將 IP 群組移至另一個資源群組。

什麼是 Azure 防火牆的 TCP 閒置逾時?

網路防火牆的標準行為是確保 TCP 連線保持運作,並在沒有任何活動時立即關閉。 Azure 防火牆 TCP 閒置逾時時間為四分鐘。 此設定無法由使用者設定,但您可以連絡 Azure 支援人員,以增加輸入和輸出連線的閒置逾時最多達 15 分鐘。 無法變更東西向流量的閒置逾時。

如果閒置期間超過逾時值,即無法保證仍能維持 TCP 或 HTTP 工作階段。 常見作法是使用 TCP Keep-Alive。 此作法可讓連線保持長時間連線。 如需詳細資訊,請參閱 .NET 範例

是否可以在不使用公用 IP 位址的情況下部署 Azure 防火牆?

是,但您必須在強制通道模式中設定防火牆。 此設定會建立管理介面,其具有 Azure 防火牆用於其作業的公用 IP 位址。 這個公用 IP 位址適用於管理流量。 它是由 Azure 平台專用,無法用於任何其他用途。 租用戶資料路徑網路可以在不使用公用 IP 位址的情況下設定,且網際網路流量可以強制通道傳送至另一個防火牆或完全封鎖。

是否有自動備份 Azure 防火牆和原則的方式?

線上和路由

如何使用我的服務端點設定 Azure 防火牆?

若要安全存取 PaaS 服務,建議使用服務端點。 您可以選擇在 Azure 防火牆的子網路中啟用服務端點,並在已連線的支點虛擬網路上將其停用。 如此一來,您便可以享有這兩個功能的好處:服務端點安全性和集中記錄所有流量。

中樞虛擬網路中的 Azure 防火牆是否可以在多個輪幅虛擬網路之間轉寄和篩選網路流量?

是,您可以在中樞虛擬網路中,使用 Azure 防火牆來路由傳送和篩選多個輪幅虛擬網路之間的流量。 每個輪幅虛擬網路中的子網路,都必須有 UDR 指向 Azure 防火牆作為預設閘道,此案例才能正常運作。

Azure 防火牆可以在同一個虛擬網路或對等虛擬網路的子網路之間轉寄和篩選網路流量嗎?

是。 不過,設定 UDR 以重新導向相同虛擬網路中子網之間的流量需要更多注意。 雖然使用虛擬網路位址範圍做為 UDR 的目標前置詞已足夠,但這也會透過 Azure 防火牆實例,將所有流量從一部電腦路由傳送至相同子網中的另一部計算機。 若要避免這種情況,請在 UDR 中包含具有下一個躍點類型的 虛擬網路子網路由。 管理這些路由可能會很麻煩,而且容易出錯。 對於內部網路區隔的建議方法是使用網路安全性群組,而這不需要 UDR。

私人網路之間的 Azure 防火牆輸出 SNAT 嗎?

當目的地IP位址是每個私人IP範圍時,Azure 防火牆 不會 SNAT適用於專用網的 IANA RFC 1918IANA RFC 6598。 如果您的組織使用私人網路的公用 IP 位址範圍,Azure 防火牆會將流量 SNAT 轉譯到 AzureFirewallSubnet 其中一個防火牆私人 IP 位址。 您可以將 Azure 防火牆設定為不要 SNAT 公用 IP 位址範圍。 如需詳細資訊,請參閱 Azure 防火牆 SNAT 私人 IP 位址範圍

此外,應用程式規則所處理的流量一律為 SNAT。 如果要在記錄中看到 FQDN 流量的原始來源 IP 位址,可以使用具有目的地 FQDN 的網路規則。

受支援的網路虛擬設備是否強制進行通道/鏈結?

當您建立新的防火牆時,支援強制通道。 您無法為強制通道設定現有防火牆。 如需詳細資訊,請參閱 Azure 防火牆強制通道

「Azure 防火牆」必須能夠直接連線到網際網路。 如果您的 AzureFirewallSubnet 學習到透過 BGP 連至您內部部署網路的預設路由,您必須將其覆寫為 0.0.0.0/0 UDR,且 NextHopType 值必須設為 [網際網路],以保有直接網際網路連線。

如果您的設定需要對內部部署網路使用強制通道,而且您可以決定網際網路目的地的目標 IP 首碼,則您可以透過 AzureFirewallSubnet 上的使用者定義路由,將使用內部部署網路的這些範圍設定為下一個躍點。 或者,您可以使用 BGP 來定義這些路由。

萬用字元在應用程式規則的目標 URL 和目標 FQDN 中的運作方式為何?

  • URL - 星號放置在最右側或最左側時可正常運作。 如果在左側,則不能是 FQDN 的一部分。
  • FQDN - 在最左側放置星號時可正常運作。
  • 一般 - 最左邊的星號表示系統會字面比對左側任何項目,亦即多個子網域和/或可能不必要的網域名稱變化會相符,請參閱下面的範例。

範例:

類型 規則 是否支援? 正面範例
目標 URL www.contoso.com 是的 www.contoso.com
www.contoso.com/
目標 URL *.contoso.com 是的 any.contoso.com/
sub1.any.contoso.com
目標 URL *contoso.com 是的 example.anycontoso.com
sub1.example.contoso.com
contoso.com
警告:此萬用字元的使用方式也允許可能不合適/有風險的變化,例如 th3re4lcontoso.com,因此請小心使用。
目標 URL www.contoso.com/test 是的 www.contoso.com/test
www.contoso.com/test/
www.contoso.com/test?with_query=1
目標 URL www.contoso.com/test/* 是的 www.contoso.com/test/anything
注意:www.contoso.com/test不相符 (最後斜線)
目標 URL www.contoso.*/test/*
目標 URL www.contoso.com/test?example=1
目標 URL www.contoso.*
目標 URL www.*contoso.com
目標 URL www.contoso.com:8080
目標 URL *.contoso.*
目標FQDN www.contoso.com 是的 www.contoso.com
目標FQDN *.contoso.com 是的 any.contoso.com

注意:若要特別允許 contoso.com,規則便須包含 contoso.com。 否則,預設會捨棄連線,因為要求不符合任何規則。
目標FQDN *contoso.com 是的 example.anycontoso.com
contoso.com
目標FQDN www.contoso.*
目標FQDN *.contoso.*

根據預設,Azure 防火牆允許存取 Active Directory 嗎?

否。 根據預設,Azure 防火牆會封鎖 Active Directory 存取。 若要允許存取,請設定 AzureActiveDirectory 服務標籤。 如需詳細資訊,請參閱 Azure 防火牆服務標籤

我是否可以從以 Azure 防火牆威脅情報為基礎的篩選中排除 FQDN 或 IP 位址?

是,您可以使用 Azure PowerShell 來執行此動作:

# Add a Threat Intelligence allowlist to an Existing Azure Firewall.

# Create the allowlist with both FQDN and IPAddresses
$fw = Get-AzFirewall -Name "Name_of_Firewall" -ResourceGroupName "Name_of_ResourceGroup"
$fw.ThreatIntelWhitelist = New-AzFirewallThreatIntelWhitelist `
   -FQDN @("fqdn1", "fqdn2", …) -IpAddress @("ip1", "ip2", …)

# Or Update FQDNs and IpAddresses separately
$fw = Get-AzFirewall -Name $firewallname -ResourceGroupName $RG
$fw.ThreatIntelWhitelist.IpAddresses = @($fw.ThreatIntelWhitelist.IpAddresses + $ipaddresses)
$fw.ThreatIntelWhitelist.fqdns = @($fw.ThreatIntelWhitelist.fqdns + $fqdns)


Set-AzFirewall -AzureFirewall $fw

Azure 防火牆中的 SNAT TCP/UDP 連接埠重複使用行為為何?

Azure 防火牆目前會針對輸出 SNAT 流量使用 TCP/UDP 來源連接埠,且沒有閒置等候時間。 當 TCP/UDP 連線關閉時,使用的 TCP 連接埠會立即被視為可供即將到來的連線使用。

作為特定結構的因應措施,您可以使用 NAT 閘道搭配 Azure 防火牆來部署和調整,提供更廣泛的 SNAT 連接埠集區,以獲得變化性和可用性。

Azure 防火牆中的 NAT 行為為何?

特定 NAT 行為取決於防火牆的設定和所設定的 NAT 類型。 例如,防火牆具有輸入流量的 DNAT 規則,以及透過防火牆輸出流量的網路規則和應用程式規則。

如需詳細資訊,請參閱 Azure 防火牆 NAT 行為

逾時和調整

連線清空如何運作?

針對任何計劃性維護,我們都有連線清空邏輯來妥善更新後端節點。 Azure 防火牆會等待 90 秒,以便現有連線關閉。 在前 45 秒內,後端節點不接受新的連線,並在剩餘時間內對所有傳入封包回應 RST。 如果需要,用戶端可以自動重新建立與另一個後端節點的連線。

當虛擬機器擴展集規模縮減 (縮小) 或機群軟體升級期間,Azure 防火牆會如何處理 VM 執行個體關機情況?

當虛擬機器擴展集規模縮減 (縮小) 或機群軟體升級期間,Azure 防火牆 VM 執行個體可能會關機。 在這些情況下,新的連入連線會對其餘的防火牆執行個體進行負載平衡,且不會轉送到下一個防火牆執行個體。 45 秒後,防火牆會藉由傳送 TCP RST 封包開始拒絕現有的連線。 在另外 45 秒之後,防火牆 VM 會關閉。 如需詳細資訊,請參閱 Load Balancer TCP 重設和閒置逾時時間

Azure 防火牆需要多久的時間來擴增?

當平均輸送量或 CPU 耗用量為 60%,或連線數目使用量為 80% 時,Azure 防火牆會逐漸調整。 例如,當達到最大輸送量的 60% 時,就會開始擴增。 輸送量數目上限會根據 Azure 防火牆 SKU 和已啟用的功能而有所不同。 如需詳細資訊,請參閱 Azure 防火牆效能

擴增需要五到七分鐘。 在效能測試時,請確定您至少測試 10 到 15 分鐘,並開始新的連線,以利用新建立的 Azure 防火牆節點。

Azure 防火牆如何處理閒置的逾時?

當連線閒置逾時 (四分鐘沒有任何活動) 時,Azure 防火牆會藉由傳送 TCP RST 封包,正常地終止連線。