В большинстве организаций срок действия сертификата Exchange составляет 1 или 3 года, ведь это самый распространенный период. Если вы приучили себя при продлении какого-либо сертификата сразу же ставить напоминалку на год вперед о необходимости перевыпуска, то у вас будет все хорошо. Но для тех, кто этого не делает, все может закончиться «внезапным» окончанием срока действия сертификата и авральными работами по его продлению.

Как нельзя кстати под рукой может оказаться эта статья, в которой я подробно объясню как быстро сделать замену некогда действительному сертификату Exchange.

Найти больше информации по настройке и администрированию Exchange 2013 на моем блоге вы сможете в основной статье тематики — Exchange 2013 — Установка, настройка, администрирование.

Вышел срок действия сертификата Exchange

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

Стоит отметить, что задачи, связанные с управлением сертификатами (для Exchange и не только), являются чуть ли не самыми разжеванными в интернете. Тем не менее, на форумах Technet вопросы с сертификатами стабильно лидируют по популярности. Именно поэтому я не прекращаю писать об этих темах статьи.

Как это бывает

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

Если вдруг вы нарвались на отзыв сертификата, то попасть даже в ECP у вас не получится. Вот что покажет браузер:

Как видите, кнопочки Продолжить открытие этого веб-сайта (не рекомендуется) тут нет, а следовательно придется поработать ручками в консоли.

Запрос сертификата

Есть несколько путей, чтобы выполнить процедуру генерации CSR-запроса. Самый простой из них — через оснастку Диспетчер служб IIS, который я рассматривал в статье Exchange Hybrid — Подготовка серверов федерации. В этой же статья я рассмотрю более «хардкорный» вариант, когда запрос надо сгенерировать из консоли EMS 1 . Итак, сделать это можно командой как в примере ниже:

У каждого сертификата есть встроенный срок действия. Every certificate has a built-in expiration date. В Exchange Server самозаверяющий сертификат по умолчанию, установленный на сервере Exchange Server, истечет через 5 лет после установки Exchange на сервере. In Exchange Server, the default self-signed certificate that’s installed on the Exchange server expires 5 years after Exchange was installed on the server. Для обновления сертификатов Exchange можно использовать Центр администрирования Exchange (EAC) или командную консоль Exchange. You can use the Exchange admin center (EAC) or the Exchange Management Shell to renew Exchange certificates. Это относится к самозаверяющим сертификатам Exchange и сертификатам, выданным центром сертификации (ЦС). This includes Exchange self-signed certificates, and certificates that were issued by a certification authority (CA).

Что нужно знать перед началом работы? What do you need to know before you begin?

Предполагаемое время для завершения: 5 минут. Estimated time to complete: 5 minutes

Сведения о том, как открыть командную консоль Exchange в локальной организации Exchange, см. в статье Open the Exchange Management Shell. To learn how to open the Exchange Management Shell in your on-premises Exchange organization, see Open the Exchange Management Shell.

Если сертификаты выданы ЦС, проверьте требования ЦС к запросам сертификатов. Exchange создает файл запроса PKCS #10 (.req) в кодировке Base64 (по умолчанию) или Distinguished Encoding Rules (DER) с открытым ключом RSA длиной 1024, 2048 (по умолчанию) или 4096 бит. Обратите внимание, что параметры кодирования и открытого ключа доступны только в командной консоли Exchange. For certificates that were issued by a CA, verify the certificate request requirements of the CA. Exchange generates a PKCS #10 request (.req) file that uses Base64 encoding (default) or Distinguished Encoding Rules (DER), with an RSA public key that’s 1024, 2048 (default), or 4096 bits. Note that encoding and public key options are only available in the Exchange Management Shell.

Сертификат, выданный ЦС, нужно обновлять в выдавшем его ЦС. To renew a certificate that was issued by a CA, you need to renew the certificate with the same CA that issued the certificate. Если нужно изменить ЦС или возникла проблема при обновлении исходного сертификата, необходимо создать запрос нового сертификата (также известный как запрос подписи сертификата или CSR). If you’re changing CAs, or if there’s a problem with the original certificate when you try to renew it, you need to create a new certificate request (also known as a certificate signing request or CSR) for a new certificate. Дополнительные сведения см. в статье Создание запроса на сертификат Exchange Server для центра сертификации. For more information, see Create an Exchange Server certificate request for a certification authority.

Если вы обновите или замените сертификат, который был выпущен центром сертификации на подписанном пограничном транспортном сервере, вам нужно будет удалить старый сертификат, а затем удалить и заново создать пограничную подписку. Дополнительные сведения см. в разделе Процесс пограничной подписки. If you renew or replace a certificate that was issued by a CA on a subscribed Edge Transport server, you need to remove the old certificate, and then delete and recreate the Edge Subscription. For more information, see Edge Subscription process.

Для выполнения этих процедур необходимы соответствующие разрешения. Сведения о необходимых разрешениях см. в статье запись "Безопасность служб клиентского доступа" в статье Разрешения клиентов и мобильных устройств. You need to be assigned permissions before you can perform this procedure or procedures. To see what permissions you need, see the "Client Access services security" entry in the Clients and mobile devices permissions topic.

Сочетания клавиш для процедур, описанных в этой статье, приведены в статье Сочетания клавиш в Центре администрирования Exchange. For information about keyboard shortcuts that may apply to the procedures in this topic, see Keyboard shortcuts in the Exchange admin center.

Возникли проблемы? Попросите помощи на форумах Exchange. Перейти на форумы можно по следующим ссылкам: Exchange Server, Exchange Online или Exchange Online Protection. Having problems? Ask for help in the Exchange forums. Visit the forums at: Exchange Server, Exchange Online, or Exchange Online Protection.

Обновление сертификата, выданного центром сертификации Renew a certificate that was issued by a certification authority

Процедуры одинаковы для сертификатов, выданных внутренним (например, службами сертификации Active Directory) и коммерческим ЦС. The procedures are the same for certificates that were issued by an internal CA (for example, Active Directory Certificate Services), or a commercial CA.

Чтобы обновить сертификат, выданный ЦС, создайте запрос на обновление сертификата и отправьте его в ЦС. To renew a certificate that was issued by a CA, you create a certificate renewal request, and then you send the request to the CA. После этого ЦС отправляет вам фактический файл сертификата, который необходимо установить на сервере Exchange. The CA then sends you the actual certificate file that you need to install on the Exchange server. Почти аналогично выполняется запрос нового сертификата. The procedure is nearly identical to that of completing a new certificate request by installing the certificate on the server. Инструкции см. Выполнение ожидающего запроса сертификата сервера Exchange Server. For instructions, see Complete a pending Exchange Server certificate request.

Создание запроса на обновление сертификата для центра сертификации с помощью Центра администрирования Exchange Use the EAC to create a certificate renewal request for a certification authority

В Центре администрирования Exchange последовательно выберите пункты Серверы > Сертификаты. Open the EAC and navigate to Servers > Certificates.

В списке Выберите сервер выберите сервер Exchange с сертификатом, который требуется обновить. In the Select server list, select the Exchange server that holds the certificate that you want to renew.

В области сведений всех действительных сертификатов есть ссылка Обновить, которая отображается при выборе сертификата из списка. Выберите сертификат, который требуется обновить, и нажмите Обновить в области сведений. All valid certificates have a Renew link in the details pane that’s visible when you select the certificate from the list. Select the certificate that you want to renew, and then click Renew in the details pane.

На открывшейся странице Обновление сертификата Exchange в поле Сохранить запрос сертификата в следующий файл введите UNC-путь и имя файла нового запроса на обновление сертификата. On the Renew Exchange certificate page that opens, in the Save the certificate request to the following file field, enter the UNC path and filename for the new certificate renewal request file. Например, \FileServer01DataContosoCertRenewal.req . For example, \FileServer01DataContosoCertRenewal.req . После этого нажмите кнопку ОК. When you’re finished, click OK.

После этого запрос сертификата появится в списке сертификатов Exchange со статусом Ожидает. The certificate request appears in the list of Exchange certificates with a status value of Pending.

Создание запроса на обновление сертификата для центра сертификации с помощью командной консоли Exchange Use the Exchange Management Shell to create a certificate renewal request for a certification authority

Чтобы создать запрос на обновление сертификата для центра сертификации на локальном сервере Exchange, используйте следующий синтаксис: To create a certificate renewal request for a certification authority on the local Exchange server, use the following syntax:

Чтобы найти значение отпечатка сертификата, который требуется обновить, выполните следующую команду: To find the thumbprint value of the certificate that you want to renew, run the following command:

В этом примере создается запрос на обновление сертификата со следующими свойствами: This example creates a certificate renewal request with the following properties:

Сертификат для продления: 5DB9879E38E36BCB60B761E29794392B23D1C054 Certificate to renew: 5DB9879E38E36BCB60B761E29794392B23D1C054

