Поделиться через


Руководство по ограничению сетевого доступа к ресурсам PaaS с помощью конечных точек службы виртуальной сети

Конечные точки служб для виртуальной сети позволяют ограничить сетевой доступ к некоторым ресурсам службы Azure определенной подсетью виртуальной сети. Можно также запретить доступ к ресурсам через Интернет. Конечные точки службы предоставляют прямое подключение из виртуальной сети к поддерживаемым службам Azure. Это позволяет использовать закрытый диапазон адресов виртуальной сети для доступа к службам Azure. Трафик, поступающий к ресурсам Azure через конечные точки службы, всегда остается в магистральной сети Microsoft Azure.

Схема ресурсов Azure, созданных в руководстве.

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

  • Создание виртуальной сети с одной подсетью.
  • Добавление подсети и включение конечной точки службы.
  • Создание ресурса Azure и разрешение сетевого доступа к нему только из подсети.
  • Развертывание виртуальной машины в каждой подсети.
  • Подтверждение прав доступа к ресурсу из подсети.
  • Убедитесь, что доступ к ресурсу запрещен из подсети и Интернета.

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

Включить конечную точку службы

Создание виртуальной сети и узла Бастиона Azure

Следующая процедура создает виртуальную сеть с подсетью ресурсов, подсетью Бастиона Azure и узлом Бастиона:

  1. На портале найдите и выберите "Виртуальные сети".

  2. На странице Виртуальные сети выберите команду + Создать.

  3. На вкладке "Основы" создайте виртуальную сеть, введите или выберите следующие сведения:

    Настройка Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите Создать новый.
    Введите test-rg для имени.
    Нажмите кнопку ОК.
    Сведения об экземпляре
    Имя. Введите vnet-1.
    Область/регион Выберите регион Восточная часть США 2.

    Снимок экрана: вкладка

  4. Нажмите кнопку "Далее ", чтобы перейти на вкладку "Безопасность ".

  5. В разделе Azure Bastion выберите Включить Azure Bastion.

    Бастион использует браузер для подключения к виртуальным машинам в виртуальной сети через Secure Shell (SSH) или протокол удаленного рабочего стола (RDP) с помощью частных IP-адресов. Виртуальные машины не нуждаются в общедоступных IP-адресах, клиентском программном обеспечении или специальной конфигурации. Подробные сведения см. в статье Что такое Бастион Azure?

    Примечание.

    Почасовая оплата начинается с момента установки Bastion, независимо от использования исходящих данных. Дополнительные сведения см. в разделе "Цены и номера SKU". Если вы развертываете Бастион в рамках руководства или теста, рекомендуется удалить этот ресурс после завершения работы с ним.

  6. В Azure Bastion введите или выберите следующие сведения:

    Настройка Значение
    Имя узла Бастиона Azure Введите бастион.
    Общедоступный IP-адрес Бастиона Azure Выберите " Создать общедоступный IP-адрес".
    Введите public-ip-бастион в поле Имя.
    Нажмите кнопку ОК.

    Снимок экрана: параметры включения узла Бастиона Azure в рамках создания виртуальной сети в портал Azure.

  7. Нажмите Далее, чтобы перейти на вкладку IP-адреса.

  8. В поле адресного пространства в подсетях выберите подсеть по умолчанию .

  9. В разделе "Изменить подсеть" введите или выберите следующие сведения:

    Настройка Значение
    Назначение подсети Оставьте значение по умолчанию.
    Имя. Введите subnet-1.
    IРv4
    Диапазон адресов IPv4 Оставьте значение по умолчанию 10.0.0.0/16.
    Начальный адрес Оставьте значение по умолчанию 10.0.0.0.
    Размер Оставьте значение по умолчанию /24 (256 адресов).

    Снимок экрана: сведения о конфигурации для подсети.

  10. Выберите Сохранить.

  11. Выберите "Проверка и создание " в нижней части окна. После завершения проверки нажмите кнопку Создать.

Конечные точки службы активируются для каждой службы и каждой подсети.

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

  2. В виртуальных сетях выберите виртуальную сеть-1.

  3. В разделе "Параметры" виртуальной сети-1 выберите подсети.

  4. Выберите + Подсеть.

  5. На странице "Добавление подсети" введите или выберите следующие сведения:

    Настройка Значение
    Имя. subnet-private
    Диапазон адресов подсети Оставьте значение по умолчанию 10.0.2.0/24.
    КОНЕЧНЫЕ ТОЧКИ СЛУЖБЫ
    Службы Выберите элемент Microsoft.Storage.
  6. Выберите Сохранить.

