IP-filters gebruiken
Beveiliging is een belangrijk aspect van elke IoT-oplossing op basis van Azure IoT Hub. Soms moet u expliciet de IP-adressen opgeven waarvan apparaten verbinding kunnen maken als onderdeel van uw beveiligingsconfiguratie. Met de FUNCTIE IP-filter kunt u regels configureren voor het weigeren of accepteren van verkeer van specifieke IPv4-adressen.
Wanneer gebruiken
Gebruik IP-filter om alleen verkeer te ontvangen van een opgegeven bereik van IP-adressen en alle andere te negeren. U gebruikt bijvoorbeeld uw IoT-hub met Azure Express Route om privéverbindingen te maken tussen een IoT-hub en uw on-premises infrastructuur.
Standaardinstelling
Als u naar de pagina IP-filterinstellingen van uw IoT-hub wilt gaan, selecteert u Openbare toegang tot beveiligingsinstellingen>netwerken>en kiest u vervolgens Geselecteerde IP-bereiken:
Standaard is het IP-filterraster in de portal voor een IoT-hub leeg. Deze standaardinstelling betekent dat uw hub verbindingen van alle IP-adressen blokkeert. Deze standaardinstelling is gelijk aan een regel waarmee het 0.0.0.0/0
IP-adresbereik wordt geblokkeerd.
Een IP-filterregel toevoegen of bewerken
Als u een IP-filterregel wilt toevoegen, selecteert u IP-filterregel toevoegen. Als u snel het IP-adres van uw computer wilt toevoegen, selecteert u Het IP-adres van de client toevoegen.
Vul de velden in nadat u IP-filterregel toevoegen hebt geselecteerd. Deze velden worden vooraf ingevuld als u hebt geselecteerd om het IP-adres van de client toe te voegen.
Geef een naam op voor de IP-filterregel. Deze naam moet een unieke, hoofdlettergevoelige, alfanumerieke tekenreeks van maximaal 128 tekens lang zijn. Alleen de 7-bits alfanumerieke ASCII-tekens plus de volgende speciale tekens worden geaccepteerd:
- : . + % _ # * ? ! ( ) , = @ ; '
Geef één IPv4-adres op of een blok met IP-adressen in CIDR-notatie. Bijvoorbeeld in CIDR-notatie staat 192.168.100.0/22 voor de 1024 IPv4-adressen van 192.168.100.0 tot en met 192.168.103.255.
Nadat u de velden hebt ingevuld, selecteert u Opslaan om de regel op te slaan. U ziet een waarschuwing dat de update wordt uitgevoerd.
De optie Toevoegen is uitgeschakeld wanneer u het maximum van 100 IP-filterregels bereikt.
Als u een bestaande regel wilt bewerken, selecteert u de gegevens die u wilt wijzigen, brengt u de wijziging aan en selecteert u Opslaan om uw bewerking op te slaan.
Een IP-filterregel verwijderen
Als u een IP-filterregel wilt verwijderen, selecteert u het prullenbakpictogram in die rij en selecteert u Opslaan. De regel wordt verwijderd en de wijziging wordt opgeslagen.
IP-filterregels toepassen op het ingebouwde eindpunt dat compatibel is met Event Hubs
Als u de IP-filterregels wilt toepassen op het ingebouwde eindpunt dat compatibel is met Event Hubs, schakelt u het selectievakje in naast IP-filters toepassen op het ingebouwde eindpunt?, en selecteert u Opslaan.
Notitie
Deze optie is niet beschikbaar voor gratis IoT-hubs (F1). Als u IP-filterregels wilt toepassen op het ingebouwde eindpunt, gebruikt u een betaalde IoT-hub.
Door deze optie in te schakelen, worden uw IP-filterregels gerepliceerd naar het ingebouwde eindpunt, zodat alleen vertrouwde IP-bereiken er toegang toe hebben.
Als u deze optie uitschakelt, is het ingebouwde eindpunt toegankelijk voor alle IP-adressen. Dit gedrag kan handig zijn als u wilt lezen van het eindpunt met services met bron-IP-adressen die na verloop van tijd kunnen veranderen, zoals Azure Stream Analytics.
Hoe filterregels worden toegepast
De IP-filterregels worden toegepast op serviceniveau van IoT Hub. Daarom zijn de IP-filterregels van toepassing op alle verbindingen van apparaten en back-end-apps met behulp van elk ondersteund protocol. U kunt ook kiezen of het ingebouwde event hubs-compatibele eindpunt (niet via de IoT Hub-verbindingsreeks) is gebonden aan deze regels.
Elke verbindingspoging van een IP-adres dat niet expliciet is toegestaan, ontvangt een niet-geautoriseerde 401-statuscode en -beschrijving. In het antwoordbericht wordt de IP-regel niet vermeld. Als u IP-adressen weigert, kunnen andere Azure-services, zoals Azure Stream Analytics, Azure Virtual Machines of Device Explorer in Azure Portal, niet communiceren met de IoT-hub.
Notitie
Als u Azure Stream Analytics (ASA) wilt gebruiken om berichten te lezen van een IoT-hub waarvoor IP-filter is ingeschakeld, schakelt u de optie IP-filters toepassen op de ingebouwde eindpuntoptie uit en gebruikt u vervolgens de event hub-compatibele naam en het eindpunt van uw IoT-hub om handmatig een Event Hubs-stroominvoer toe te voegen in de ASA.
Azure Portal
IP-filterregels worden ook toegepast bij het gebruik van IoT Hub via Azure Portal. Dit komt doordat API-aanroepen naar de IoT Hub-service rechtstreeks worden uitgevoerd met behulp van uw browser met uw referenties, wat consistent is met andere Azure-services. Als u toegang wilt krijgen tot IoT Hub met behulp van Azure Portal wanneer IP-filter is ingeschakeld, voegt u het IP-adres van uw computer toe aan de acceptatielijst.
Ordenen
IP-filterregels zijn regels toestaan en worden toegepast zonder volgorde. Alleen IP-adressen die u toevoegt, mogen verbinding maken met IoT Hub.
Als u bijvoorbeeld adressen in het bereik 192.168.100.0/22
wilt accepteren en alles wilt negeren, hoeft u slechts één regel toe te voegen in het raster met adresbereik 192.168.100.0/22
.
IP-filters ophalen en bijwerken met behulp van Azure CLI
De IP-filters van uw IoT-hub kunnen worden opgehaald en bijgewerkt via Azure CLI.
Voer de volgende opdracht uit om de huidige IP-filters van uw IoT Hub op te halen:
az resource show -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs
Hiermee wordt een JSON-object geretourneerd waarin uw bestaande IP-filters worden vermeld onder de properties.networkRuleSets
sleutel:
{
...
"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"
}
]
}
}
}
Als u een nieuw IP-filter voor uw IoT Hub wilt toevoegen, voert u het volgende uit:
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\"}"
Als u een bestaand IP-filter in uw IoT Hub wilt verwijderen, voert u het volgende uit:
az resource update -n <iothubName> -g <resourceGroupName> --resource-type Microsoft.Devices/IotHubs --add properties.networkRuleSets.ipRules <ipFilterIndexToRemove>
Hier komt <ipFilterIndexToRemove>
u overeen met de volgorde van IP-filters in de IoT-hubs properties.networkRuleSets.ipRules
.
IP-filters ophalen en bijwerken met behulp van Azure PowerShell
Notitie
Het wordt aanbevolen de Azure Az PowerShell-module te gebruiken om te communiceren met Azure. Zie Azure PowerShell installeren om aan de slag te gaan. Raadpleeg Azure PowerShell migreren van AzureRM naar Az om te leren hoe u naar de Azure PowerShell-module migreert.
De IP-filters van uw IoT Hub kunnen worden opgehaald en ingesteld via Azure PowerShell.
# Get your IoT Hub resource using its name and its resource group name
$iothubResource = Get-AzResource -ResourceGroupName <resourceGroupName> -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
IP-filterregels bijwerken met REST
U kunt ook het IP-filter van uw IoT Hub ophalen en wijzigen met behulp van het REST-eindpunt van de Azure-resourceprovider. Zie properties.networkRuleSets
in de createorupdate-methode.
Volgende stappen
Zie voor meer informatie over de mogelijkheden van IoT Hub: