Administración de registros de flujo de NSG mediante la CLI de Azure
Importante
El 30 de septiembre de 2027, se retirarán los registros de flujo del grupo de seguridad de red (NSG). Como parte de esta retirada, ya no podrá crear nuevos registros de flujo de NSG a partir del 30 de junio de 2025. Se recomienda migrar a los registros de flujo de red virtual, lo que supera las limitaciones de los registros de flujo de NSG. Después de la fecha de retirada, el análisis de tráfico habilitado con los registros de flujo de NSG ya no se admitirá y se eliminarán los recursos de registros de flujo de NSG existentes en las suscripciones. Sin embargo, los registros de flujo de NSG no se eliminarán y seguirán siguiendo sus respectivas directivas de retención. Para obtener más información, consulte el anuncio oficial.
Los registros de flujo de grupos de seguridad de red son una característica de Azure Network Watcher que le permite registrar información sobre el tráfico de IP que pasa por un grupo de seguridad de red. Para obtener más información sobre el registro de flujo del grupo de seguridad de red, consulte Información general sobre registros de flujo de NSG.
En este artículo se explica cómo crear, cambiar, deshabilitar o eliminar un registro de flujo de NSG mediante la CLI de Azure. Puede aprender a administrar un registro de flujo de NSG mediante Azure Portal, PowerShell, la API de REST o la plantilla de ARM.
Requisitos previos
Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
Proveedor de Insights. Para más información, consulte Registro del proveedor de Insights.
Un grupo de seguridad de red. Si necesita crear un grupo de seguridad de red, vea Crear, cambiar o eliminar un grupo de seguridad de red.
Una cuenta de almacenamiento de Azure. Si necesita crear un cuenta de almacenamiento, vea Crear una cuenta de almacenamiento mediante PowerShell.
Azure Cloud Shell o la CLI de Azure instalada localmente.
En los pasos de este artículo se ejecutan los comandos de la CLI de Azure de forma interactiva en Azure Cloud Shell. Para ejecutar los comandos en Cloud Shell, seleccione Abrir Cloud Shell en la esquina superior derecha de un bloque de código. Seleccione Copiar para copiar el código y péguelo, a continuación, en Cloud Shell para ejecutarlo. También podrá ejecutar Cloud Shell desde Azure Portal.
También puede instalar la CLI de Azure localmente para ejecutar los comandos. Si ejecuta la CLI de Azure localmente, inicie sesión en Azure con el comando az login.
Registro del proveedor de Insights
Se debe registrar el proveedor de Microsoft.Insights para registrar correctamente el tráfico que fluye mediante un grupo de seguridad de red. Si no sabe si el proveedor Microsoft.Insights está registrado, use az provider register para registrarlo.
# Register Microsoft.Insights provider.
az provider register --namespace 'Microsoft.Insights'
Creación de un registro de flujo
Cree un registro de flujo mediante az network watcher flow-log create. El registro de flujo se crea en el grupo de recursos predeterminado de Network Watcher NetworkWatcherRG.
# Create a version 1 NSG flow log.
az network watcher flow-log create --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount'
Nota
- Si la cuenta de almacenamiento está en otra suscripción, tanto el grupo de seguridad de red como la cuenta de almacenamiento deben estar asociadas al mismo inquilino de Azure Active Directory. La cuenta que utilice para cada suscripción debe tener los permisos necesarios.
- Si la cuenta de almacenamiento está en un grupo de recursos o una suscripción distintos, debe especificar el id.completo de la cuenta de almacenamiento, no solo su nombre. Por ejemplo, si la cuenta de almacenamiento myStorageAccount está en un grupo de recursos denominado StorageRG y el grupo de seguridad de red está en el grupo de recursos myResourceGroup, debe usar
/subscriptions/{SubscriptionID}/resourceGroups/RG-Storage/providers/Microsoft.Storage/storageAccounts/myStorageAccount
para el parámetro--storage-account
en lugar demyStorageAccount
.
# Place the storage account resource ID into a variable.
sa=$(az storage account show --name 'myStorageAccount' --query 'id' --output 'tsv')
# Create a version 1 NSG flow log (the storage account is in a different resource group).
az network watcher flow-log create --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account $sa
Creación de un área de trabajo de análisis de tráfico y registro de flujo
Cree un área de trabajo de Log Analytics mediante az monitor log-analytics workspace create.
# Create a Log Analytics workspace. az monitor log-analytics workspace create --name 'myWorkspace' --resource-group 'myResourceGroup'
Cree un registro de flujo mediante az network watcher flow-log create. El registro de flujo se crea en el grupo de recursos predeterminado de Network Watcher NetworkWatcherRG.
# Create a version 1 NSG flow log and enable traffic analytics for it. az network watcher flow-log create --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --traffic-analytics 'true' --workspace 'myWorkspace'
Nota
- La cuenta de almacenamiento no puede tener reglas de red que restrinjan el acceso a la red solo a servicios de Microsoft o a redes virtuales específicas.
- Si la cuenta de almacenamiento está en otra suscripción, tanto el grupo de seguridad de red como la cuenta de almacenamiento deben estar asociadas al mismo inquilino de Azure Active Directory. La cuenta que utilice para cada suscripción debe tener los permisos necesarios.
- Si la cuenta de almacenamiento está en un grupo de recursos o una suscripción distintos, se debe usar el id. completo de la cuenta de almacenamiento. Por ejemplo, si la cuenta de almacenamiento myStorageAccount está en un grupo de recursos denominado StorageRG y el grupo de seguridad de red está en el grupo de recursos myResourceGroup, debe usar
/subscriptions/{SubscriptionID}/resourceGroups/RG-Storage/providers/Microsoft.Storage/storageAccounts/myStorageAccount
para el parámetro--storage-account
en lugar demyStorageAccount
.
# Place the storage account resource ID into a variable.
sa=$(az storage account show --name 'myStorageAccount' --query 'id' --output 'tsv')
# Create a Log Analytics workspace.
az monitor log-analytics workspace create --name 'myWorkspace' --resource-group 'myResourceGroup'
# Create a version 1 NSG flow log and enable traffic analytics for it (the storage account is in a different resource group).
az network watcher flow-log create --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account $sa --traffic-analytics 'true' --workspace 'myWorkspace'
Cambiar un registro de flujo
Puede usar az network watcher flow-log update para cambiar las propiedades de un registro de flujo. Por ejemplo, puede cambiar la versión del registro de flujo o deshabilitar el análisis de tráfico.
# Update the flow log.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --traffic-analytics 'false' --log-version '2'
Enumeración de todos los registros de flujo de una región
Use az network watcher flow-log list para enumerar todos los recursos de registro de flujo de NSG de una región determinada de la suscripción.
# Get all NSG flow logs in East US region.
az network watcher flow-log list --location 'eastus' --out table
Visualización de los detalles de un recurso de registro de flujo
Use az network watcher flow-log show para ver los detalles de un recurso de registro de flujo.
# Get the details of a flow log.
az network watcher flow-log show --name 'myFlowLog' --resource-group 'NetworkWatcherRG' --location 'eastus'
Descarga de un registro de flujo
La ubicación de almacenamiento de un registro de flujo se define en el momento de la creación. Para acceder y descargar registros de flujo desde la cuenta de almacenamiento, puede usar el Explorador de Azure Storage. Para más información, vea Introducción al Explorador de Storage.
Los archivos de registro de flujo del NSG guardados en una cuenta de almacenamiento siguen esta ruta:
https://{storageAccountName}.blob.core.windows.net/insights-logs-networksecuritygroupflowevent/resourceId=/SUBSCRIPTIONS/{subscriptionID}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/{NetworkSecurityGroupName}/y={year}/m={month}/d={day}/h={hour}/m=00/macAddress={macAddress}/PT1H.json
Para obtener información sobre la estructura de un registro de flujo, consulte Formato de registro o Registros de flujo de NSG.
Deshabilitar un registro de flujo
Para deshabilitar temporalmente un registro de flujo sin eliminarlo, use el comando az network watcher flow-log update . Al deshabilitar un registro de flujo, este se detiene para el grupo de seguridad de red asociado. Sin embargo, el recurso del registro de flujo permanece con todas sus configuraciones y asociaciones. Puede volver a habilitarlo en cualquier momento para reanudar el registro de flujo para el grupo de seguridad de red configurado.
Nota
Si el análisis de tráfico está habilitado para un registro de flujo, hay que deshabilitarlo para poder deshabilitar el registro de flujo.
# Disable traffic analytics log if it's enabled.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --traffic-analytics 'false' --workspace 'myWorkspace'
# Disable the flow log.
az network watcher flow-log update --name 'myFlowLog' --nsg 'myNSG' --resource-group 'myResourceGroup' --storage-account 'myStorageAccount' --enabled 'false'
Eliminación de un registro de flujo
Para eliminar permanentemente un registro de flujo, use el comando az network watcher flow-log delete. Al eliminar un registro de flujo, se eliminan todas sus configuraciones y asociaciones. Para volver a iniciar el registro de flujo para el mismo grupo de seguridad de red, debe crear un nuevo registro de flujo para este.
# Delete the flow log.
az network watcher flow-log delete --name 'myFlowLog' --location 'eastus' --no-wait 'true'
Nota
La eliminación de un registro de flujo no elimina los datos del registro de flujo de la cuenta de almacenamiento. Los datos de los registros de flujo almacenados en la cuenta de almacenamiento siguen la directiva de retención configurada.
Contenido relacionado
- Para descubrir cómo usar directivas integradas de Azure a fin de auditar o implementar registros de flujo de NSG, vea Administración de registros de flujo de NSG mediante Azure Policy.
- Para más información sobre el análisis de tráfico, vea Análisis de tráfico.