Megosztás a következőn keresztül:


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.

IoT DPS default IP filter settings.

IP-szűrési szabály hozzáadása

IP-szűrőszabály hozzáadása:

  1. Nyissa meg az Azure Portalt.

  2. A bal oldali menüben vagy a portállapon válassza a Minden erőforrás lehetőséget.

  3. Válassza ki az Eszközkiépítési szolgáltatást.

  4. A bal oldali Gépház menüben válassza a Hálózatkezelés lehetőséget.

  5. A Nyilvános hálózati hozzáférés csoportban válassza a Kijelölt IP-tartományok lehetőséget

  6. Válassza a + IP-szűrőszabály hozzáadása lehetőséget.

    Add an IP filter rule to an IoT DPS.

  7. 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.

    After selecting Add an IP Filter rule.

  8. Válassza a Mentés parancsot. Egy riasztásnak kell megjelennie, amely értesíti, hogy a frissítés folyamatban van.

    Notification about saving an IP filter rule.

    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:

  1. Válassza ki a módosítani kívánt IP-szűrőszabály-adatokat.

    Edit an IP filter rule.

  2. Végezze el a módosítást.

  3. Válassza a Mentés parancsot.

IP-szűrési szabály törlése

IP-szűrőszabály törlése:

  1. Válassza a törölni kívánt IP-szabály sorában található törlés ikont.

    Delete an IoT DPS IP filter rule.

  2. 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:

  1. Jelölje ki az áthelyezni kívánt szabályt.

  2. Húzza a szabályt a kívánt helyre.

  3. 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ő:

  1. 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 olvashatIpFilterRule.

  2. 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: