bg-tutorials

Как установить SSL-сертификат на Azure

Это руководство объясняет как установить SSL-сертификат в Microsoft Azure для веб-приложения (Azure App Service).

Как сгенерировать код CSR для Microsoft Azure

В отличие от большинства серверных платформ, Azure не позволяет генерировать CSR из своего интерфейса. Поскольку App Service — это управляемая облачная платформа, вы можете только загрузить готовый сертификат (в виде единого файла .pfx), а не создавать пару ключей непосредственно на сервере.

Поэтому вы генерируете CSR (и приватный ключ) в другом месте, а затем упаковываете всё в файл .pfx. Самый простой способ в Windows — использовать IIS Manager (Internet Information Services): создайте там CSR, завершите запрос с выпущенным сертификатом, а затем экспортируйте его (вместе с приватным ключом) в формат .pfx. Следуйте этим двум руководствам по порядку:

  • Сгенерируйте CSR и завершите запрос с помощью нашего руководства как сгенерировать CSR в IIS. Выберите шаги, которые соответствуют версии IIS на вашей машине.
  • После установки сертификата в IIS экспортируйте его в файл PFX (с приватным ключом). Именно этот файл .pfx вы загрузите в Azure.

Предпочитаете командную строку? Вы также можете создать CSR и .pfx с помощью OpenSSL. Смотрите Шаг 2 ниже для точной команды экспорта, которую требует Azure.

Как установить SSL-сертификат в Azure для веб-приложения

Прежде чем загружать сторонний SSL-сертификат в ваше веб-приложение Azure, убедитесь, что он соответствует требованиям Azure App Service:

  • Сертификат экспортирован как защищённый паролем файл .pfx, зашифрованный с использованием triple DES.
  • Приватный ключ имеет длину не менее 2048 бит.
  • Все промежуточные и корневые сертификаты включены в цепочку сертификатов.
  • Для привязки TLS/SSL сертификат содержит атрибут Extended Key Usage: Server Authentication (OID 1.3.6.1.5.5.7.3.1).

Требование к тарифному плану: не каждый тарифный план App Service поддерживает пользовательские сертификаты. Вам необходим тариф Basic, Standard, Premium или Isolated. Тарифы Free и Shared не поддерживают загрузку сертификата или привязку TLS.

Шаг 1: Подготовьте сертификат для загрузки

После того как Удостоверяющий центр выпустит ваш сертификат, скачайте ZIP-архив и распакуйте его на своём компьютере. Если серверный, промежуточный и корневой сертификаты поступили в виде отдельных файлов, сначала объедините их в один файл:

  • Откройте каждый сертификат в текстовом редакторе.
  • Создайте новый файл с именем mergedcertificate.crt.
  • Вставьте в него содержимое каждого сертификата в следующем точном порядке: серверный сертификат → промежуточный(е) сертификат(ы) → корневой сертификат.

Объединённый файл должен выглядеть следующим образом: каждый блок ограничен пятью дефисами с обеих сторон, без пустой строки между блоками:

-----BEGIN CERTIFICATE-----
(your server certificate)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(intermediate certificate)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(root certificate)
-----END CERTIFICATE-----

Шаг 2: Экспортируйте сертификат в PFX

Azure принимает только один защищённый паролем файл .pfx, который объединяет сертификат, его цепочку и приватный ключ. Если у вас уже установлен сертификат в IIS, следуйте нашему руководству как экспортировать сертификат в файл PFX в IIS.

Чтобы вместо этого создать .pfx из командной строки, используйте OpenSSL:

openssl pkcs12 -export -out myserver.pfx 
  -inkey <private-key-file> 
  -in <merged-certificate-file> 
  -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -macalg SHA1

Замените <private-key-file> на ваш приватный ключ, а <merged-certificate-file> — на объединённый сертификат из Шага 1; OpenSSL предложит вам задать пароль экспорта. Флаги -keypbe PBE-SHA1-3DES, -certpbe PBE-SHA1-3DES и -macalg SHA1 принудительно задают шифрование triple-DES, которого требует Azure. Они обязательны в OpenSSL 3.x, который больше не использует устаревшие алгоритмы 3DES по умолчанию. Без них Azure отклонит загрузку.

Шаг 3: Загрузите сертификат в App Service

Теперь добавьте файл .pfx в ваше веб-приложение через портал Azure:

  1. Войдите на портал Azure и откройте ваше App Service (веб-приложение).
  2. В левом меню перейдите в раздел Certificates → Bring your own certificates (.pfx) → Add certificate.
  3. Выберите Upload certificate в качестве источника, выберите ваш файл .pfx и введите пароль от PFX.
  4. Присвойте сертификату понятное имя, затем нажмите Validate, и после успешной проверки — Add.

Теперь сертификат отображается в разделе Bring your own certificates (.pfx), но пока не обслуживает трафик. Вам всё ещё нужно привязать его к домену.

Шаг 4: Создайте привязку TLS/SSL

Именно привязка фактически включает HTTPS для вашего пользовательского домена. Без неё загруженный сертификат ничего не делает.

  1. В том же App Service откройте раздел Custom domains и выберите Add binding (для пользовательского домена, который нужно защитить).
  2. Выберите домен и только что загруженный сертификат.
  3. Выберите тип TLS/SSL (SNI SSL для большинства приложений или IP-based SSL, если вам нужен выделенный IP-адрес на тарифе Standard или выше), затем нажмите Add binding.

Готово. Теперь ваше веб-приложение Azure обслуживает HTTPS на привязанном домене. Чтобы убедиться, что сертификат активен и цепочка полная, проверьте свой сайт с помощью нашего SSL Checker или просто откройте сайт и посмотрите на значок замка.

Где купить SSL-сертификат для Microsoft Azure

Лучшее место для покупки SSL-сертификата для Azure — SSL Dragon. Мы предлагаем конкурентные цены, регулярные скидки и выгодные предложения по всей линейке наших SSL-продуктов. Мы тщательно отобрали лучшие SSL-бренды на рынке, чтобы обеспечить вашему веб-приложению надёжное шифрование, которому доверяют браузеры. Все наши SSL-сертификаты совместимы с Microsoft Azure App Service.

Часто задаваемые вопросы

Можно ли сгенерировать CSR напрямую в Azure?

Нет. Azure App Service не генерирует CSR или приватные ключи. Вы создаёте CSR в другом месте (проще всего в IIS Manager на Windows или с помощью OpenSSL), завершаете там оформление сертификата, а затем экспортируете его в виде единого защищённого паролем файла .pfx и загружаете его в Azure.

Почему Azure требует файл .pfx вместо отдельных файлов .crt и .key?

App Service — это управляемая платформа, которая импортирует сертификат, его полную цепочку и приватный ключ как единый объект. Формат .pfx (PKCS#12) упаковывает всё это в один защищённый паролем файл, поэтому это единственный формат, который принимает загрузка. Убедитесь, что приватный ключ включён при экспорте.

Я загрузил сертификат, но сайт всё ещё показывает «не защищено». Почему?

Загрузка сертификата лишь сохраняет его; она не активирует HTTPS. Вам также необходимо создать привязку TLS/SSL в разделе Custom domains → Add binding, связав сертификат с вашим пользовательским доменом и выбрав SNI SSL или IP-based SSL. Пока привязка не создана, сертификат не используется.

Почему Azure отклоняет мой файл .pfx, экспортированный с помощью OpenSSL 3?

OpenSSL 3.x убрал устаревшие алгоритмы triple-DES из настроек по умолчанию, но Azure по-прежнему требует файл .pfx, зашифрованный с помощью 3DES. Повторите экспорт с явными флагами -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -macalg SHA1 в команде openssl pkcs12 -export (см. Шаг 2), и загрузка пройдёт успешно.

Какой тарифный план App Service мне нужен для установки SSL-сертификата?

Вам понадобится тариф Basic, Standard, Premium или Isolated. Тарифы Free и Shared не поддерживают загрузку сертификата или добавление привязки TLS/SSL, поэтому сначала обновите тариф, если ваше приложение находится на одном из этих уровней.

Сэкономьте 10% на SSL-сертификатах при заказе сегодня!

Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10

Детальное изображение дракона в полете
Написано

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