RequestFile: \FileServer01DataContosoCertRenewal.req RequestFile: \FileServer01DataContosoCertRenewal.req

Примечания. Notes:

Параметр RequestFile принимает локальный путь или UNC-путь. The RequestFile parameter accepts a local path or a UNC path.

Мы не использовали параметр BinaryEncoded , поэтому запрос кодируется в кодировке Base64. We didn’t use the BinaryEncoded switch, so the request is Base64 encoded. Данные, отображаемые на экране, также записываются в файл, а содержимое файла — это то, что нам нужно отправить в ЦС. The information that’s displayed onscreen is also written to the file, and the contents of the file are what we need to send to the CA. Если мы использовали параметр BinaryEncoded , то запрос был бы закодирован с помощью der, а сам файл запроса на сертификат является необходимым для отправки в ЦС. If we had used the BinaryEncoded switch, the request would have been encoded by DER, and the certificate request file itself is what we would need to send to the CA.

Мы не использовали параметр keySize , поэтому запрос сертификата содержит открытый ключ RSA 2048 bit. We didn’t use the KeySize parameter, so the certificate request has a 2048 bit RSA public key.

Как проверить, что все получилось? How do you know this worked?

Чтобы убедиться, что вы успешно создали запрос на обновление сертификата для центра сертификации, выполните любое из следующих действий: To verify that you have successfully created a certificate renewal request for a certification authority, perform either of the following steps:

В Центре администрирования Exchange выберите Серверы > Сертификаты, убедитесь, что выбран сервер, на котором хранится запрос сертификата. Запрос должен быть в списке сертификатов и иметь статус Ожидающий запрос. In the EAC at Servers > Certificates, verify the server where you stored the certificate request is selected. The request should be in the list of certificates with the Status value Pending request.

В командной консоли Exchange на сервере, где хранится запрос сертификата, выполните следующую команду: In the Exchange Management Shell on the server where you stored the certificate request, run the following command:

Обновление самозаверяющего сертификата Exchange Renew an Exchange self-signed certificate

Когда вы обновляете самозаверяющий сертификат Exchange, вы, по сути, создаете новый сертификат. When you renew an Exchange self-signed certificate, you’re basically making a new certificate.

Обновление самозаверяющего сертификата Exchange с помощью Центра администрирования Exchange Use the EAC to renew an Exchange self-signed certificate

В Центре администрирования Exchange последовательно выберите пункты Серверы > Сертификаты. Open the EAC and navigate to Servers > Certificates.

В списке Выберите сервер выберите сервер Exchange с сертификатом, который требуется обновить. In the Select server list, select the Exchange server that holds the certificate that you want to renew.

В области сведений всех действительных сертификатов есть ссылка Обновить, которая отображается при выборе сертификата из списка. Выберите сертификат, который требуется обновить, и нажмите Обновить в области сведений. All valid certificates have a Renew link in the details pane that’s visible when you select the certificate from the list. Select the certificate that you want to renew, and then click Renew in the details pane.

На открывшейся странице Обновление сертификата Exchange проверьте нередактируемый список служб Exchange, которым назначен существующий сертификат, и нажмите кнопку ОК. On the Renew Exchange certificate page that opens, verify the read-only list of Exchange services that the existing certificate is assigned to, and then click OK.

Обновление самозаверяющего сертификата Exchange с помощью командной консоли Exchange Use the Exchange Management Shell to renew an Exchange self-signed certificate

Чтобы обновить самозаверяющий сертификат, используйте следующий синтаксис: To renew a self-signed certificate, use the following syntax:

Чтобы найти значение отпечатка сертификата, который требуется обновить, выполните следующую команду: To find the thumbprint value of the certificate that you want to renew, run the following command:

В этом примере обновляется самозаверяющий сертификат на локальном сервере Exchange, при этом используются следующие параметры: This example renews a self-signed certificate on the local Exchange server, and uses the following settings:

Значение отпечатка существующего самозаверяющего сертификата для продления BC37CBE2E59566BFF7D01FEAC9B6517841475F2D The thumbprint value of the existing self-signed certificate to renew is BC37CBE2E59566BFF7D01FEAC9B6517841475F2D

Параметр Force заменяет исходный самозаверяющий сертификат без запроса на подтверждение. The Force switch replaces the original self-signed certificate without a confirmation prompt.

Закрытый ключ можно экспортировать. То есть вы можете экспортировать сертификат и импортировать его на другие серверы. The private key is exportable. This allows you to export the certificate and import it on other servers.

