Руководство по Регистрация потока входящего и исходящего сетевого трафика виртуальной машины с помощью портала Azure

Группа безопасности сети (NSG) позволяет выполнять фильтрацию входящего и исходящего трафика на виртуальную машину и с нее. Вы можете регистрировать сетевой трафик, проходящий через NSG, с помощью функции журналов потока NSG службы "Наблюдатель за сетями".

В этом руководстве описано следующее:

  • Создание виртуальной машины с помощью группы безопасности сети.
  • Включение службы "Наблюдатель за сетями" и регистрация поставщика Microsoft.Insights.
  • Включение регистрации потока трафика для NSG, используя функцию журнала потока NSG службы "Наблюдатель за сетями".
  • Скачивание зарегистрированных в журнале данных.
  • Просмотр зарегистрированных в журнале данных.

Предварительные требования

Создание виртуальной машины

  1. Войдите на портал Azure.

  2. В поле поиска в верхней части портала введите Виртуальная машина. Выберите Виртуальные машины.

  3. На странице Виртуальные машины выберите + Создать, а затем — + Виртуальная машина.

  4. В окне Создание виртуальной машины введите или выберите приведенную ниже информацию.

    Параметр Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите Создать.
    Введите myResourceGroup в поле Имя.
    Нажмите кнопку
    .
    Сведения об экземпляре
    Имя виртуальной машины Введите myVM.
    Регион Выберите регион (США) Восточная часть США.
    Параметры доступности Выберите Избыточность инфраструктуры не требуется.
    Тип безопасности Оставьте значение по умолчанию Стандартный.
    Образ Выберите Windows Server 2022 Datacenter: Azure Edition — 2-го поколения.
    Точечный экземпляр Azure Оставьте значение по умолчанию.
    Размер Выберите размер.
    Учетная запись администратора
    Authentication type (Тип проверки подлинности) Выберите Открытый ключ SSH.
    Имя пользователя Введите имя пользователя.
    Пароль Введите пароль.
    Подтверждение пароля Подтвердите пароль.
    Правила входящего порта
    Общедоступные входящие порты Оставьте значение по умолчанию Разрешить выбранные порты.
    Выбрать входящие порты Оставьте значение по умолчанию RDP (3389) .
  5. Выберите Review + create (Просмотреть и создать).

  6. Нажмите кнопку создания.

Создание виртуальной машины занимает несколько минут. Выполняйте последующие шаги только после создания виртуальной машины. Во время создания виртуальной машины на портале также создается группа безопасности сети с именем myVM-nsg и выполняется ее привязка к сетевому интерфейсу виртуальной машины.

Включение Наблюдателя за сетями

Если в регионе "Восточная часть США" уже включена служба "Наблюдатель за сетями", перейдите к разделу о регистрации поставщика Microsoft Insights.

  1. В поле поиска в верхней части портала введите Наблюдатель за сетями. В результатах поиска выберите Наблюдатель за сетями.

  2. На странице ОбзорНаблюдателя за сетями выберите + Добавить.

    Screenshot of enable network watcher in portal.

  3. В разделе Добавление Наблюдателя за сетями выберите свою подписку. Выберите (США) Восточная часть США в поле Регион.

  4. Выберите Добавить.

Регистрация поставщика Microsoft Insights

Для регистрации потока NSG требуется поставщик Microsoft.Insights. Чтобы зарегистрировать поставщик, выполните следующие шаги:

  1. В поле поиска в верхней части портала введите Подписки. В результатах поиска выберите Подписки.

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

  3. Выберите Поставщики ресурсов в разделе Параметры своей подписки.

  4. Введите Microsoft.Insights в поле фильтра.

  5. Убедитесь, что состояние поставщика — Зарегистрировано. Если состояние поставщика — Не зарегистрировано, выберите поставщика и затем выберите Зарегистрировать.

Включение журнала потоков NSG

Данные журнала потоков NSG записываются в учетную запись хранения Azure. Чтобы создать учетную запись хранения для данных журнала, выполните следующие действия.

  1. В поле поиска в верхней части портала введите Учетная запись хранения. Выбор Учетные записи хранения в результатах поиска.

  2. В разделе Учетные записи хранения выберите + Создать.

  3. В окне Создание учетной записи хранения введите или выберите приведенную ниже информацию.

    Параметр Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите myResourceGroup.
    Сведения об экземпляре
    Имя учетной записи хранения Введите имя учетной записи хранения.
    Допустимая длина — от 3 до 24 символов, может содержать только буквы нижнего регистра и цифры, должно быть уникальным среди всех учетных записей хранения Azure.
    Регион Выберите (США) Восточная часть США.
    Производительность Оставьте значение по умолчанию Стандартный.
    Избыточность Оставьте вариант по умолчанию — Геоизбыточное хранилище (GRS) .
  4. Выберите Review + create (Просмотреть и создать).

  5. Нажмите кнопку создания.

Создание учетной записи хранения может занять примерно минуту. Выполняйте последующие шаги только после создания учетной записи хранения. Во любом случае учетная запись хранения находиться в том же регионе, что и NSG.

  1. В поле поиска в верхней части портала введите Наблюдатель за сетями. В результатах поиска выберите Наблюдатель за сетями.

  2. В разделе Журналы выберите Журналы потоков NSG.

  3. В разделе Наблюдатель за сетями | Журналы потоков NSG выберите + Создать.

    Screenshot of create Network Security Group flow log.

  4. В окне Создание журнала потоков введите или выберите приведенную ниже информацию.

    Параметр Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа безопасности сети Выберите myVM-nsg.
    Имя журнала потоков Оставьте значение по умолчанию — myVM-nsg-myResourceGroup-flowlog.
    Сведения об экземпляре
    Выбор учетной записи хранения
    Подписка Выберите свою подписку.
    Учетные записи хранения Выберите учетную запись хранения, созданную на предыдущих шагах.
    Диапазон хранения (в днях) Укажите время хранения журналов.
  5. Выберите Review + create (Просмотреть и создать).

  6. Нажмите кнопку создания.

Скачивание журналов потоков

  1. В поле поиска в верхней части портала введите Учетная запись хранения. Выбор Учетные записи хранения в результатах поиска.

  2. Выберите учетную запись хранения, созданную на предыдущих шагах.

  3. В разделе Хранилище данных выберите Контейнеры.

  4. Выберите контейнер insights-logs-networksecuritygroupflowevent.

  5. В контейнере выберите файл PT1H.json в иерархии папок. Файлы журнала записываются в иерархию папок, которая соответствует следующему соглашению об именовании:

    https://{имя учетной записи хранения}.blob.core.windows.net/insights-logs-networksecuritygroupflowevent/resourceId=/SUBSCRIPTIONS/{идентификатор подписки}/RESOURCEGROUPS/{имя группы ресурсов}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/{имя NSG}/y={год}/m={месяц}/d={день}/h={час}/m=00/macAddress={MAC-адрес}/PT1H.json

  6. Выберите справа от файла PT1H.json и щелкните Скачать.

    Screenshot of download Network Security Group flow log.

Просмотр журнала потоков

Ниже приведен пример данных из файла PT1H.json для каждого зарегистрированного потока:

Событие журнала потоков версии 1

{
    "time": "2018-05-01T15:00:02.1713710Z",
    "systemId": "<Id>",
    "category": "NetworkSecurityGroupFlowEvent",
    "resourceId": "/SUBSCRIPTIONS/<Id>/RESOURCEGROUPS/MYRESOURCEGROUP/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/MYVM-NSG",
    "operationName": "NetworkSecurityGroupFlowEvents",
    "properties": {
        "Version": 1,
        "flows": [
            {
                "rule": "UserRule_default-allow-rdp",
                "flows": [
                    {
                        "mac": "000D3A170C69",
                        "flowTuples": [
                            "1525186745,192.168.1.4,10.0.0.4,55960,3389,T,I,A"
                        ]
                    }
                ]
            }
        ]
    }
}

Событие журнала потоков версии 2

{
    "time": "2018-11-13T12:00:35.3899262Z",
    "systemId": "a0fca5ce-022c-47b1-9735-89943b42f2fa",
    "category": "NetworkSecurityGroupFlowEvent",
    "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
    "operationName": "NetworkSecurityGroupFlowEvents",
    "properties": {
        "Version": 2,
        "flows": [
            {
                "rule": "DefaultRule_DenyAllInBound",
                "flows": [
                    {
                        "mac": "000D3AF87856",
                        "flowTuples": [
                            "1542110402,94.102.49.190,10.5.16.4,28746,443,U,I,D,B,,,,",
                            "1542110424,176.119.4.10,10.5.16.4,56509,59336,T,I,D,B,,,,",
                            "1542110432,167.99.86.8,10.5.16.4,48495,8088,T,I,D,B,,,,"
                        ]
                    }
                ]
            },
            {
                "rule": "DefaultRule_AllowInternetOutBound",
                "flows": [
                    {
                        "mac": "000D3AF87856",
                        "flowTuples": [
                            "1542110377,10.5.16.4,13.67.143.118,59831,443,T,O,A,B,,,,",
                            "1542110379,10.5.16.4,13.67.143.117,59932,443,T,O,A,E,1,66,1,66",
                            "1542110379,10.5.16.4,13.67.143.115,44931,443,T,O,A,C,30,16978,24,14008",
                            "1542110406,10.5.16.4,40.71.12.225,59929,443,T,O,A,E,15,8489,12,7054"
                        ]
                    }
                ]
            }
        ]
    }
}

Значение, заданное для mac в предыдущих выходных данных — MAC-адрес сетевого интерфейса, созданного при генерировании виртуальной машины. Данные, разделенные запятыми в разделе flowTuples, выглядят следующим образом:

Демонстрационные данные Что представляют собой данные Объяснение
1542110377 Метка времени Метка времени возникновения потока в формате UNIX EPOCH. В предыдущем примере дата преобразуется в 1 мая 2018 г., 2:59:05 (GMT).
10.0.0.4 Исходный IP-адрес Исходный IP-адрес, с которого поступил поток. 10.0.0.4 — частный IP-адрес виртуальной машины, которая была создана в разделе Создание виртуальной машины.
13.67.143.118 Конечный IP-адрес IP-адрес назначения, на который был отправлен поток.
44931 Исходный порт Исходный порт, с которого был отправлен поток.
443 Конечный порт Порт назначения, на который был отправлен поток. Так как трафик отправлялся на порт 443, файл был обработан с помощью правила с именем UserRule_default-allow-rdp в файле журнала этого потока.
T Протокол Какой протокол использовался для передачи потока: TCP (T) или UDP (U).
O Направление Тип трафика: входящий (I) или исходящий (O).
Объект Действие Разрешен (A) или запрещен (D) трафик.
C Состояние потока (только в версии 2) Фиксируется состояние потоков. Возможны следующие состояния B. Начать при создании потока. Статистика не предоставляется. C. Продолжить для текущего потока. Статистика предоставляется с интервалом в 5 минут. Е. Завершить после окончания потока. Статистика предоставляется.
30 Пакеты, отправленные из источника в место назначения (только в версии 2) Общее количество TCP- или UDP-пакетов, отправленных из источника в место назначения (с момента последнего обновления).
16978 Байты, отправленные из источника в место назначения (только в версии 2) Общее количество байт TCP- или UDP-пакетов, отправленных из источника в место назначения с момента последнего обновления. Байты пакетов включают в себя заголовок пакета и полезные данные.
24 Пакеты, отправленные из места назначения в источник (только в версии 2) Общее количество TCP- или UDP-пакетов, отправленных из места назначения в источник (с момента последнего обновления).
14008 Байты, отправленные из места назначения в источник (только в версии 2) Общее количество байт TCP- и UDP-пакетов, отправленных из назначения к источнику с момента последнего обновления. Байты пакетов включают в себя заголовок пакета и полезные данные.

Дальнейшие действия

В этом руководстве вы узнали, как выполнять следующие задачи:

  • Включение ведения журнала потоков NSG для группы безопасности сети
  • Скачивание и просмотр данных, записанных в файле.

Необработанные данные в JSON-файле могут быть сложными для понимания. Чтобы визуализировать данные журналов потока, можно использовать Аналитику трафика Azure и Microsoft Power BI.

Также можно включить журналы потоков NSG с помощью PowerShell, Azure CLI, REST API и шаблонов Resource Manager.

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