Настройка диспетчера трафика Azure для работы с HTTPS

Я создал службу приложений Azure, и она доступна по адресу http://foo.azurewebsites.net/ и https://foo.azurewebsites.net/. Я использую только HTTPS, но не отключил другой (пока).

Затем я настраиваю Traffic Manager и добавляю это как единственную конечную точку (на данный момент).

Я выполняю свой API через http://foo.trafficmanager.net/ и он работает. Но если я попытаюсь выполнить запрос к https://foo.trafficmanager.net/, я получу ошибку SSL:

  • Через Powershell: базовое соединение было закрыто: не удалось установить доверительные отношения для безопасного канала SSL/TLS.
  • Через Curl: curl: (51) SSL: альтернативное имя субъекта сертификата не соответствует имени целевого хоста "foo.trafficmanager.net".

Итак, мне нужен отдельный сертификат SSL для использования с TrafficManager? Я использую по умолчанию тот, который поставляется с foo.azurewebsites.net, и он отлично работает из коробки.

1 ответ

Решение

Ну, вы не получите сертификат TLS для Traffic Manager. Для этого вам понадобится сертификат в самих веб-приложениях, и это не ваше дело.

Веб-приложения предоставляют вам сертификат для домена *.azurewebsites.net, но в Traffic Manager вам необходимо использовать настраиваемое доменное имя + сертификат TLS для него, установленный в каждом веб-приложении за Traffic Manager.

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

Шаг 1. Создайте сертификат, управляемый службой приложений.
1. В пункте меню настроек TLS/SSL службы приложений щелкните вкладку Сертификаты закрытого ключа.
2. В правом столбце он автоматически обнаружит конечную точку диспетчера трафика. Выберите это и нажмите "Создать".

Шаг 2 Добавьте привязку TLS/SSL
Теперь, когда у нас есть сертификат, давайте добавим привязку, чтобы ее можно было использовать.
1. Щелкните добавить привязку TLS/SSL.
2. Выберите конечную точку диспетчера трафика в раскрывающемся списке личного домена.
3. Выберите вновь созданный сертификат в раскрывающемся списке отпечатков пальцев.
4. SIN SSL в раскрывающемся списке типов.
5. Нажмите "Добавить привязку".

Шаг 3. Убедитесь, что домен теперь принимает SSL.
В пункте меню пользовательских доменов вашей службы приложений вы должны увидеть безопасное состояние SSL для конечной точки диспетчера трафика (раньше это был красный крест) после завершения привязка.

Примечание. Каждый сертификат будет действителен в течение шести месяцев, и примерно за месяц до даты истечения срока действия сертификата служба приложений обновит сертификат. [ 1 ]

Дополнительные благодарности: Нашел этот подход в комментариях к этой публикации с отзывами об Azure. Сценарий PowerShell не требуется - все можно сделать через портал Azure.

Если у вас есть CDN между Traffic Manager и вашим приложением, вам нужно выполнить несколько дополнительных шагов:

  1. Направьте Traffic Manager прямо на ваше приложение (создайте конечную точку TM с целью myappname.azurewebsites.net, временно обходя CDN). Это приведет к тому, что диспетчер трафика создаст CNAME из своего собственного URL-адреса в URL-адрес вашего сайта, доказав, что вы владеете поддоменом Traffic Manager, и разрешив Azure проверить его для вашего приложения на шаге 2.

  2. Добавьте URL-адрес mytfprofilename.trafficmanager.net в качестве настраиваемого домена для своего приложения. Azure не позволит вам сделать это, если шаг 1 не будет завершен.

  1. Добавьте свой собственный домен в сам CDN и создайте сертификат. Вы можете использовать свой собственный сертификат или сертификат, управляемый Azure.

  2. Укажите диспетчер трафика обратно на свой CDN.

Другие вопросы по тегам