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


Безопасный доступ к Azure Red Hat OpenShift с помощью Azure Front Door

В этой статье объясняется, как использовать Azure Front Door Premium для защиты доступа к Azure Red Hat OpenShift.

Необходимые компоненты

Ниже перечислены необходимые компоненты.

  • У вас есть существующий кластер Azure Red Hat OpenShift. Следуйте этому руководству, чтобы создать частный кластер Azure Red Hat OpenShift.

  • Кластер настроен с помощью видимости приватного входящего трафика.

  • Используется имя личного домена, например:

    example.com

Примечание.

Начальное состояние не настроено НА DNS. Никакие приложения не предоставляются вне кластера Azure Red Hat OpenShift.

В этом разделе объясняется, как создать службу Приватный канал Azure. Служба Приватный канал Azure — это ссылка на собственную службу, которая работает на Приватный канал Azure.

Служба, которая работает за Load Balancer (цен. категория Azure, может быть включена для Приватный канал доступа, чтобы пользователи могли получать к ней частный доступ из собственных виртуальных сетей. Пользователи могут создать частную конечную точку в своей виртуальной сети и сопоставить ее с этой службой.

Дополнительные сведения о службе Приватный канал Azure и его использовании см. в Приватный канал Azure службе.

Создайте AzurePrivateLinkSubnet. Эта подсеть включает в себя netmask, которая позволяет просматривать подсеть на уровне управления и рабочих узлах кластера Azure. Не делегировать эту новую подсеть службам или настраивать конечные точки службы.

Например, если виртуальная сеть имеет значение 10.10.0.0/16 и:

  • Существующая подсеть уровня управления Azure Red Hat OpenShift = 10.10.0.0/24
  • Существующая рабочая подсеть Azure Red Hat OpenShift = 10.10.1.0/24
  • New AzurePrivateLinkSubnet = 10.10.2.0/24

Создайте Приватный канал в службе Приватный канал Azure, как описано в следующих шагах:

  1. На вкладке Основные сведения настройте следующие параметры:

    • Сведения о проекте
      • Выберите свою подписку Azure.
      • Выберите группу ресурсов, в которой развернут кластер Azure Red Hat OpenShift.
    • Сведения об экземпляре
      • Введите имя службы Приватный канал Azure, как показано в следующем примере: example-com-private-link.
      • Выберите регион для Приватный канал.
  2. На вкладке "Исходящий Параметры" выполните следующие действия.

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

    • Задайте внешний IP-адрес Load Balancer IP-адресом ip-адреса контроллера входящего трафика Azure Red Hat OpenShift, который обычно заканчивается в .254. Если вы не уверены, используйте следующую команду.

      az aro show -n <cluster-name> -g <resource-group> -o tsv --query ingressProfiles[].ip
      
    • Подсеть исходного NAT должна быть созданной вами подсетью AzurePrivateLinkSubnet.

    • В Параметры исходящего трафика элементы не должны быть изменены.

  3. На вкладке "Безопасность доступа" изменения не требуются.

    • На Кто может запрашивать доступ к службе? Выберите всех, у кого есть псевдоним.
    • Не добавляйте подписки для автоматического утверждения.
  4. На вкладке "Теги" выберите "Просмотр и создание".

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

  6. После завершения развертывания выберите "Перейти к группе ресурсов" в разделе "Дальнейшие действия".

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

Регистрация домена в Azure DNS

В этом разделе объясняется, как зарегистрировать домен в Azure DNS.

  1. Создайте глобальную зону Azure DNS для example.com.

  2. Создайте глобальную зону Azure DNS для apps.example.com.

  3. Обратите внимание на четыре сервера имен, которые присутствуют в Azure DNS для apps.example.com.

  4. Создайте новый набор записей NS в зоне example.com, которая указывает на приложения и укажите четыре сервера имен, которые присутствовали при создании зоны приложений .

Создание новой службы Azure Front Door Premium

Чтобы создать новую службу Azure Front Door Premium, выполните приведенные действия.

  1. В предложениях Microsoft Azure Compare выберите Azure Front Door и нажмите кнопку "Продолжить", чтобы создать Front Door.

  2. На странице "Создание внешнего профиля" в группе ресурсов подписки>выберите группу ресурсов, в которой развернут кластер Azure Red Hat OpenShift для размещения ресурса Azure Front Door Premium.

  3. Присвойте службе Azure Front Door Premium соответствующее имя. Например, в поле "Имя" введите следующее имя:

    example-com-frontdoor

  4. Выберите уровень "Премиум". Уровень "Премиум" является единственным выбором, поддерживающим Приватный канал Azure.

  5. Для имени конечной точки выберите имя конечной точки, подходящее для Azure Front Door.

    Для каждого развернутого приложения в Azure DNS будет создан CNAME, указывающий на это имя узла. Поэтому важно выбрать имя, которое не зависит от приложений. Для безопасности имя не должно предлагать развернутые приложения или архитектуру, например example01.

    Выбранное имя будет добавлено в домен .z01.azurefd.net .

  6. Для типа Источника выберите Custom.

  7. В поле "Имя узла источника" введите следующий заполнитель:

    changeme.com

    Этот заполнитель будет удален позже.

    На этом этапе не включите службу Приватный канал Azure, кэширование или политику Брандмауэр веб-приложений (WAF).

  8. Выберите "Проверка и создание ", чтобы создать ресурс Azure Front Door Premium, а затем дождитесь завершения процесса.

Начальная настройка Azure Front Door Premium

Чтобы настроить Azure Front Door Premium, выполните приведенные действия.

  1. В портал Azure введите развернутую службу Azure Front Door Premium.

  2. В окне Endpoint Manager измените конечную точку, выбрав пункт "Изменить конечную точку".

  3. Удалите маршрут по умолчанию, который был создан в качестве маршрута по умолчанию.

  4. Закройте окно Endpoint Manager.

  5. В окне "Группы происхождения" удалите группу источников по умолчанию, которая была названа по умолчанию -origin-group.

Предоставление маршрута приложения в Azure Red Hat OpenShift

Azure Red Hat OpenShift необходимо настроить для обслуживания приложения с тем же именем узла, что Azure Front Door будет предоставлять внешний доступ (*.apps.example.com). В нашем примере мы предоставим приложение "Резервирования" со следующим именем узла:

reservations.apps.example.com

Кроме того, создайте безопасный маршрут в Azure Red Hat OpenShift, который предоставляет имя узла.

Настроить Azure DNS

Чтобы настроить Azure DNS, выполните следующие действия.

  1. Введите зону DNS общедоступных приложений , созданную ранее.

  2. Создайте новый набор записей CNAME с именем резервирования. Этот набор записей CNAME — это псевдоним для нашей примерной конечной точки Azure Front Door:

    example01.z01.azurefd.net

Настройка Azure Front Door Premium

Ниже описано, как настроить Azure Front Door Premium.

  1. В портал Azure введите службу Azure Front Door Premium, созданную ранее:

    example-com-frontdoor

В окне "Домены":

  1. Так как все DNS-серверы размещаются в Azure, оставьте для управления DNS управляемую службу DNS.

  2. Выберите пример домена:

    apps.example.com

  3. Выберите CNAME в нашем примере:

    reservations.apps.example.com

  4. Используйте значения по умолчанию для HTTPS и минимальной версии TLS.

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

  6. Когда статистика проверки изменяется на ожидание, выберите "Ожидание".

  7. Чтобы выполнить проверку подлинности владельца зоны DNS, для состояния записи DNS нажмите кнопку "Добавить".

  8. Выберите Закрыть.

  9. Продолжайте выбирать "Обновить" , пока состояние проверки домена не изменится на "Утверждено ", а связь конечной точки изменится на "Отмена связи".

В окне "Группы происхождения":

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

  2. Присвойте группе источников соответствующее имя, например "Резервирование-приложение".

  3. Выберите " Добавить источник".

  4. Введите имя источника, например ARO-Cluster-1.

  5. Выберите тип источника custom.

  6. Введите полное доменное имя (FQDN), которое было предоставлено в кластере Azure Red Hat OpenShift, например:

    reservations.apps.example.com

  7. Включите службу Приватный канал.

  8. Введите псевдоним, полученный из службы Приватный канал Azure.

  9. Нажмите кнопку "Добавить ", чтобы вернуться в окно создания группы источника.

  10. Нажмите кнопку "Добавить", чтобы добавить группу источников и вернуться к портал Azure.

Чтобы предоставить утверждение для ссылки example-com-private-link, которая является службой Приватный канал Azure, созданной ранее, выполните следующие действия.

  1. На вкладке "Подключения к частной конечной точке" выберите поле проверка, которое теперь существует из ресурса, описанного в AFD.

  2. Выберите " Утвердить", а затем нажмите кнопку "Да ", чтобы проверить утверждение.

Завершение конфигурации Azure Front Door Premium

Ниже описано, как выполнить настройку Azure Front Door Premium.

  1. В портал Azure введите ранее созданную службу Azure Front Door Premium:

    example-com-frontdoor

  2. В окне Endpoint Manager выберите "Изменить конечную точку", чтобы изменить конечную точку.

  3. Нажмите кнопку +Добавить в разделе "Маршруты".

  4. Присвойте маршруту соответствующее имя, например Reservations-App-Route-Config.

  5. В разделе "Домены", а затем в разделе "Доступные проверенные домены" выберите полное доменное имя, например:

    reservations.apps.example.com

  6. Чтобы перенаправить HTTP-трафик для использования HTTPS, оставьте флажок "Перенаправление" проверка box.

  7. В группе "Источник" выберите "Резервирование-приложение", созданную ранее группу происхождения.

  8. При необходимости можно включить кэширование.

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

Так как Azure Front Door — это глобальная служба, приложение может занять до 30 минут. В это время вы можете создать WAF для приложения. Когда приложение переходит в режим реального времени, его можно получить с помощью URL-адреса, используемого в этом примере:

https://reservations.apps.example.com

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

Создайте azure Брандмауэр веб-приложений в Azure Front Door с помощью портал Azure: