监视 Azure 防火墙日志和指标

可以使用防火墙日志来监视 Azure 防火墙。 此外,可以使用活动日志来审核对 Azure 防火墙资源执行的操作。 使用指标,可以在门户中查看性能计数器。

可通过门户访问其中部分日志。 可将日志发送到 Azure Monitor 日志、存储和事件中心,并使用 Azure Monitor 日志或其他工具(例如 Excel 和 Power BI)对其进行分析。

注意

本文最近已更新,从使用术语“Log Analytics”改为使用术语“Azure Monitor 日志”。 日志数据仍然存储在 Log Analytics 工作区中,并仍然由同一 Log Analytics 服务收集并分析。 我们正在更新术语,以便更好地反映 Azure Monitor 中的日志的角色。 有关详细信息,请参阅 Azure Monitor 术语更改

注意

建议使用 Azure Az PowerShell 模块与 Azure 交互。 请参阅安装 Azure PowerShell 以开始使用。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az

先决条件

在开始之前,应阅读 Azure 防火墙日志和指标,简要了解可用于 Azure 防火墙的诊断日志和指标。

通过 Azure 门户启用诊断日志记录

完成此过程以启用诊断日志记录后,可能需要经过几分钟的时间,数据才会显示在日志中。 如果一开始未看到任何内容,请在几分钟后重新查看。

  1. 在 Azure 门户中,打开防火墙资源组并选择防火墙。

  2. 在“监视”下,选择“诊断设置” 。

    Azure 防火墙有三个特定于服务的日志:

    • AzureFirewallApplicationRule
    • AzureFirewallNetworkRule
    • AzureFirewallDnsProxy
  3. 选择“添加诊断设置”。 “诊断设置” 页提供用于诊断日志的设置。

  4. 在此示例中,Azure Monitor 日志存储日志,因此请键入“防火墙日志分析”作为名称 。

  5. 在“日志”下面,选择“AzureFirewallApplicationRule”、“AzureFirewallNetworkRule”和“AzureFirewallDnsProxy”以收集日志。

  6. 选择“发送到 Log Analytics”以配置工作区。

  7. 选择订阅。

  8. 选择“保存”。

使用 PowerShell 启用诊断日志记录

每个 Resource Manager 资源都会自动启用活动日志记录。 必须启用诊断日志记录才能开始收集通过这些日志提供的数据。

若要通过 PowerShell 启用诊断日志记录,请使用以下步骤:

  1. 记下 Log Analytics 工作区资源 ID,其中存储了日志数据。 此值的形式为:

    /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/microsoft.operationalinsights/workspaces/<workspace name>

    可以使用订阅中的任何工作区。 可使用 Azure 门户查找此信息。 此信息位于资源的“属性”页中。

  2. 请注意防火墙的资源 ID。 此值的形式为:

    /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/azureFirewalls/<Firewall name>

    可使用门户查找此信息。

  3. 使用以下 PowerShell cmdlet 为所有日志和指标启用诊断日志记录:

       $diagSettings = @{
       Name = 'toLogAnalytics'
       ResourceId = '/subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/azureFirewalls/<Firewall name>'
       WorkspaceId = '/subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/microsoft.operationalinsights/workspaces/<workspace name>'
       }
    New-AzDiagnosticSetting  @diagSettings 
    

通过 Azure CLI 启用诊断日志记录

每个 Resource Manager 资源都会自动启用活动日志记录。 必须启用诊断日志记录才能开始收集通过这些日志提供的数据。

若要通过 Azure CLI 启用诊断日志记录,请使用以下步骤:

  1. 记下 Log Analytics 工作区资源 ID,其中存储了日志数据。 此值的形式为:

    /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/microsoft.operationalinsights/workspaces/<workspace name>

    可以使用订阅中的任何工作区。 可使用 Azure 门户查找此信息。 此信息位于资源的“属性”页中。

  2. 请注意防火墙的资源 ID。 此值的形式为:

    /subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/azureFirewalls/<Firewall name>

    可使用门户查找此信息。

  3. 使用以下 Azure CLI 命令为所有日志和指标启用诊断日志记录:

       az monitor diagnostic-settings create -n 'toLogAnalytics'
       --resource '/subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.Network/azureFirewalls/<Firewall name>'
       --workspace '/subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/microsoft.operationalinsights/workspaces/<workspace name>'
       --logs "[{\"category\":\"AzureFirewallApplicationRule\",\"Enabled\":true}, {\"category\":\"AzureFirewallNetworkRule\",\"Enabled\":true}, {\"category\":\"AzureFirewallDnsProxy\",\"Enabled\":true}]" 
       --metrics "[{\"category\": \"AllMetrics\",\"enabled\": true}]"
    

查看和分析活动日志

可使用以下任意方法查看和分析活动日志数据:

查看和分析网络与应用程序规则日志

Azure 防火墙工作簿为 Azure 防火墙数据分析提供了一个灵活的画布。 该画布可用于在 Azure 门户中创建丰富的视觉对象报表。 你可以利用跨 Azure 部署的多个防火墙,并将其组合成统一的交互式体验。

还可以连接到存储帐户并检索访问和性能日志的 JSON 日志条目。 下载 JSON 文件后,可以将其转换为 CSV 并在 Excel、Power BI 或任何其他数据可视化工具中查看。

提示

如果熟悉 Visual Studio 和更改 C# 中的常量和变量值的基本概念,则可以使用 GitHub 提供的日志转换器工具

查看指标

浏览 Azure 防火墙。 在“监视”下,选择“指标”。 若要查看可用值,请选择“指标”下拉列表 。

后续步骤

将防火墙配置为收集日志后,可以浏览 Azure Monitor 日志以查看数据。