Как проверить, что все получилось? How do you know this worked?

Чтобы убедиться, что вы успешно обновили самозаверяющий сертификат Exchange, выполните одно из следующих действий: To verify that you have successfully renewed an Exchange self-signed certificate, use either of the following procedures:

В Центре администрирования Exchange выберите Серверы > Сертификаты, убедитесь, что выбран сервер, на котором установлен сертификат. В списке серверов убедитесь, что сертификат имеет статус Действительный. In the EAC at Servers > Certificates, verify the server where you installed the certificate is selected. In the list of certificates, verify that the certificate has Status property value Valid.

В командной консоли Exchange на сервере, на котором вы обновили самозаверяющий сертификат, выполните следующую команду, чтобы проверить значения свойств: In the Exchange Management Shell on the server where you renewed the self-signed certificate, run the following command to verify the property values:

В Exchange Server 2010, как и в его предшественнике Exchange Server 2007 для работы всевозможных коммуникационных протоколов повсеместно используются сертификаты SSL. При установке первого сервера Exchange, он устанавливается с самоподписанным сертификатом. И прежде чем внедрить новый сервер Exchange, необходимо создать и присвоить ему новый SSL сертификат.

В данной статье мы попробуем настроить SSL сертификат для домена contoso.local.

Генерируем новый сертификат для Exchange Server 2010

В консоли управления Exchange Management Console перейдем в раздел Server Configuration. Щелкнем правой кнопкой по серверу и выберем пункт New Exchange Certificate.

Введем имя нового сертификата. В данном случае назовем сертификат “Contoso Exchange Server”.

Далее нам нужно указать имена всех служб Exchange 2010, которые будут защищены с помощью сертификатов SSL.

Первая служба — Outlook Web App. Укажем внешнее и внутренне имя для Outlook Web App. В данном примере настроим внутреннее имя — “ex2010.contoso.local” , внешнее — “mail.contoso.local”.

Затем настроим имя для ActiveSync. Для упрощения управления и настройки я буду использовать тоже имя, что и для Outlook Web App (mail.contoso.local).

Настроим службы: Web Services, Outlook Anywhere и Autodiscover. И опять я укажу имя “mail.contoso.local”. Для Autodiscover дополнительные имена “autodiscover.contoso.local” и “autodiscover.xyzimports.local” для всех почтовых доменов организации.

Сервер Hub Transport также для обеспечения безопасности SMTP коммуникации требует наличие SSL сертификата. Укажем имя “mail.contoso.local”.

Параметры Legacy Name (совместимость) необходимо настраивать, если вы планируете постепенный перенос служб и данных из Exchange 2003 в Exchange 2010. Имена legacy name нужно настроить для каждого обслуживаемого пространства имен в организации, например “legacy.contoso.local” и “legacy.xyzimports.local”.

После настройки всех служб, перейдем к следующему этапу мастера настройки нового сертификата Exchange.

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

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

Для генерации файла с запросом сертификата, нажмем кнопку New.

Работа мастера окончена.

Затем должно появиться окно, в котором указывается, что мастер в качестве типа сертификата Exchange выбрал “Unified Communications certificate” (также он называется сертификатом SAN).

После того, как мы создали запрос на новый сертификат, нужно вернуться в консоль Exchange Management Console, правой кнопкой щелкнем по серверу и выберем пункт Complete Pending Request.

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


И в списке действительных сертификатов сервера появится еще один.

Назначаем новый сертификат серверу Exchange 2010

После установки нового SSL сертификата, необходимо назначить его службам Exchange Server 2010. Для этого щелкните правой кнопкой мыши по новому сертификату и выберите “Assign Services to Certificate”.

Укажем наш новый сервер Exchange и нажмем Next.

Укажем службы, для которых необходимо назначить сертификат. В этом примере укажем сервисы IIS и SMTP.

После окончания мастера появится окно с предложением перезаписать текущий самоподписанный сертификат, согласимся с этим предложением, нажав Yes.

Добрый день. В данном примере рассматривается если один Exchange сервер. А что делать если их несколько, например два HubCas. На одном из них данный сертификат будет установлен, а как сдублировать его на другой сервер потом чтобы сертификат отображался и там и там?

Просто щелкните правой кнопкой мыши по новому сертификату и выберите “Assign Services to Certificate”, указав что вы хотите назначить сертификат еще одному серверу (см. предпоследний скриншот)

У меня не было такой опции в меню действий как «Назначение служб сертификатов» в графической консоли Exchange, поэтому пришлось делать через PowerShell.
Службы я смог назначить выполнив команду:
Enable-ExchangeCertificate -Thumbprint 50CBA321D03DB2710D0973A5A8611175CA4F40CE -Services SMTP,IIS
где значение Thumbprint я получил с помощью команды Get-ExchangeCertificate.
Чтобы сдублировать сертификат на второй HubCAS я попытался экспортировать его в формат .pfx с помощью команды:
$file = Export-ExchangeCertificate -Thumbprint 50CBA321D03DB2710D0973A5A8611175CA4F40CE -BinaryEncoded:$true -Password (Get- Credential).password
Set-Content -Path «c:certificates mcert.pfx» -Value $file.FileData -Encoding Byte
После чего на другом HubCAS попытался выполнить импорт сертификата Exchange. Через меню обзор выбрал свой tmcert.pfx, ввёл пароль сертификата, в след. окне указал на тот самый HubCAS где не установлен сертификат. Но при выполнении этого процесса получил ошибку: «Не удается импортировать сертификат. Сертификат с отпечатком 50CBA321D03DB2710D0973A5A8611175CA4F40CE уже существует».

Таким образом сертификат у меня отображается лишь на одном HubCAS и я не знаю как мне сдублировать его на второй HubCAS.

Внутри одной организации не нужно экспортировать сертификат с одного CAS/HT на другой CAS/HT.
На первом сервере выполните следующее:
1. Откройте Exchange Management Console

2. Встаньте на уровень Server Configuration

3. В нижней панели щелкните ПКМ по своему сертификату и выберите Assign Services to Certificate

4. Добавьте второй сервер (кнопка Add )

так нет такой кнопочки вернее она есть о выбор серверов не дает. но это только в сертификате не созданным

Сейчас проверил — все на месте. Возможно дело в том, что вы не создали запрос (request) на выпуск сертфиката, но не импортировали его.

Здравствуйте! Возникла проблема! Итак, после создания сертификата «cert.req» необходимо импортировать сертификат, и вот вопрос: exchange просит указать файл с расширением *.cer, *.crt а наш созданный сертификат с расширением *.req как быть?

*.req — это файл с запросом сертификата — на основании которого генерируется новый сертификат.
Перечитайте внимательно — этот момент в статье был описан:
«После того, как мы создали запрос на новый сертификат, нужно вернуться в консоль Exchange Management Console, правой кнопкой щелкнем по серверу и выберем пункт Complete Pending Request.»

Все равно не ясно. = А где сертификат генерируется? выбрав пункт Compele Pending Request необходимо указать сертификат( как я понял), а у нас лишь *.req – это файл с запросом сертификата

На основании сгенерированного запроса на выпуск сертификата (тот самый req файл) нужно выписать сертификат. Сделать это можно в корпоративном центре сертификации -Certificate Authority (если есть), у внешнего поставщика (тот же Digicert) либо выписать себе сапоподписанный сертфикат сторонними утилитами (естественно, он будет недоверенным)

Добрый день,
установили новый сертификат на сервере EX, и у пользователей в сети начало выходить окно «Ввести логинпароль» постоянно

Возможно сертификат недоверенный? Попробуйте добавьте выдающий CA в Trusted Root Cert на клиенте и на сервере Exchange

я сделал все как было написано тут:
http://forum.oszone.net/thread-210110.html
сомнения в работе autodiscover, такое мнение что все пользователи в сети пытаются коннектиться не по локалке, а через другую точку: _https://mail.contoso.com/Autodiscover/Autodiscover.xml

Добрый день,
такой вопрос, я мигрировал с exchange 2003 на 2010 и старый exchange имел одно и тоже имя с сертификатом который был куплен mail.domain.ru теперь новое имя сервера
ex.domain.ru, можно ли сделать так что бы старый сертификат так и остался для внешних пользователей а внутренний работал с само подписанным?

В Exchange 2010 на CAS сервер импортируйте старый сертификат и смените external имя для OWA /ActiveSync и прочих на mail.domain.ru

Доброго дня заработает ли купленный Wildcard сертификат для сайта
У которого. имя *.firma.ru у почтовика имя mail2.firma.ru
https://image.ibb.co/fvGeBd/SSL.png

Куплен был тут:
https://masterhost.ru/service/ssl/DomainServerSign_Wildcard/
Но тогда не было приписки «В стоимость сертификата включена поддержка трех почтовых субдоменов OWA, MAIL, AUTODISCOVER и WWW»

Да, Exchange 2010 поддерживает использование wildcard сертфикатов.