Condividi tramite


Registrazione delle risorse per un gruppo di sicurezza di rete

Un gruppo di sicurezza di rete (NSG) include regole che consentono o negano il traffico verso una subnet della rete virtuale, un'interfaccia di rete o entrambe.

Quando si abilita la registrazione per un gruppo di sicurezza di rete, è possibile raccogliere i tipi seguenti di informazioni sul log delle risorse:

  • Evento: vengono registrate voci relative alle regole dei gruppi di sicurezza di rete applicate alle macchine virtuali in base all'indirizzo MAC.
  • Contenitore di regole: contiene voci per sapere quante volte ogni regola dei gruppi di sicurezza di rete è stata applicata per rifiutare o consentire il traffico. Lo stato di queste regole viene raccolto ogni 300 secondi.

I log di risorse sono disponibili solo per i gruppi di sicurezza di rete distribuiti nel modello di distribuzione di Azure Resource Manager. Non è possibile abilitare la registrazione delle risorse per i gruppi di sicurezza di rete distribuiti tramite il modello di distribuzione classica. Per altre informazioni, vedere Comprendere i modelli di distribuzione.

La registrazione delle risorse viene abilitata separatamente per ogni gruppo di sicurezza di rete per cui si vogliono raccogliere dati di diagnostica. Se si è interessati invece ai log di attività o operativi, vedere Panoramica dei log della piattaforma Azure. Se si è interessati al flusso del traffico IP attraverso i gruppi di sicurezza di rete, vedere Log dei flussi per i gruppi di sicurezza di rete.

Abilitazione della registrazione

È possibile usare il portale di Azure, Azure PowerShell o l'interfaccia della riga di comando di Azure per abilitare la registrazione delle risorse.

Portale di Azure

  1. Accedere al portale di Azure.

  2. Nella casella di ricerca nella parte superiore del portale di Azure immettere Gruppi di sicurezza di rete. Selezionare Gruppi di sicurezza di rete nei risultati della ricerca.

  3. Selezionare il gruppo di sicurezza di rete per cui abilitare la registrazione.

  4. In Monitoraggio selezionare Impostazioni di diagnostica e quindi selezionare Aggiungi impostazione di diagnostica:

    Screenshot che mostra le impostazioni di diagnostica per un gruppo di sicurezza di rete con l'opzione Aggiungi impostazione di diagnostica evidenziata.

  5. In Impostazione di diagnostica immettere un nome, ad esempio myNsgDiagnostic.

  6. Per Log, selezionare allLogs o selezionare singole categorie di log. Per altre informazioni su ogni categoria, vedere Categorie di log.

  7. In Dettagli destinazione selezionare una o più destinazioni:

    • Inviare all'area di lavoro Log Analytics
    • Archivia in un account di archiviazione
    • Streaming in un hub eventi
    • Invia a soluzione partner

    Per altre informazioni, vedere Destinazioni dei log.

  8. Seleziona Salva.

  9. Visualizzare e analizzare i log. Per altre informazioni, vedere Visualizzare e analizzare i log.

Azure PowerShell

Nota

È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

È possibile eseguire i comandi in questa sezione in Azure Cloud Shell oppure in PowerShell dal computer. Azure Cloud Shell è una shell interattiva gratuita. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.

Se si esegue PowerShell dal computer, è necessario il modulo Azure PowerShell versione 1.0.0 o successiva. Eseguire Get-Module -ListAvailable Az per trovare la versione installata. Se è necessario eseguire l'aggiornamento, vedere Installare e configurare Azure PowerShell. Se si esegue PowerShell in locale, è anche necessario eseguire il cmdlet Connect-AzAccount per accedere ad Azure con un account con le autorizzazioni necessarie.

Per abilitare la registrazione delle risorse, è necessario l'ID di un gruppo di sicurezza di rete esistente. Se non si dispone di un gruppo di sicurezza di rete esistente, crearne uno usando il cmdlet New-AzNetworkSecurityGroup.

Ottenere il gruppo di sicurezza di rete per cui si vuole abilitare la registrazione delle risorse usando il cmdlet Get-AzNetworkSecurityGroup. Archiviare il gruppo di sicurezza di rete in una variabile per un uso successivo. Ad esempio, per recuperare un gruppo di sicurezza di rete denominato myNsg esistente in un gruppo di risorse denominato myResourceGroup, immettere il comando seguente:

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

È possibile scrivere i log delle risorse in tipi di destinazione diversi. Per altre informazioni, vedere Destinazioni dei log. In questo articolo i log vengono inviati a una destinazione di area di lavoro Log Analytics. Se non è disponibile un'area di lavoro esistente, è possibile crearne una con il cmdlet New-AzOperationalInsightsWorkspace.

Recuperare un'area di lavoro Log Analytics esistente con il cmdlet Get-AzOperationalInsightsWorkspace. Ad esempio, per ottenere e archiviare un'area di lavoro esistente denominata myWorkspace in un gruppo di risorse denominato myWorkspaces, immettere il comando seguente:

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

Esistono due categorie di registrazione che è possibile abilitare. Per altre informazioni, vedere Categorie di log. Abilitare la registrazione delle risorse per il gruppo di sicurezza di rete con il cmdlet New-AzDiagnosticSetting. L'esempio seguente registra i dati delle categorie di eventi e contatori nell'area di lavoro per un gruppo di sicurezza di rete. Usa gli ID per il gruppo di sicurezza di rete e l'area di lavoro ottenuti con i comandi precedenti:

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

Se si vuole accedere a una destinazione diversa da quella di un'area di lavoro Log Analytics, usare un parametro appropriato nel comando. Per altre informazioni, vedere Log delle risorse di Azure.

Per altre informazioni sulle impostazioni, vedere New-AzDiagnosticSetting.

Visualizzare e analizzare i log. Per altre informazioni, vedere Visualizzare e analizzare i log.

Interfaccia della riga di comando di Azure

È possibile eseguire i comandi in questa sezione in Azure Cloud Shell oppure l'interfaccia della riga di comando di Azure sul computer. Azure Cloud Shell è una shell interattiva gratuita. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.

Se si esegue l'interfaccia della riga di comando sul computer, è necessaria la versione 2.0.38 o successiva. Per trovare la versione installata, eseguire az --version nel computer. Se è necessario eseguire l'aggiornamento, vedere Installare l'interfaccia della riga di comando di Azure. Se si esegue l'interfaccia della riga di comando in locale, è necessario eseguire anche az login per accedere ad Azure con un account con le autorizzazioni necessarie.

Per abilitare la registrazione delle risorse, è necessario l'ID di un gruppo di sicurezza di rete esistente. Se non è disponibile un gruppo di sicurezza di rete esistente, crearne uno con az network nsg create.

Ottenere e archiviare il gruppo di sicurezza di rete per cui si vuole abilitare la registrazione di risorse con az network nsg show. Ad esempio, per recuperare un gruppo di sicurezza di rete denominato myNsg esistente in un gruppo di risorse denominato myResourceGroup, immettere il comando seguente:

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

È possibile scrivere i log delle risorse in tipi di destinazione diversi. Per altre informazioni, vedere Destinazioni dei log. In questo articolo i log vengono inviati a una destinazione di area di lavoro Log Analytics, come esempio. Per altre informazioni, vedere Categorie di log.

Abilitare la registrazione di risorse per il gruppo di sicurezza di rete con az monitor diagnostic-settings create. L'esempio seguente registra i dati delle categorie evento e contatore in un'area di lavoro esistente denominata myWorkspace, che si trova in un gruppo di risorse denominato myWorkspaces. Usa l'ID del gruppo di sicurezza di rete salvato usando il comando precedente.

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

Se non si dispone di un'area di lavoro, crearne una usando il portale di Azure o Azure PowerShell. Esistono due categorie di registrazione per cui è possibile abilitare i log.

Per registrare i dati di una sola categoria, rimuovere la categoria per la quale non si vogliono registrare i dati nel comando precedente. Se si vuole accedere a una destinazione diversa da quella di un'area di lavoro Log Analytics, usare un parametro appropriato. Per altre informazioni, vedere Log delle risorse di Azure.

Visualizzare e analizzare i log. Per altre informazioni, vedere Visualizzare e analizzare i log.

Destinazioni dei log

È possibile inviare dati di diagnostica alle opzioni seguenti:

Categorie di log

Per le categorie di log seguenti vengono scritti dati in formato JSON: contatore evento e contatore regola.

Event

Il registro eventi contiene informazioni su quali regole del gruppo di sicurezza di rete vengono applicate alle macchine virtuali, in base all'indirizzo MAC. I dati seguenti vengono registrati per ogni evento. Nell'esempio seguente, i dati vengono registrati per una macchina virtuale con indirizzo IP 192.168.1.4 e indirizzo MAC 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]"
            }
        }
}

Contatore regole

Il log contatore regole contiene informazioni su ogni regola applicata alle risorse. I dati di esempio seguenti vengono registrati ogni volta che viene applicata una regola. Nell'esempio seguente, i dati vengono registrati per una macchina virtuale con indirizzo IP 192.168.1.4 e indirizzo MAC 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

L'indirizzo IP di origine per la comunicazione non viene registrato. È possibile abilitare la registrazione dei flussi per i gruppi di sicurezza di rete per un gruppo di sicurezza di rete, che registra tutte le informazioni sul contatore regole, oltre all'indirizzo IP di origine che ha avviato la comunicazione. I dati del log del flusso di NSG vengono scritti in un account di archiviazione di Azure. È possibile analizzare i dati con la funzionalità di analisi del traffico di Azure Network Watcher.

Visualizzare e analizzare i log

Se si inviano i dati di diagnostica a:

  • Log Monitoraggio di Azure: è possibile usare la soluzione di analisi del gruppo di sicurezza di rete per ottenere ulteriori informazioni dettagliate. La soluzione offre visualizzazioni per le regole dei gruppi di sicurezza di rete che consentono o negano il traffico, in base all'indirizzo MAC, dell'interfaccia di rete in una macchina virtuale.

  • Account di archiviazione Azure: i dati vengono scritti in un file PT1H.json. È possibile trovare il:

    • Registro eventi nel percorso seguente: 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]
    • Log contatore regole nel percorso seguente: 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]

Per informazioni su come visualizzare i dati dei log delle risorse, vedere Panoramica dei log della piattaforma Azure.

Passaggi successivi

  • Per altre informazioni sulla registrazione delle attività, vedere Panoramica dei log della piattaforma Azure.

    La registrazione delle attività è abilitata per impostazione predefinita per i gruppi di sicurezza di rete creati tramite qualsiasi modello di distribuzione di Azure. Per determinare quali operazioni sono state completate nei NGS nel log attività, cercare le voci che contengono i tipi di risorsa seguenti:

    • Microsoft.ClassicNetwork/networkSecurityGroups
    • Microsoft.ClassicNetwork/networkSecurityGroups/securityRules
    • Microsoft.Network/networkSecurityGroups
    • Microsoft.Network/networkSecurityGroups/securityRules
  • Per informazioni su come registrare le informazioni di diagnostica, vedere Registrare il traffico di rete da e verso una macchina virtuale usando il portale di Azure.