bg-tutorials

Как создать CSR в Microsoft Exchange

Это руководство показывает вам как сформировать CSR (запрос на подпись сертификата) в Microsoft Exchange Server. Оно охватывает текущие релизы (Exchange Server Subscription Edition и Exchange 2019 CU15+) с использованием как PowerShell, так и Exchange Admin Center, путь только через PowerShell, необходимый для Exchange 2016 (CU23+) и Exchange 2019 с CU12 по CU14, а также архивные шаги для устаревших Exchange 2013, 2010, 2007 и 2003.

Данное руководство применимо только к Microsoft Exchange Server (локальное развёртывание). Если вы используете Exchange Online в составе Microsoft 365, вам не нужно формировать CSR: TLS для ваших конечных точек *.mail.protection.outlook.com и *.outlook.com управляется Microsoft и не может быть заменён сторонним сертификатом.

Какой метод мне использовать?

Exchange по-разному управляет сертификатами в разных версиях. Microsoft удалила параметры сертификатов из Exchange Admin Center (EAC) в Exchange 2016 CU23 (сентябрь 2021 года) и Exchange 2019 CU12 (апрель 2022 года), а затем восстановила их в Exchange 2019 CU15 (февраль 2025 года) и в Exchange Server Subscription Edition (выпущен 1 июля 2025 года). Проверьте свою версию и CU перед началом работы.

Чтобы узнать свою сборку, выполните следующую команду в Exchange Management Shell:

Get-ExchangeServer | Format-List Name,AdminDisplayVersion
Версия ExchangeМетод CSRПримечания
Exchange Server SE (2025+)EAC или PowerShellТекущий продукт. Эквивалентен по коду 2019 CU15.
Exchange 2019 CU15EAC или PowerShellПоследний CU для 2019. Мастер сертификатов EAC восстановлен.
Exchange 2019 с CU12 по CU14Только PowerShellПараметры сертификатов EAC удалены обновлением KB5014278.
Exchange 2016 CU23+Только PowerShellПараметры сертификатов EAC удалены; основная поддержка прекращена с 14 октября 2025 года.
Exchange 2013EAC или PowerShellПоддержка прекращена (11 апреля 2023 года). Выполните миграцию, когда это возможно.
Exchange 2010, 2007, 2003Устаревший GUI / shellПоддержка прекращена давно. Только для архивной справки.

Выберите раздел ниже, соответствующий вашей версии:

Формирование CSR в Exchange Server SE, Exchange 2019 и Exchange 2016

Приведённый ниже метод PowerShell работает во всех поддерживаемых версиях, начиная с Exchange 2013 и до Exchange Server SE, и это единственный поддерживаемый метод в Exchange 2016 (CU23+) и Exchange 2019 с CU12 по CU14. В Exchange Server SE и Exchange 2019 CU15+ вы также можете использовать мастер EAC, о котором рассказано после раздела PowerShell.

Метод 1: PowerShell (Exchange Management Shell)

Откройте Exchange Management Shell от имени администратора на сервере Exchange, который будет хранить закрытый ключ. Выполните командлет New-ExchangeCertificate с параметром -GenerateRequest, затем сохраните полученный текст CSR в файл с помощью Set-Content. Такая двухшаговая схема необходима, поскольку Microsoft удалила параметр -RequestFile из этого командлета в Exchange 2016 CU23 и Exchange 2019 CU12 (обновление безопасности KB5014278). Более старые руководства, где напрямую передаётся -RequestFile или -Path, не будут работать на текущих сборках.

New-ExchangeCertificate `
  -GenerateRequest `
  -SubjectName "C=US, S=California, L=San Francisco, O=Example Inc, OU=IT, CN=mail.example.com" `
  -DomainName mail.example.com, autodiscover.example.com `
  -KeySize 2048 `
  -PrivateKeyExportable $true `
  | Set-Content -Path "C:certsexchange.req"

Измените значения в соответствии со своей средой:

  • C — двухбуквенный код страны (US, GB, DE и так далее).
  • S — полное название штата или региона (без сокращений).
  • L — полное название города или населённого пункта.
  • O — юридически зарегистрированное название компании.
  • OU — отдел, часто «IT». Это поле необязательное.
  • CN — основное полное доменное имя, которое будет защищено сертификатом, например mail.example.com.
  • -DomainName — список через запятую всех имён хостов, которые должен охватывать сертификат (альтернативные имена субъекта, SAN). Для типичного развёртывания Exchange укажите как минимум mail.example.com и autodiscover.example.com. Добавьте любые другие имена, используемые клиентами: webmail, owa, хост EWS, гибридные имена хостов и так далее.
  • -KeySize 2048 соответствует базовым требованиям CA/Browser Forum. Используйте 3072 или 4096 только если это требуется вашей политикой.
  • -PrivateKeyExportable $true позволяет позже экспортировать ключ для резервного копирования или для использования на дополнительных узлах Exchange в той же DAG.

Wildcard-сертификат. Для wildcard установите CN и одну из записей DomainName в шаблон wildcard, например CN=*.example.com и -DomainName *.example.com,example.com. Обратите внимание, что некоторые функции Exchange (в частности, Outlook Anywhere в старых сборках) исторически имели ограничения при работе с wildcard-сертификатами; для промышленной эксплуатации мы рекомендуем мультидоменный (SAN) сертификат, в котором явно перечислено каждое имя хоста.

После выполнения командлета откройте сохранённый файл в Блокноте и убедитесь, что он выглядит как обычный CSR в формате PEM:

-----BEGIN NEW CERTIFICATE REQUEST-----
MIIC6TCCAdECAQAwgaMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlh
...
-----END NEW CERTIFICATE REQUEST-----

Скопируйте весь блок, включая строки BEGIN и END (по пять дефисов с каждой стороны), и вставьте его в поле CSR при заказе SSL-сертификата. Если вы хотите декодировать и проверить CSR перед отправкой, пропустите его через наш Декодер CSR, чтобы убедиться в правильности общего имени, SAN и размера ключа.

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

Get-ExchangeCertificate | Where-Object {$_.Status -eq "PendingRequest"} | Format-List FriendlyName,Thumbprint,Subject

Метод 2: Exchange Admin Center (только для Exchange Server SE и 2019 CU15+)

Мастер сертификатов EAC снова доступен в Exchange Server SE и в Exchange 2019 CU15. Если у вас Exchange 2016 (любой CU начиная с CU23), Exchange 2019 CU12, CU13 или CU14, мастер отсутствует: используйте описанный выше метод PowerShell.

  • Войдите в EAC по адресу https://<exchange-server>/ecp с учётной записью, имеющей роль Organization Management.
  • Перейдите в Servers > Certificates.
  • В раскрывающемся списке Select server выберите сервер Exchange, который будет владеть закрытым ключом.
  • Нажмите кнопку +, чтобы запустить мастер New Exchange Certificate.
  • Выберите Create a request for a certificate from a certification authority, затем нажмите Next.
  • Введите Friendly name, которое позднее поможет идентифицировать сертификат, например mail.example.com 2026. Это только метка.
  • Для wildcard-сертификата установите флажок Request a wildcard certificate и введите корневой домен (например, example.com). Для стандартного или мультидоменного (SAN) сертификата оставьте флажок снятым и нажмите Next.
  • Нажмите Browse и выберите сервер Exchange, на котором должен храниться запрос сертификата, затем нажмите Next.
  • Если вы не запрашиваете wildcard-сертификат, выберите службы (OWA, ECP, Outlook Anywhere, OAB, Autodiscover, POP, IMAP), которые будет защищать сертификат, затем нажмите Next. Exchange использует это для предложения списка SAN.
  • Просмотрите список имён хостов, добавьте или удалите имена с помощью кнопок + и минус, и подтвердите основное общее имя. Нажмите Next.
  • Заполните данные вашей организации: юридическое название организации, отдел, страну/регион, город и штат или регион. Используйте полные названия (без сокращений).
  • В разделе Save the certificate request to the following file введите путь, доступный вам позднее, например \exch01c$certsexchange.req, затем нажмите Finish.
  • Откройте сохранённый файл .req в Блокноте, скопируйте весь текст, включая маркеры ——BEGIN NEW CERTIFICATE REQUEST—— и ——END NEW CERTIFICATE REQUEST——, и вставьте его в форму заказа вашего CA.

После того как CA выдаст сертификат, вернитесь в Servers > Certificates, выберите ожидающий запрос и нажмите Complete. Выполните шаги из нашего руководства по установке SSL-сертификата в Exchange, чтобы завершить установку и назначить службы.

Формирование CSR в Exchange 2013 (устаревшая версия)

Уведомление об устаревшей версии: поддержка Exchange 2013 закончилась 11 апреля 2023 года, обновления безопасности больше не выпускаются. Запланируйте миграцию на Exchange Server SE. Приведённые ниже шаги предназначены только для архивной справки.

  • Откройте EAC по адресу https://<server>/ecp и войдите в систему.
  • Перейдите в Servers > Certificates и выберите целевой сервер в раскрывающемся списке.
  • Нажмите значок +, чтобы запустить мастер New Exchange Certificate.
  • Выберите Create a request for a certificate from a certification authority, нажмите Next.
  • Введите Friendly name, затем нажмите Next.
  • Для wildcard-сертификата установите соответствующий флажок и введите корневой домен (например, *.example.com); в противном случае оставьте флажок снятым. Нажмите Next.
  • Нажмите Browse и выберите сервер, на котором должен храниться закрытый ключ, затем нажмите Next.
  • Выберите службы Exchange, которые будет защищать сертификат (OWA, ECP, Outlook Anywhere, Autodiscover, SMTP, POP, IMAP), затем нажмите Next.
  • Просмотрите список SAN, добавьте недостающие имена хостов с помощью кнопки +, удалите ненужные записи и нажмите Next.
  • Заполните данные организации (юридическое название, отдел, страну, город, штат), затем нажмите Next.
  • Введите путь UNC, по которому следует сохранить файл .req (например, \exch01c$certsexchange.req), затем нажмите Finish.
  • Откройте файл в Блокноте и скопируйте весь блок (включая строки BEGIN и END) в поле CSR вашего CA.

Когда придёт выданный сертификат, завершите ожидающий запрос на том же экране Certificates и продолжите установку.

Формирование CSR в Exchange 2010 (устаревшая версия)

Уведомление об устаревшей версии: расширенная поддержка Exchange 2010 завершилась 13 октября 2020 года. Он не получает обновления безопасности и не должен использоваться для публичных служб. Приведённые здесь шаги предназначены только для команд, поддерживающих изолированные внутренние системы.

  • Запустите Exchange Management Console через Start > All Programs > Microsoft Exchange Server 2010.
  • В левом дереве разверните Microsoft Exchange On-Premises и нажмите Server Configuration.
  • В панели Actions справа нажмите New Exchange Certificate.
  • На экране Introduction введите Friendly name и нажмите Next.
  • В разделе Domain Scope оставьте флажок wildcard снятым для стандартного сертификата или установите его и введите корневой домен (например, *.example.com) для wildcard-сертификата, затем нажмите Next.
  • В разделе Exchange Configuration выберите службы, которые должны быть защищены (OWA, Outlook Anywhere, Autodiscover, POP, IMAP, SMTP, Unified Messaging), и нажмите Next.
  • На экране Certificate Domains добавьте общее имя (основное FQDN), нажмите Set as common name, затем нажмите Next.
  • Заполните данные Organization and Location: полное юридическое название организации, отдел, страну, город и штат, затем нажмите Browse и выберите место сохранения и имя файла для файла .req. Нажмите Save, затем Next, New и Finish.
  • Откройте сохранённый файл в Блокноте и скопируйте весь его содержимое, включая строки ——BEGIN NEW CERTIFICATE REQUEST—— и ——END NEW CERTIFICATE REQUEST——, в форму заказа вашего CA.

После того как CA выдаст сертификат, завершите ожидающий запрос в Exchange Management Console.

Формирование CSR в Exchange 2007 (устаревшая версия)

Уведомление об устаревшей версии: расширенная поддержка Exchange 2007 завершилась 11 апреля 2017 года. Шаги приведены только для архивной справки.

  • Откройте Start > All Programs > Microsoft Exchange Server 2007 > Exchange Management Shell.
  • Отредактируйте приведённый ниже командлет в Блокноте, затем вставьте его в оболочку. Замените примерные значения субъекта на данные вашей реальной организации и имена хостов, которые нужно защитить.
New-ExchangeCertificate `
  -GenerateRequest `
  -SubjectName "C=US, S=California, L=San Francisco, O=Example Inc, OU=IT, CN=mail.example.com" `
  -DomainName mail.example.com, autodiscover.example.com `
  -KeySize 2048 `
  -PrivateKeyExportable $true `
  -Path C:certsexchange.req

В Exchange 2007 исходный параметр -Path всё ещё работает (ограничение на UNC-путь, введённое обновлением KB5014278, было применено только к Exchange 2016 и 2019). Отредактируйте поля субъекта так же, как в разделе с современным PowerShell выше:

  • C, S, L, O, OU и CN следуют стандартному соглашению о субъекте X.509.
  • -DomainName принимает список SAN через запятую. Для wildcard используйте *.example.com.
  • -KeySize 2048 — минимальный размер, принимаемый публичными CA.
  • -PrivateKeyExportable $true позволяет позже экспортировать сертификат и ключ.
  • -Path — локальный файл, в который будет записан CSR.

После выполнения командлета откройте файл в Блокноте и скопируйте весь блок PEM (включая строки BEGIN и END, по пять дефисов с каждой стороны) в поле CSR вашего CA.

Формирование CSR в Exchange 2003 (устаревшая версия)

Уведомление об устаревшей версии: расширенная поддержка Exchange 2003 завершилась 8 апреля 2014 года. Он небезопасен для любой публичной инфраструктуры, и современные публичные CA могут отказаться выдавать сертификаты SHA-256, которые способны проверить клиенты эпохи 2003 года. Выполните миграцию как можно скорее.

Exchange 2003 не включал собственных инструментов для формирования запросов на сертификаты. Формирование CSR осуществлялось базовым веб-сервером IIS 6, после чего выданный сертификат привязывался к виртуальным протокольным серверам Exchange (SMTP, POP3, IMAP4) через Exchange System Manager. Следуйте нашему сопутствующему руководству как сформировать CSR в Microsoft IIS (раздел IIS 6), чтобы создать запрос, а затем вернитесь к вашему CA для заказа сертификата.

Проверьте свой CSR перед отправкой

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

После того как CA проверит запрос и выдаст сертификат, продолжите работу с нашим пошаговым руководством по установке SSL-сертификата в Exchange, чтобы импортировать сертификат и назначить его для IIS, SMTP и любых других используемых вами служб.

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

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

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

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

Avatar of Sergiu Rosca
Technical Review by Sergiu Rosca

Sergiu Rosca is the core web developer behind SSL Dragon. He manages the technical infrastructure, platform performance, and backend integrations that keep the site running smoothly and securely. At SSL Dragon, Sergiu shares practical insights on web development, site optimization, and technical troubleshooting.

All SSL Dragon installation guides are tested on live server environments and undergo a strict peer-review process to ensure your infrastructure remains secure. Read our full Editorial Policy.