Внимание

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

Ограничение сетевого доступа для подсети

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

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

  2. В группах безопасности сети нажмите кнопку +Создать.

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

    Настройка Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите test-rg.
    Сведения об экземпляре
    Имя. Введите nsg-storage.
    Область/регион Выберите регион Восточная часть США 2.
  4. Выберите Проверить и создать, а затем выберите Создать.

Создание правил для исходящей группы безопасности сети (NSG)

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

  2. Выберите nsg-storage.

  3. В разделе Параметры выберите Правила безопасности для исходящего трафика.

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

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

    Параметр Значение
    Оригинал Выберите Service Tag (Тег службы).
    Тег службы источника Выберите VirtualNetwork.
    Диапазоны исходных портов Оставьте значение по умолчанию *.
    Назначение Выберите Service Tag (Тег службы).
    Тег сервиса назначения Выберите Хранилище.
    Сервис Оставьте значение по умолчанию custom.
    Диапазоны портов назначения Введите 445.
    Протокол Выберите Любое.
    Действие Выберите Разрешить.
    Приоритет Оставьте значение по умолчанию 100.
    Имя. Введите allow-storage-all.
  6. Выберите Добавить.

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

    Настройка Значение
    Оригинал Выберите Service Tag (Тег службы).
    Тег службы источника Выберите VirtualNetwork.
    Диапазоны исходных портов Оставьте значение по умолчанию *.
    Назначение Выберите Service Tag (Тег службы).
    Тег службы назначения Выберите Интернет.
    Сервис Оставьте значение по умолчанию custom.
    Диапазоны портов назначения Введите *.
    Протокол Выберите Любой.
    Действие Выберите Отклонить.
    Приоритет Оставьте значение по умолчанию 110.
    Имя. Введите deny-internet-all.
  8. Выберите Добавить.

  9. В поле поиска в верхней части страницы портала найдите группу безопасности сети. В результатах поиска выберите Группы безопасности сети.

  10. Выберите nsg-storage.

  11. В разделе Параметры выберите Подсети.

  12. Нажмите + Связать.

  13. В разделе "Ассоциация подсети" выберите vnet-1 в виртуальной сети. Выберите subnet-private в разделе подсеть.

  14. Нажмите ОК.

Ограничение сетевого доступа к ресурсу

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

Создание учетной записи хранилища

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

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

  2. Выберите + Создать.

  3. На вкладке "Основные сведения" в разделе "Создание учетной записи хранения" введите или выберите следующие сведения:

    Настройка Значение
    Сведения о проекте
    Подписка Выберите свою подписку Azure.
    Группа ресурсов Выберите test-rg.
    Сведения об экземпляре
    Название учетной записи хранилища Введите storage1. Если имя недоступно, введите уникальное имя.
    Расположение Выберите регион (США) Восточная часть США 2.
    Производительность Оставьте значение по умолчанию Стандартная.
    Избыточность Выберите Локально избыточное хранилище (LRS).
  4. Выберите Review.

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

Это важно

Корпорация Майкрософт рекомендует использовать самый безопасный поток проверки подлинности. Поток проверки подлинности, описанный в этой процедуре, требует очень высокого уровня доверия к приложению и несет риски, которые отсутствуют в других потоках. Этот поток следует использовать только в том случае, если другие более безопасные потоки, такие как управляемые удостоверения, не являются жизнеспособными.

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

Создайте файловую общую папку в учетной записи хранения

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

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

  3. В хранилище данных выберите общие папки.

  4. Выберите + Общий доступ к файлам.

  5. Введите или выберите следующие сведения в новой общей папке:

    Настройки Значение
    Имя. Введите общую папку.
    Уровень Оставьте значение по умолчанию Оптимизировано для транзакций.
  6. Нажмите кнопку "Далее" — резервное копирование.

  7. Отмена выбора включения резервного копирования.

  8. Выберите Проверить и создать, а затем выберите Создать.

Ограничение сетевого доступа к подсети

По умолчанию учетные записи хранения принимают сетевые подключения от клиентов из любой сети, включая Интернет. Вы можете ограничить доступ к сети из Интернета, а также ко всем остальным подсетям во всех виртуальных сетях (за исключением подсети subnet-private в виртуальной сети vnet-1).

Ограничение сетевого доступа к подсети:

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

  2. Затем выберите учетную запись хранения.

  3. В разделе "Безопасность и сеть" выберите "Сеть".

  4. На вкладке "Брандмауэры и виртуальные сети" выберите "Включено из выбранных виртуальных сетей и IP-адресов" в доступе к общедоступной сети.

  5. В виртуальных сетях выберите + Добавить существующую виртуальную сеть.

  6. В разделе "Добавление сетей" введите или выберите следующие сведения:

    Настройка Значение
    Подписка Выберите свою подписку.
    Виртуальные сети Выберите vnet-1.
    подсети; Выберите subnet-private.

    Снимок экрана: ограничение учетной записи хранения в подсети и виртуальной сети, созданной ранее.

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

  8. Нажмите кнопку "Сохранить", чтобы сохранить конфигурации виртуальной сети.

Развертывание виртуальных машин в подсетях

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

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

Следующая процедура создает тестовую виртуальную машину с именем vm-1 в виртуальной сети.

  1. На портале найдите и выберите "Виртуальные машины".

  2. На виртуальных машинах нажмите кнопку +Создать, а затем виртуальную машину Azure.

  3. На вкладке Основные сведения страницы Создание виртуальной машины введите или выберите следующие значения параметров:

    Настройки Значение
    Сведения о проекте
    Подписка Выберите свою подписку.
    Группа ресурсов Выберите test-rg.
    Сведения об экземпляре
    Имя виртуальной машины Введите vm-1.
    Область/регион Выберите регион Восточная часть США 2.
    Параметры доступности Выберите Избыточность инфраструктуры не требуется.
    Тип безопасности Оставьте значение по умолчанию Стандартный.
    Изображение Выберите Windows Server 2022 Datacenter - x64 Gen2.
    Архитектура виртуальной машины Оставьте значение по умолчанию x64.
    Размер Выберите размер.
    Учетная запись администратора
    Тип аутентификации выберите Пароль.
    Имя пользователя Введите azureuser.
    Пароль Введите пароль.
    Подтверждение пароля Повторно введите пароль.
    Правила входящего порта
    Общедоступные входящие порты Выберите Отсутствует.
  4. Выберите вкладку "Сеть" в верхней части страницы.

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

    Настройка Значение
    Сетевой интерфейс
    Виртуальная сеть Выберите vnet-1.
    Подсеть Выберите подсеть-1 (10.0.0.0/24).
    Общедоступный IP-адрес Выберите Отсутствует.
    Группа безопасности сети сетевого адаптера Выберите Дополнительно.
    Настройка группы безопасности сети Выберите Создать новый.
    Введите nsg-1 для имени.
    Оставьте остальные значения по умолчанию и нажмите кнопку "ОК".
  6. Оставьте остальные параметры по умолчанию и нажмите кнопку "Просмотр и создание".

  7. Проверьте параметры и выберите Создать.

Примечание.

Виртуальные машины в виртуальной сети с узлом бастиона не требуют общедоступных IP-адресов. Бастион предоставляет общедоступный IP-адрес, а виртуальные машины используют частные IP-адреса для обмена данными в сети. Вы можете удалить общедоступные IP-адреса из любых виртуальных машин в размещенных виртуальных сетях бастиона. Дополнительные сведения см. в разделе "Отсообщение общедоступного IP-адреса" с виртуальной машины Azure.

Примечание.

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

IP-адрес исходящего доступа по умолчанию отключен при возникновении одного из следующих событий:

  • Общедоступный IP-адрес назначается виртуальной машине.
  • Виртуальная машина размещается в серверном пуле стандартной подсистемы балансировки нагрузки с правилами исходящего трафика или без нее.
  • Ресурс шлюза NAT Azure привязан к подсети виртуальной машины.

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

Дополнительные сведения об исходящих подключениях в Azure см. в статье об исходящем доступе по умолчанию в Azure и использовании преобразования исходящих сетевых адресов (SNAT) для исходящих подключений.

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

  1. Создайте вторую виртуальную машину, повторяющую шаги, описанные в предыдущем разделе. Замените следующие значения в разделе "Создание виртуальной машины".

    Настройка Значение
    Имя виртуальной машины Введите vm-private.
    Подсеть Выберите частную подсеть.
    Общедоступный IP-адрес Выберите Отсутствует.
    Группа безопасности сетевого адаптера Выберите Отсутствует.

    Предупреждение

    Не переходите к следующему шагу, пока развертывание не будет завершено.

Подтверждение прав доступа к учетной записи хранения

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

Получение ключа доступа к учетной записи хранения

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

  2. В учетных записях хранения выберите учетную запись хранения.

  3. В разделе "Безопасность и сеть" выберите ключи доступа.

  4. Скопируйте значение key1. Чтобы отобразить ключ, может потребоваться выбрать кнопку "Показать ".

    Снимок экрана: ключ доступа к учетной записи хранения.

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

  6. Выберите vm-private.

  7. Выберите Бастион в Операциях.

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

  9. Откройте Windows PowerShell. Используйте следующий сценарий для сопоставления общей папки Azure с диском Z.

    • Замените <storage-account-key> на ключ, который вы скопировали на предыдущем шаге.

    • Замените <storage-account-name> именем своей учетной записи хранения. В этом примере это storage8675.

     $key = @{
         String = "<storage-account-key>"
     }
     $acctKey = ConvertTo-SecureString @key -AsPlainText -Force
    
     $cred = @{
         ArgumentList = "Azure\<storage-account-name>", $acctKey
     }
     $credential = New-Object System.Management.Automation.PSCredential @cred
    
     $map = @{
         Name = "Z"
         PSProvider = "FileSystem"
         Root = "\\<storage-account-name>.file.core.windows.net\file-share"
         Credential = $credential
     }
     New-PSDrive @map
    

    PowerShell вернет выходные данные, как в следующем примере.

    Name        Used (GB)     Free (GB) Provider      Root
    ----        ---------     --------- --------      ----
    Z                                      FileSystem    \\storage8675.file.core.windows.net\f...
    

    Облачный файловый ресурс Azure успешно подключен как диск Z.

  10. Закройте подключение Bastion к vm-private.

Подтверждение запрета доступа к учетной записи хранения

Из vm-1

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

  2. Выберите vm-1.

  3. Выберите Бастион в Операциях.

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

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

    $key = @{
        String = "<storage-account-key>"
    }
    $acctKey = ConvertTo-SecureString @key -AsPlainText -Force
    
    $cred = @{
        ArgumentList = "Azure\<storage-account-name>", $acctKey
    }
    $credential = New-Object System.Management.Automation.PSCredential @cred
    
    $map = @{
        Name = "Z"
        PSProvider = "FileSystem"
        Root = "\\<storage-account-name>.file.core.windows.net\file-share"
        Credential = $credential
    }
    New-PSDrive @map
    
  6. Должно появиться следующее сообщение об ошибке:

    New-PSDrive : Access is denied
    At line:1 char:5
    +     New-PSDrive @map
    +     ~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidOperation: (Z:PSDriveInfo) [New-PSDrive], Win32Exception
        + FullyQualifiedErrorId : CouldNotMapNetworkDrive,Microsoft.PowerShell.Commands.NewPSDriveCommand
    
  7. Закройте подключение Бастиона к vm-1.

С локального компьютера

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

  2. В аккаунтах хранения выберите свой аккаунт хранения.

  3. В хранилище данных выберите общие папки.

  4. Выберите файлообмен.

  5. Выберите "Обзор " в меню слева.

  6. Должно появиться следующее сообщение об ошибке:

    Снимок экрана: сообщение об ошибке отказа в доступе.

Примечание.

Доступ запрещен, так как ваш компьютер не находится в подсети subnet-private виртуальной сети vnet-1.

Завершив использование созданных ресурсов, можно удалить группу ресурсов и все ее ресурсы.

  1. Войдите на портал Azure; найдите в поиске и выберите Группы ресурсов.

  2. На странице групп ресурсов выберите группу ресурсов test-rg.

  3. На странице test-rg выберите "Удалить группу ресурсов".

  4. Введите test-rg в поле Ввод имени группы ресурсов, чтобы подтвердить удаление, а затем нажмите кнопку "Удалить".

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

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

  • Вы включили конечную точку службы для подсети виртуальной сети.

  • Вы узнали, что конечные точки службы можно включить для ресурсов, развернутых через несколько служб Azure.

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

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

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