Использование фильтрации IP-адресов

Безопасность является важным аспектом любого решения Интернета вещей на базе Центра Интернета вещей Azure. Иногда при настройке системы безопасности необходимо явно указать IP-адреса, с которых могут подключаться устройства. Функция фильтрации IP-адресов позволяет настроить правила для отклонения или приема трафика с определенных IPv4-адресов.

Когда использовать

Настройте фильтр по IP-адресам, чтобы принимать трафик только с IP-адресов из определенного диапазона и отклонять остальной трафик. Например, если Центр Интернета вещей используется в сочетании с Azure Express Route для создания частных подключений между Центром Интернета вещей и локальной инфраструктурой.

Значение по умолчанию

Чтобы перейти на страницу параметров фильтрации IP-адресов для центра Интернета вещей, выберите Сеть>Общий доступ, а затем — Выбранные диапазоны IP-адресов:

Screenshot showing how to set default IP filter settings.

По умолчанию раздел Фильтрация IP-адресов на портале для Центра Интернета вещей пуст. Этот означает, что по умолчанию центр блокирует подключения с любых IP-адресов. То есть такое значение параметра по умолчанию равноценно правилу, которое блокирует диапазон IP-адресов 0.0.0.0/0.

Добавление или изменение правила фильтрации IP-адресов

Чтобы добавить правило фильтра IP, выберите " Добавить правило ФИЛЬТРА IP". Чтобы быстро добавить IP-адрес компьютера, выберите " Добавить IP-адрес клиента".

Screenshot showing how to add an IP filter rule to an IoT hub.

После выбора параметра Добавить правило фильтрации IP-адресов заполните поля. Эти поля предварительно заполняются, если вы выбрали добавление IP-адреса клиента.

Screenshot that shows what to do after adding an IP filter rule.

  • Укажите имя правила фильтрации IP-адресов. Это имя должно быть уникальной (без учета регистра) строкой буквенно-цифровых символов длиной не более 128 символов. Допускаются только 7-битные буквенно-цифровые символы ASCII, а также следующие специальные символы: - : . + % _ # * ? ! ( ) , = @ ; '.

  • Укажите один IPv4-адрес или блок IP-адресов в нотации CIDR. Например, в нотации CIDR 192.168.100.0/22 обозначает диапазон из 1024 IPv4-адресов от 192.168.100.0 до 192.168.103.255.

После заполнения полей выберите Сохранить, чтобы сохранить правило. Появится предупреждение о том, что выполняется обновление.

Screenshot that shows notification about saving an IP filter rule.

Вариант Добавить становится неактивным, когда достигается максимальное число правил фильтрации IP-адресов (100).

Чтобы изменить существующее правило, выберите данные, которые необходимо изменить, внесите изменения, а затем выберите Сохранить, чтобы сохранить изменения.

Удаление правила фильтрации IP-адресов

Чтобы удалить правило фильтрации IP-адресов, выберите значок корзины в этой строке, а затем выберите Сохранить. Правило удаляется, а изменения сохраняются.

Screenshot showing how to delete an IoT Hub IP filter rule.

Применение правил фильтрации IP-адресов к встроенной конечной точке, совместимой с Центрами событий

Чтобы применить правила ФИЛЬТРАЦИИ IP к встроенной конечной точке, совместимой с Центрами событий, проверка поле рядом с параметром "Применить IP-фильтры к встроенной конечной точке", а затем нажмите кнопку "Сохранить".

Screenshot showing the toggle for the built-in endpoint.

Примечание.

Эта возможность недоступна для бесплатных (F1) центров Интернета вещей. Чтобы применить правила фильтрации IP-адресов ко встроенной конечной точке, используйте платный центр Интернета вещей.

При включении этого параметра правила фильтрации IP-адресов реплицируются во встроенную конечную точку, поэтому доступ к ней могут получить только доверенные диапазоны IP-адресов.

Если отключить этот параметр, встроенная конечная точка будет доступна для всех IP-адресов. Такое поведение может быть полезным, если чтение данных выполняется из конечной точки служб с исходными IP-адресами, которые могут измениться со временем, например Azure Stream Analytics.

Применение правил фильтрации

Правила фильтрации IP-адресов применяются на уровне службы Центра Интернета вещей. Поэтому они действуют для всех подключений с устройств и внутренних приложений, использующих любые поддерживаемые протоколы. Кроме того, можно выбрать, привязана ли встроенная конечная точка центров событий (не через Центр Интернета вещей строка подключения) к этим правилам.

Любые попытки входа с IP-адресов, не включенных явным образом в список разрешенных, будут получать код состояния 401 (не авторизовано) и соответствующее описание. В ответном сообщении не указывается правило фильтрации IP-адресов. Отклонение IP-адресов может препятствовать взаимодействию других служб Azure (таких как Azure Stream Analytics, виртуальные машины Azure или обозреватель устройств на портале Azure) с Центром Интернета вещей.

Примечание.

Если для чтения сообщений из Центра Интернета вещей с включенной фильтрацией IP-адресов вы хотите использовать Azure Stream Analytics (ASA), отключите параметр Применить IP-фильтры к встроенной конечной точке и примените имя центра Интернета вещей и конечную точку, совместимую с концентратором событий, чтобы вручную добавить входные данные потока Центров событий в ASA.

Заказ

Правила фильтрации IP-адресов разрешают трафик и применяются без упорядочения. Подключаться к центру Интернета вещей смогут только добавленные в них IP-адреса.

Например, если вы хотите принимать подключения с адресов из диапазона 192.168.100.0/22 и отклонять все остальные, необходимо добавить в сетку только одно правило с диапазоном адресов 192.168.100.0/22.

Портал Azure

Правила фильтрации IP-адресов также применяются при работе с центром Интернета вещей на портале Azure. Это вызвано тем, что вызовы к API службы центра Интернета вещей выполняются прямо из браузера с вашими учетными данными, как для всех остальных служб Azure. Чтобы получить доступ к центру Интернета вещей через портал Azure при включенном фильтре IP-адресов, добавьте в список разрешений IP-адрес вашего компьютера.

Получение и обновление фильтров IP-адресов с помощью Azure CLI

Фильтры IP-адресов Центра Интернета вещей можно получать и обновлять с помощью интерфейса командной строки Azure.

Чтобы получить текущие фильтры IP-адресов Центра Интернета вещей, выполните следующую команду:

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

Она возвратит объект JSON, в котором ваши имеющиеся фильтры IP-адресов отображаются в разделе 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"
                }
            ]
        }
    }
}

Чтобы добавить новый фильтр IP-адреса для Центра Интернета вещей, выполните следующую команду:

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\"}"

Чтобы удалить имеющийся фильтр IP-адреса в Центре Интернета вещей, выполните следующую команду:

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

Здесь <ipFilterIndexToRemove> должен соответствовать порядковому номеру фильтра IP-адресов в разделе properties.networkRuleSets.ipRules для центра Интернета вещей.

Получение и обновление фильтров IP-адресов с помощью Azure PowerShell

Примечание.

Мы рекомендуем использовать модуль Azure Az PowerShell для взаимодействия с Azure. Чтобы начать работу, см. статью Установка Azure PowerShell. Дополнительные сведения см. в статье Перенос Azure PowerShell с AzureRM на Az.

Фильтры IP-адресов Центра Интернета вещей можно получать и обновлять с помощью 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

Обновление правил фильтра IP-адреса с помощью REST

Вы также можете получать и изменять фильтры IP-адресов Центра Интернета вещей, используя конечную точку REST поставщика ресурсов Azure. Подробные сведения о properties.networkRuleSets см. в статье Iot Hub Resource — Create Or Update (Ресурс Центра Интернета вещей. Создание или обновление).

Следующие шаги

Для дальнейшего изучения возможностей Центра Интернета вещей см. следующие статьи: