Registro de recursos de un grupo de seguridad de red

Los grupos de seguridad de red (NSG) incluyen reglas que permiten o deniegan el tráfico a una subred de red virtual, a una interfaz de red, o a ambas.

Al habilitar el registro para un grupo de seguridad de red, puede recopilar los siguientes tipos de información del registro de recursos:

  • Evento: se registran las entradas en las que se aplican reglas de NSG a máquinas virtuales en función de la dirección MAC.
  • Contador de regla: contiene entradas para el número de veces que se aplica cada regla de NSG para permitir o denegar el tráfico. El estado de estas reglas se recopila cada 300 segundos.

Los registros de diagnóstico solo están disponibles para los grupos de seguridad de red implementados con el modelo de implementación de Azure Resource Manager. No se puede habilitar el registro de diagnóstico para los grupos de seguridad de red implementados con el modelo de implementación clásica. Consulte Descripción de los modelos de implementación para obtener más información.

El registro de recursos se habilita por separado para cada grupo de seguridad de red para el que desee recopilar datos de diagnóstico. En caso contrario, si le interesan los registros de actividad u operativos, consulte Introducción a los registros de plataforma Azure. Si le interesa el flujo de tráfico IP a través de los grupos de seguridad de red, consulte Registros de flujo para grupos de seguridad de red.

Habilitar registro

Para habilitar el registro de recursos se pueden usar Azure Portal, Azure PowerShell o la CLI de Azure.

Azure portal

  1. Inicie sesión en Azure Portal.

  2. En el cuadro de búsqueda que aparece en la parte superior de Azure Portal, escriba grupos de seguridad de red. En los resultados de la búsqueda, seleccione Grupos de seguridad de red.

  3. Seleccione el grupo de seguridad de red para el que se va a habilitar el registro.

  4. En Supervisión, seleccione Configuración de diagnóstico y, luego, seleccione Agregar configuración de diagnóstico:

    Captura de pantalla que muestra la configuración de diagnóstico de un grupo de seguridad de red con la opción Agregar diagnóstico resaltada.

  5. En Configuración de diagnóstico, escriba un nombre, como myNsgDiagnostic.

  6. En Registros, seleccione allLogs o seleccione categorías individuales de registros. Para más información sobre cada categoría, consulte Categorías de registro.

  7. En Detalles de destino, seleccione uno o varios destinos:

    • Envío al área de trabajo de Log Analytics
    • Archivar en una cuenta de almacenamiento
    • Transmitir a un centro de eventos
    • Enviar a una solución de asociado

    Para más información, consulte Destinos del registro.

  8. Seleccione Guardar.

  9. Vea y analice los registros. Para más información, consulte Visualización y análisis de los registros.

Azure PowerShell

Nota:

Se recomienda usar el módulo Azure Az de PowerShell para interactuar con Azure. Consulte Instalación de Azure PowerShell para empezar. Para más información sobre cómo migrar al módulo Az de PowerShell, consulte Migración de Azure PowerShell de AzureRM a Az.

Puede ejecutar los comandos de esta sección en Azure Cloud Shell, o mediante la ejecución de PowerShell en el equipo. Azure Cloud Shell es un shell interactivo gratuito. Tiene las herramientas comunes de Azure preinstaladas y configuradas para usarlas en la cuenta.

Si ejecuta PowerShell desde el equipo, necesita el módulo Azure PowerShell versión 1.0.0 o posterior. Ejecute Get-Module -ListAvailable Az para buscar la versión instalada. Si necesita actualizarla, consulte Instalación del módulo de Azure PowerShell. Si ejecuta PowerShell localmente, también debe ejecutar el cmdlet Connect-AzAccount para iniciar sesión en Azure con una cuenta que tenga los permisos necesarios.

Para habilitar el registro de recursos, se necesita el identificador de un grupo de seguridad de red existente. Si no tiene un grupo de seguridad de red, cree uno mediante el cmdlet New-AzNetworkSecurityGroup.

Obtenga el grupo de seguridad de red para el que desea habilitar el registro de recursos con el cmdlet Get-AzNetworkSecurityGroup. Almacene el grupo de seguridad de red en una variable para su uso posterior. Por ejemplo, para recuperar un grupo de seguridad de red denominado myNsg que existe en un grupo de recursos denominado myResourceGroup, escriba el siguiente comando:

$Nsg=Get-AzNetworkSecurityGroup `
  -Name myNsg `
  -ResourceGroupName myResourceGroup

Puede escribir registros de recursos para diferentes tipos de destino. Para más información, consulte Destinos del registro. En este artículo, los registros se envían a un destino de área de trabajo de Log Analytics. Si no tiene un área de trabajo, puede crearla con el cmdletNew-AzOperationalInsightsWorkspace.

Recupere un área de trabajo de Log Analytics existente con el cmdlet Get-AzOperationalInsightsWorkspace. Por ejemplo, para obtener y almacenar un área de trabajo existente denominada myWorkspace en un grupo de recursos denominado myWorkspaces, escriba el siguiente comando:

$Oms=Get-AzOperationalInsightsWorkspace `
  -ResourceGroupName myWorkspaces `
  -Name myWorkspace

Existen dos categorías de registro que puede habilitar. Para más información, consulte Categorías de registro. Habilite el registro de recursos para el grupo de seguridad de red con el cmdlet New-AzDiagnosticSetting. En este ejemplo, se registran datos tanto de eventos como de categorías de contadores en el espacio de trabajo para un grupo de seguridad de red. Usa los identificadores del grupo de seguridad de red y el área de trabajo que obtuvo con los comandos anteriores:

New-AzDiagnosticSetting `
   -Name myDiagnosticSetting `
   -ResourceId $Nsg.Id `
   -WorkspaceId $Oms.ResourceId

Si desea realizar el registro en un destino que no sea un área de trabajo de Log Analytics, utilice un parámetro adecuado en el comando. Para más información, consulte Registros de recursos de Azure.

Para más información sobre la configuración, consulte New-AzDiagnosticSetting.

Vea y analice los registros. Para más información, consulte Visualización y análisis de los registros.

Azure CLI

Puede ejecutar los comandos de esta sección en Azure Cloud Shell, o mediante la ejecución de la CLI de Azure en el equipo. Azure Cloud Shell es un shell interactivo gratuito. Tiene las herramientas comunes de Azure preinstaladas y configuradas para usarlas en la cuenta.

Si ejecuta la CLI desde el equipo, necesita la versión 2.0.38 o posterior. Ejecute az --version en el equipo para encontrar la versión instalada. Si debe actualizarla, consulte Instalación de la CLI de Azure. Si ejecuta la CLI localmente, también debe ejecutar az login para iniciar sesión en Azure con una cuenta que tenga los permisos necesarios.

Para habilitar el registro de recursos, se necesita el identificador de un grupo de seguridad de red existente. Si no tiene ninguno, cree uno con az network nsg create.

Obtenga y almacene el grupo de seguridad de red para el que desea habilitar el registro de recursos con az network nsg show. Por ejemplo, para recuperar un grupo de seguridad de red denominado myNsg que existe en un grupo de recursos denominado myResourceGroup, escriba el siguiente comando:

nsgId=$(az network nsg show \
  --name myNsg \
  --resource-group myResourceGroup \
  --query id \
  --output tsv)

Puede escribir registros de recursos para diferentes tipos de destino. Para más información, consulte Destinos del registro. En este artículo, los registros se envían a un destino de área de trabajo de Log Analytics, pero esto solo es un ejemplo. Para más información, consulte Categorías de registro.

Habilite el registro de recursos para el grupo de seguridad de red con az monitor diagnostic-settings create. En este ejemplo, se registran los datos de eventos y de categorías de contadores en un área de trabajo denominada myWorkspace, que se encuentra en un grupo de recursos denominado myWorkspaces. Usa el identificador del grupo de seguridad de red que ha guardado mediante el comando anterior.

az monitor diagnostic-settings create \
  --name myNsgDiagnostics \
  --resource $nsgId \
  --logs '[ { "category": "NetworkSecurityGroupEvent", "enabled": true, "retentionPolicy": { "days": 30, "enabled": true } }, { "category": "NetworkSecurityGroupRuleCounter", "enabled": true, "retentionPolicy": { "days": 30, "enabled": true } } ]' \
  --workspace myWorkspace \
  --resource-group myWorkspaces

Si no tiene ningún área de trabajo existente, cree una mediante Azure Portal o Azure PowerShell. Existen dos categorías de registro para las que se pueden habilitar registros.

Si solo desea registrar los datos de una categoría o la otra, quite la categoría para la que no desea registrar los datos en el comando anterior. Si desea realizar el registro en un destino que no sea un área de trabajo de Log Analytics, utilice un parámetro adecuado. Para más información, consulte Registros de recursos de Azure.

Vea y analice los registros. Para más información, consulte Visualización y análisis de los registros.

Destinos de registro

Puede enviar datos de diagnóstico a las siguientes opciones:

Categorías de registro

Se escriben datos con formato JSON para las siguientes categorías de registro: evento y contador de reglas.

Evento

El registro de eventos contiene información acerca de las reglas de NSG que se aplican a las máquinas virtuales en función de su dirección MAC. Los siguientes datos se registran para cada evento. En el ejemplo siguiente, los datos se registran para una máquina virtual con la dirección IP 192.168.1.4 y una dirección MAC de 00-0D-3A-92-6A-7C:

{
    "time": "[DATE-TIME]",
    "systemId": "[ID]",
    "category": "NetworkSecurityGroupEvent",
    "resourceId": "/SUBSCRIPTIONS/[SUBSCRIPTION-ID]/RESOURCEGROUPS/[RESOURCE-GROUP-NAME]/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/[NSG-NAME]",
    "operationName": "NetworkSecurityGroupEvents",
    "properties": {
        "vnetResourceGuid":"[ID]",
        "subnetPrefix":"192.168.1.0/24",
        "macAddress":"00-0D-3A-92-6A-7C",
        "primaryIPv4Address":"192.168.1.4",
        "ruleName":"[SECURITY-RULE-NAME]",
        "direction":"[DIRECTION-SPECIFIED-IN-RULE]",
        "priority":"[PRIORITY-SPECIFIED-IN-RULE]",
        "type":"[ALLOW-OR-DENY-AS-SPECIFIED-IN-RULE]",
        "conditions":{
            "protocols":"[PROTOCOLS-SPECIFIED-IN-RULE]",
            "destinationPortRange":"[PORT-RANGE-SPECIFIED-IN-RULE]",
            "sourcePortRange":"[PORT-RANGE-SPECIFIED-IN-RULE]",
            "sourceIP":"[SOURCE-IP-OR-RANGE-SPECIFIED-IN-RULE]",
            "destinationIP":"[DESTINATION-IP-OR-RANGE-SPECIFIED-IN-RULE]"
            }
        }
}

Contador de reglas

El contador de reglas contiene información acerca de todas las reglas que se aplican a los recursos. Los datos de ejemplo siguientes se registran cada vez que se aplica una regla. En el ejemplo siguiente, los datos se registran para una máquina virtual con la dirección IP 192.168.1.4 y una dirección MAC de 00-0D-3A-92-6A-7C:

{
    "time": "[DATE-TIME]",
    "systemId": "[ID]",
    "category": "NetworkSecurityGroupRuleCounter",
    "resourceId": "/SUBSCRIPTIONS/[SUBSCRIPTION ID]/RESOURCEGROUPS/[RESOURCE-GROUP-NAME]/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/[NSG-NAME]",
    "operationName": "NetworkSecurityGroupCounters",
    "properties": {
        "vnetResourceGuid":"[ID]",
        "subnetPrefix":"192.168.1.0/24",
        "macAddress":"00-0D-3A-92-6A-7C",
        "primaryIPv4Address":"192.168.1.4",
        "ruleName":"[SECURITY-RULE-NAME]",
        "direction":"[DIRECTION-SPECIFIED-IN-RULE]",
        "type":"[ALLOW-OR-DENY-AS-SPECIFIED-IN-RULE]",
        "matchedConnections":125
        }
}

Nota:

La dirección IP de origen de la comunicación no se ha registrado. Puede habilitar el registro de flujo de NSG para un NSG, lo que registra toda la información del contador de reglas y la dirección IP de origen que ha iniciado la comunicación. Los datos del registro de flujos de NSG se escriben en una cuenta de Azure Storage. Puede analizar los datos con la funcionalidad de análisis del tráfico Azure Network Watcher.

Visualización y análisis de los registros

Si envía datos de diagnóstico a:

  • Registros de Azure Monitor: puede usar la solución de análisis de grupos de seguridad de red para obtener una información más detallada. La solución ofrece visualizaciones para de las reglas de NSG que permiten o deniegan el tráfico, por dirección MAC, de la interfaz de red de una máquina virtual.

  • Cuenta de Azure Storage: los datos se escriben en un archivo PT1H.json. Puede encontrar el:

    • Registro de eventos que se encuentra en la siguiente ruta de acceso: insights-logs-networksecuritygroupevent/resourceId=/SUBSCRIPTIONS/[ID]/RESOURCEGROUPS/[RESOURCE-GROUP-NAME-FOR-NSG]/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/[NSG NAME]/y=[YEAR]/m=[MONTH/d=[DAY]/h=[HOUR]/m=[MINUTE]
    • Registro de contador de reglas que se encuentra en la siguiente ruta de acceso: insights-logs-networksecuritygrouprulecounter/resourceId=/SUBSCRIPTIONS/[ID]/RESOURCEGROUPS/[RESOURCE-GROUP-NAME-FOR-NSG]/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/[NSG NAME]/y=[YEAR]/m=[MONTH/d=[DAY]/h=[HOUR]/m=[MINUTE]

Para aprender a ver los datos del registro de recursos, consulte Introducción a los registros de plataforma Azure.

Pasos siguientes

  • Para más información sobre los registros de actividad, consulte Introducción a los registros de la plataforma Azure.

    El registro de actividades está habilitado de forma predeterminada para los grupo de seguridad de red creados a través de cualquier modelo de implementación de Azure. Para determinar qué operaciones se completaron en los NSG del registro de actividad, busque las entradas que contengan los siguientes tipos de recursos:

    • Microsoft.ClassicNetwork/networkSecurityGroups
    • Microsoft.ClassicNetwork/networkSecurityGroups/securityRules
    • Microsoft.Network/networkSecurityGroups
    • Microsoft.Network/networkSecurityGroups/securityRules
  • Para aprender a registrar información de diagnóstico, consulte Registrar el tráfico de red hacia y desde una máquina virtual mediante Azure Portal.