Azure IoT DPS IP-kapcsolati szűrők használata
A biztonság minden IoT-megoldás esetében fontos szempont. A biztonsági konfiguráció részeként olykor explicit módon meg kell adni, hogy mely IP-címekről kapcsolódhatnak az eszközök. Az Azure IoT Hub Device Provisioning Service (DPS) IP-szűrő funkciója lehetővé teszi olyan szabályok konfigurálását, amelyek az adott IPv4-címekről érkező forgalom elutasításáról vagy fogadásáról rendelkeznek.
Mikor érdemes használni?
Két konkrét használati eset van, ahol hasznos lehet blokkolni egy DPS-végpont felé irányuló, adott IP-címekről érkező kapcsolatokat:
A DPS-ének csak az IP-címek egy adott tartományából érkező forgalmat szabad fogadnia, minden mást pedig el kell utasítania. A DPS-t például az Azure Express Route-nal használja privát kapcsolatok létrehozásához a DPS-példány és az eszközök között.
El kell utasítania a forgalmat az olyan IP-címekről, amelyeket a DPS rendszergazdája gyanúsnak talált.
IP-szűrési szabályok korlátozásai
Vegye figyelembe a következő korlátozásokat, ha az IP-szűrés engedélyezve van:
Előfordulhat, hogy nem tudja használni az Azure Portalt a regisztrációk kezeléséhez. Ha ez történik, hozzáadhatja egy vagy több gép IP-címét a
ipFilterRules
DPS-példányban lévő regisztrációkhoz, és kezelheti azokat az Azure CLI-vel, PowerShell-lel vagy szolgáltatás API-kkal rendelkező gépekről.Ez a forgatókönyv valószínűleg akkor fordul elő, ha IP-szűrést szeretne használni, hogy csak a kiválasztott IP-címekhez engedélyezze a hozzáférést. Ebben az esetben úgy konfigurálja a szabályokat, hogy engedélyezzenek bizonyos címeket vagy címtartományokat, valamint egy alapértelmezett szabályt, amely blokkolja az összes többi címet (0.0.0.0/0). Ez az alapértelmezett szabály megakadályozza, hogy az Azure Portal olyan műveleteket hajt végre, mint a regisztrációk kezelése a DPS-példányon. További információ: IP-szűrőszabály kiértékelése a cikk későbbi részében.
A szűrési szabályok alkalmazásának módja
Az IP-szűrési szabályokat a rendszer a DPS-példány szintjén alkalmazza. Ezért az IP-szűrési szabályok minden, támogatott protokollt használó eszköz és háttéralkalmazás felől érkező kapcsolatra érvényesek.
A DPS-példány elutasító IP-szabályának megfelelő IP-címekről érkező kapcsolódási kísérletekre a rendszer a 401-es (nem engedélyezett) állapotkódot és egy leírást ad válaszul. A válaszüzenet nem említi az IP-szabályt.
Fontos
Az IP-címek elutasítása megakadályozhatja, hogy más Azure-szolgáltatások kommunikálni tudjanak a DPS-példánnyal.
Alapértelmezett beállítás
Alapértelmezés szerint az IP-szűrés le van tiltva, és a nyilvános hálózati hozzáférés minden hálózatra van állítva. Ez az alapértelmezett beállítás azt jelenti, hogy a DPS bármilyen IP-címről fogad kapcsolatokat, vagy egy olyan szabálynak felel meg, amely elfogadja a 0.0.0.0/0 IP-címtartományt.
IP-szűrési szabály hozzáadása
IP-szűrőszabály hozzáadása:
Nyissa meg az Azure Portalt.
A bal oldali menüben vagy a portállapon válassza a Minden erőforrás lehetőséget.
Válassza ki az Eszközkiépítési szolgáltatást.
A bal oldali Gépház menüben válassza a Hálózatkezelés lehetőséget.
A Nyilvános hálózati hozzáférés csoportban válassza a Kijelölt IP-tartományok lehetőséget
Válassza a + IP-szűrőszabály hozzáadása lehetőséget.
Töltse ki a következő mezőket:
Mező Adatfolyam leírása Név Egyedi, kis- és nagybetűket nem megkülönböztető, alfanumerikus sztring legfeljebb 128 karakter hosszú. Csak az ASCII 7 bites alfanumerikus karakterei és a {'-', ':', '/', '\', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '''}
elfogadottak.Címtartomány Egyetlen IPv4-cím vagy IP-címblokk a CIDR-jelölésben. A CIDR-jelölés szerint például a 192.168.100.0/22 a 192.168.100.0 és a 192.168.103.255 közötti 1024 IPv4-címet jelöli. Action Válassza az Engedélyezés vagy a Letiltás lehetőséget. Válassza a Mentés parancsot. Egy riasztásnak kell megjelennie, amely értesíti, hogy a frissítés folyamatban van.
Megjegyzés:
+ Az IP-szűrőszabály hozzáadása le van tiltva, ha eléri a legfeljebb 100 IP-szűrési szabályt.
IP-szűrőszabály szerkesztése
Meglévő szabály szerkesztése:
Válassza ki a módosítani kívánt IP-szűrőszabály-adatokat.
Végezze el a módosítást.
Válassza a Mentés parancsot.
IP-szűrési szabály törlése
IP-szűrőszabály törlése:
Válassza a törölni kívánt IP-szabály sorában található törlés ikont.
Válassza a Mentés parancsot.
IP-szűrési szabály kiértékelése
Az IP-szűrési szabályok alkalmazása sorrendben történik. Az IP-címnek megfelelő első szabály határozza meg az elfogadási vagy elutasítási műveletet.
Ha például fogadni szeretné a 192.168.100.0/22 tartomány címeit, minden mást viszont elutasítana, a táblázat első szabályának el kell fogadnia a 192.168.100.0/22 címtartományt. A következő szabálynak el kell utasítania minden címet a 0.0.0.0/0 tartomány használatával.
Az IP-szűrési szabályok sorrendjének módosítása:
Jelölje ki az áthelyezni kívánt szabályt.
Húzza a szabályt a kívánt helyre.
Válassza a Mentés parancsot.
IP-szűrési szabályok frissítése Azure Resource Manager-sablonokkal
A DPS IP-szűrő kétféleképpen frissíthető:
Hívja meg az IoT Hub Resource REST API metódust. Az IP-szűrési szabályok REST használatával történő frissítéséről az Iot Hub Resource – Update metódus Definíciók szakaszában olvashat
IpFilterRule
.Használja az Azure Resource Manager-sablonokat. A Resource Manager-sablonok használatáról az Azure Resource Manager-sablonokban talál útmutatást. Az alábbi példák bemutatják, hogyan hozhat létre, szerkeszthet és törölhet DPS IP-szűrési szabályokat Azure Resource Manager-sablonokkal.
Megjegyzés:
Az Azure CLI és az Azure PowerShell jelenleg nem támogatja a DPS IP-szűrési szabályainak frissítését.
IP-szűrési szabály hozzáadása
A következő példasablon egy „AllowAll” nevű új IP-szűrési szabályt hoz létre, amely minden forgalmat átenged.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"iotDpsName": {
"type": "string",
"defaultValue": "[resourceGroup().name]",
"minLength": 3,
"metadata": {
"description": "Specifies the name of the IoT DPS service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for Iot DPS resource."
}
}
},
"variables": {
"iotDpsApiVersion": "2020-01-01"
},
"resources": [
{
"type": "Microsoft.Devices/provisioningServices",
"apiVersion": "[variables('iotDpsApiVersion')]",
"name": "[parameters('iotDpsName')]",
"location": "[parameters('location')]",
"sku": {
"name": "S1",
"tier": "Standard",
"capacity": 1
},
"properties": {
"IpFilterRules": [
{
"FilterName": "AllowAll",
"Action": "Accept",
"ipMask": "0.0.0.0/0"
}
]
}
}
]
}
Frissítse a sablon IP-szűrési szabályának attribútumait az igényeinek megfelelően.
Attribútum | Leírás |
---|---|
FilterName | Adjon nevet az IP-szűrési szabálynak. A névnek egyedi alfanumerikus sztringnek kell lennie, amely nem különbözteti meg a kis- és nagybetűket, és legfeljebb 128 karakterből áll. Csak az ASCII 7 bites alfanumerikus karakterei és a {'-', ':', '/', '\', '.', '+', '%', '_', '#', '*', '?', '!', '(', ')', ',', '=', '@', ';', '''} elfogadottak. |
Action | Az elfogadott értékek az IP-szűrőszabály műveleteként elfogadás vagy elutasítás . |
ipMask | Adjon meg egy egyedi IPv4-címet vagy egy IP-címblokkot CIDR-jelölésrendszer használatával. A CIDR-jelölés szerint például a 192.168.100.0/22 a 192.168.100.0 és a 192.168.103.255 közötti 1024 IPv4-címet jelöli. |
IP-szűrési szabály frissítése
A következő példasablon a korábban bemutatott „AllowAll” nevű IP-szűrési szabályt frissíti az összes forgalom elutasítása céljából.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"iotDpsName": {
"type": "string",
"defaultValue": "[resourceGroup().name]",
"minLength": 3,
"metadata": {
"description": "Specifies the name of the IoT DPS service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for Iot DPS resource."
}
}
},
"variables": {
"iotDpsApiVersion": "2020-01-01"
},
"resources": [
{
"type": "Microsoft.Devices/provisioningServices",
"apiVersion": "[variables('iotDpsApiVersion')]",
"name": "[parameters('iotDpsName')]",
"location": "[parameters('location')]",
"sku": {
"name": "S1",
"tier": "Standard",
"capacity": 1
},
"properties": {
"IpFilterRules": [
{
"FilterName": "AllowAll",
"Action": "Reject",
"ipMask": "0.0.0.0/0"
}
]
}
}
]
}
IP-szűrési szabály törlése
A következő példasablon törli a DPS-példány összes IP-szűrési szabályát.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"iotDpsName": {
"type": "string",
"defaultValue": "[resourceGroup().name]",
"minLength": 3,
"metadata": {
"description": "Specifies the name of the IoT DPS service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for Iot DPS resource."
}
}
},
"variables": {
"iotDpsApiVersion": "2020-01-01"
},
"resources": [
{
"type": "Microsoft.Devices/provisioningServices",
"apiVersion": "[variables('iotDpsApiVersion')]",
"name": "[parameters('iotDpsName')]",
"location": "[parameters('location')]",
"sku": {
"name": "S1",
"tier": "Standard",
"capacity": 1
},
"properties": {
}
}
]
}
Következő lépések
A felügyeleti DPS alaposabb megismeréséhez tekintse meg a következőket: