Condividi tramite


Usare i filtri IP

La sicurezza è un aspetto importante di qualsiasi soluzione IoT basata su un hub IoT di Azure. Talvolta è necessario specificare in modo esplicito gli indirizzi IP da cui possono connettersi i dispositivi come parte della configurazione di sicurezza. La funzionalità Filtro IP consente di configurare regole per rifiutare o accettare il traffico da specifici indirizzi IPv4.

Quando utilizzare

Usare il filtro IP per ricevere il traffico solo da un intervallo di indirizzi IP specificato e rifiutare tutto il resto. Si usa ad esempio l'hub IoT con Azure ExpressRoute per creare connessioni private tra un hub IoT e l'infrastruttura locale.

Impostazione predefinita

Per accedere alla pagina Impostazioni filtro IP dell'hub IoT, selezionare Impostazioni di protezione>Rete>Accesso pubblico, quindi scegliere Intervalli IP selezionati:

Screenshot che mostra come settare le impostazioni predefinite del filtro IP.

Per impostazione predefinita, la griglia Filtro IP nel portale di un hub IoT è vuota. Questa impostazione predefinita indica che l'hub in uso blocca connessioni da tutti gli indirizzi IP. Questa impostazione predefinita equivale a una regola che blocca l'intervallo di indirizzi IP 0.0.0.0/0.

Aggiungere o modificare una regola del filtro IP

Per aggiungere una regola di filtro IP, selezionare Aggiungi regola di filtro IP. Per aggiungere rapidamente l'indirizzo IP del computer, selezionare Aggiungi l'indirizzo IP del client.

Screenshot che mostra come aggiungere una regola di filtro IP a un hub IoT.

Dopo aver selezionato Aggiungi regola di filtro IP, compilare i campi. Questi campi vengono precompilati se si è scelto di aggiungere l'indirizzo IP client.

Screenshot che mostra le operazioni da eseguire dopo l'aggiunta di una regola di filtro IP.

  • Specificare un nome per la regola di Filtro IP. Questo nome deve essere univoco e costituito da una stringa alfanumerica che non fa distinzione tra maiuscole e minuscole e ha una lunghezza massima di 128 caratteri. Sono ammessi solo i caratteri alfanumerici ASCII a 7 bit e i caratteri speciali seguenti: - : . + % _ # * ? ! ( ) , = @ ; '.

  • Specificare un singolo indirizzo IPv4 o un blocco di indirizzi IP in notazione CIDR. In notazione CIDR, ad esempio, 192.168.100.0/22 rappresenta gli indirizzi IPv4 1024 da 192.168.100.0 a 192.168.103.255.

Dopo aver compilato i campi, selezionare Salva per salvare la regola. Viene visualizzato un avviso che informa che l'aggiornamento è in corso.

L'opzione Aggiungi è disabilitata quando si raggiunge il numero massimo di cento regole del filtro IP.

Per modificare una regola esistente, selezionare i dati che si desidera modificare, apportare le modifiche, quindi selezionare Salva per salvare la modifica.

Eliminare una regola del filtro IP

Per eliminare una regola di filtro IP, selezionare l'icona del cestino sulla riga e quindi selezionare Salva. La regola viene rimossa e la modifica viene salvata.

Screenshot che mostra come eliminare una regola di filtro IP dell'hub IoT.

Applicare regole di filtro IP all'endpoint compatibile con Hub eventi predefinito

Per applicare le regole di filtro IP all'endpoint compatibile con Hub eventi predefinito, selezionare la casella accanto a Applicare filtri IP all'endpoint predefinito?, quindi selezionare Salva.

Screenshot che mostra l'interruttore per l'endpoint predefinito.

Nota

Questa opzione non è disponibile per gli hub IoT gratuiti (F1). Per applicare regole di filtro IP all'endpoint predefinito, usare un hub IoT a pagamento.

Abilitando questa opzione, le regole di filtro IP vengono replicate nell'endpoint predefinito, in modo che solo gli intervalli IP attendibili possano accedervi.

Se si disabilita questa opzione, l'endpoint predefinito è accessibile a tutti gli indirizzi IP. Questo comportamento può essere utile se si vuole leggere dall'endpoint con servizi con indirizzi IP di origine che potrebbero cambiare nel tempo, ad esempio Analisi di flusso di Azure.

Come vengono applicate le regole di filtro

Le regole del filtro IP vengono applicate a livello del servizio dell'hub IoT. Le regole del filtro IP vengono quindi applicate a tutte le connessioni provenienti dai dispositivi e dalle app back-end con qualsiasi protocollo supportato. È inoltre possibile scegliere se l'endpoint compatibile predefinito di Hub eventi (non tramite la stringa di connessione dell'hub IoT) è associato a queste regole.

Qualsiasi tentativo di connessione da un indirizzo IP non consentito in modo esplicito riceve un codice di stato non autorizzato 401 e una descrizione. Il messaggio di risposta non indica la regola IP. Il rifiuto di indirizzi IP può impedire l'interazione di altri servizi di Azure, ad esempio Analisi di flusso di Azure, Macchine virtuali di Azure o Device Explorer nel portale di Azure, con l'hub IoT.

Nota

Se si vuole usare Analisi di flusso di Azure per leggere i messaggi provenienti da un hub IoT con il filtro IP abilitato, disabilitare l'opzione Applica filtri IP all'endpoint predefinito, quindi usare il nome e l'endpoint compatibili con hub eventi dell'hub IoT per aggiungere manualmente un input del flusso di Hub eventi nell'Analisi di flusso di Azure.

Portale di Azure

Le regole di filtro IP vengono applicate anche quando si usa l'hub IoT tramite il portale di Azure. Ciò è dovuto al fatto che le chiamate API al servizio hub IoT vengono effettuate direttamente usando il browser con le credenziali, modalità coerente con altri servizi di Azure. Per accedere all'hub IoT usando il portale di Azure quando è abilitato il filtro IP, aggiungere l'indirizzo IP del computer all'elenco elementi consenti.

Creazione dell'ordine

Le regole di filtro IP sono regole di autorizzazione e vengono applicate senza ordinamento. Solo gli indirizzi IP che sono stati aggiunti sono autorizzati a connettersi all'hub IoT.

Ad esempio, se si desidera accettare indirizzi nell'intervallo 192.168.100.0/22 e rifiutare tutto il resto, è sufficiente aggiungere una regola nella griglia con l'intervallo di indirizzi 192.168.100.0/22.

Recuperare e aggiornare i filtri IP tramite l'interfaccia della riga di comando di Azure

I filtri IP dell'hub IoT possono essere recuperati e aggiornati tramite l'interfaccia della riga di comando di Azure.

Per recuperare i filtri IP correnti dell'hub IoT, eseguire:

az resource show -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs

Viene restituito un oggetto JSON in cui i filtri IP esistenti sono elencati sotto la chiave properties.networkRuleSets:

{
...
    "properties": {
        "networkRuleSets": {
            "defaultAction": "Deny",
            "applyToBuiltInEventHubEndpoint": true,
            "ipRules": [{
                    "filterName": "TrustedFactories",
                    "action": "Allow",
                    "ipMask": "1.2.3.4/5"
                },
                {
                    "filterName": "TrustedDevices",
                    "action": "Allow",
                    "ipMask": "1.1.1.1/1"
                }
            ]
        }
    }
}

Per aggiungere un nuovo filtro IP per l'hub IoT, eseguire:

az resource update -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs --add properties.networkRuleSets.ipRules "{\"action\":\"Allow\",\"filterName\":\"TrustedIP\",\"ipMask\":\"192.168.0.1\"}"

Per rimuovere un filtro IP esistente nell'hub IoT, eseguire:

az resource update -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs --add properties.networkRuleSets.ipRules <ipFilterIndexToRemove>

In questo caso, <ipFilterIndexToRemove> corrisponde all'ordinamento dei filtri IP nelle properties.networkRuleSets.ipRules dell'hub IoT.

Recuperare e aggiornare i filtri IP tramite 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.

I filtri IP dell'hub IoT possono essere recuperati e impostati tramite Azure PowerShell.

# Get your IoT Hub resource using its name and its resource group name
$iothubResource = Get-AzResource -ResourceGroupName <resourceGroupNmae> -ResourceName <iotHubName> -ExpandProperties

# Access existing IP filter rules
$iothubResource.Properties.networkRuleSets.ipRules |% { Write-host $_ }

# Construct a new IP filter
$filter = @{'filterName'='TrustedIP'; 'action'='Allow'; 'ipMask'='192.168.0.1'}

# Add your new IP filter rule
$iothubResource.Properties.networkRuleSets.ipRules += $filter

# Remove an existing IP filter rule using its name, e.g., 'GoodIP'
$iothubResource.Properties.networkRuleSets.ipRules = @($iothubResource.Properties.networkRuleSets.ipRules | Where 'filterName' -ne 'GoodIP')

# Update your IoT Hub resource with your updated IP filters
$iothubResource | Set-AzResource -Force

Aggiornare le regole di filtro IP tramite REST

È possibile recuperare e modificare il filtro IP dell'hub IoT anche usando l'endpoint REST del provider di risorse di Azure. Vedere properties.networkRuleSets nel metodo createorupdate.

Passaggi successivi

Per altre informazioni sulle funzionalità dell'hub IoT, vedere: