Home WindowsExchange Server Выпуск бесплатного FREE Let’s Encrypt сертификата для Exchange Server

Выпуск бесплатного FREE Let’s Encrypt сертификата для Exchange Server

by admin
1,5K views
Exchange

Как установить БЕСПЛАТНЫЙ сертификат Let’s Encrypt на Exchange Server? После настройки внутреннего и внешнего DNS мы хотели бы установить сертификат на сервере Exchange. Что такое Let’s Encrypt и почему он бесплатный? Подробнее о настройке сертификата Let’s Encrypt в Exchange Server читайте в этой статье.

Что такое Let’s Encrypt

Let’s Encrypt — это бесплатный способ защитить ваш веб-сервер с помощью HTTPS с SSL-сертификатом. Он обеспечивает безопасную зашифрованную передачу данных и соединение между сервером и клиентом. Let’s Encrypt не взимает плату за сертификаты. Let’s Encrypt — некоммерческая организация, и ее миссия — создать более безопасную и уважающую конфиденциальность сеть. Они делают это, способствуя широкому внедрению HTTPS. Сервисы бесплатны и просты в использовании, так что каждый может развернуть HTTPS.

Сертификат Exchange Server не является доверенным

При установке нового сервера Exchange клиентское соединение устанавливается небезопасно. Это по умолчанию. Мы войдем в Outlook Web Access (OWA), чтобы посмотреть, как это выглядит.

В Google Chrome отображается предупреждение:

OWA сервера Exchange работает, но небезопасно. Значок замка показывает предупреждение. Если мы нажмем замок в адресной строке, мы увидим, что соединение не защищено.

То же самое происходит со всеми другими браузерами. Например, Internet Explorer показывает красную адресную строку. При нажатии на сертификат на панели инструментов показывает, что сертификат является несоответствующим адресом. Соединение с сервером Exchange не защищено.

Мы узнали о Let’s Encrypt и увидели, что подключение к Exchange Server не является безопасным. В следующей части мы подготовим приложение для настройки сертификата. После этого мы запросим бесплатный сертификат Let’s Encrypt.

Подготовка с работой Let’s Encrypt Win-ACME

Существует список клиентов ACME, предлагаемых третьими лицами для использования. Мы собираемся использовать Windows ACME Simple (WACS). Простой клиент ACME для Windows — для использования с Let’s Encrypt. Он автоматически обновит ваши сертификаты, поэтому после его установки и настройки у вас будет постоянно защищенный веб-сервер.

Загрузите Win-ACME с GitHub или официального сайта . 

На момент написания файла это win-acme.v2.1.22.1289.x64.pluggable.zip. Создайте папку Lets Encrypt в папке C:\Program Files. Извлеките файлы из архива .zip в папку C:\Program Files\Lets Encrypt.

Вы можете использовать Win-ACME из интерактивного меню или в автоматическом режиме (командная строка). С командной строкой вам не нужно прыгать по меню. Оба будут работать, и хорошо учиться обоим способам.

Давайте зашифруем закрытый ключ сертификата

Лучше всего экспортировать сертификат после его выпуска и загрузки из Let’s Encrypt. Это означает, что вы должны импортировать закрытый ключ сертификата, чтобы экспортировать сертификат. Есть два способа сделать это.

Автоматический импорт закрытого ключа сертификата

Настройте settings_default.json, прежде чем запрашивать сертификат у Let’s Encrypt. Это автоматически импортирует закрытый ключ сертификата в сертификат:

  • Запустите проводник
  • Перейдите по пути C:\Program Files\Lets Encrypt
  • Откройте settings_default.json с помощью Блокнота.
  • Установите для PrivateKeyExportable значение true
  • Сохраните файл

 Файл settings_default.json будет скопирован вместе с его настройками в settings.json после запуска Win-ACME. Если вы уже запускали Win-ACME, в папке вы увидите файл settings.json . Отредактируйте значение в settings.json .

Установите сертификат Let’s Encrypt с помощью интерактивного меню

Щелкните правой кнопкой мыши приложение wacs . Нажмите « Запуск от имени администратора» , чтобы запустить приложение.

Появится окно клиента Win-ACME. Введите M , чтобы создать сертификат продления (полный вариант), и нажмите Enter .


 A simple Windows ACMEv2 client (WACS)
 Software version 2.1.22.1289 (release, pluggable, standalone, 64-bit)
 Connecting to https://acme-v02.api.letsencrypt.org/...
 Connection OK!
 Scheduled task not configured yet
 Please report issues at https://github.com/win-acme/win-acme

 N: Create certificate (default settings)
 M: Create certificate (full options)
 R: Run renewals (0 currently due)
 A: Manage renewals (0 total)
 O: More options...
 Q: Quit

 Please choose from the menu: M

Введите 2 для ручного ввода и нажмите Enter .

 Running in mode: Interactive, Advanced

 Please specify how the list of domain names that will be included in the
 certificate should be determined. If you choose for one of the "all bindings"
 options, the list will automatically be updated for future renewals to
 reflect the bindings at that time.

 1: Read bindings from IIS
 2: Manual input
 3: CSR created by another program
 C: Abort



How shall we determine the domain(s) to include in the certificate?: 2

Введите список имен хостов через запятую. Посмотрите на свои имена хостов Exchange и заполните их. Правильно ли вы настроили имена хостов Exchange Server? Внутренних имен быть не должно, например MBX1. Ознакомьтесь со статьей Проектирование и планирование пространства имен Exchange . Я рекомендую использовать одно и то же пространство имен для внутреннего и внешнего DNS.

В моем примере я буду использовать *.alukashin.ru После этого нажмите Enter .

Помимо перечислений имен в SAN сертификата, мы можем указать и wildcard , через wildcard мы покроем все имена 3 уровня , запись будет выглядить типа *.alukashin.ru . Получается что
Для установки SAN сертификата для двух имен мы перечисляем имена.
Для того чтобы произвести установку wildcard ssl сертификата в exchange 2016 мы ставим со *.domain.com

В данном примере мы выберем SAN серитфикат, в последующем мы установим сетификат на exchange 2016.

Description:        A host name to get a certificate for. This may be a
                     comma-separated list.

 Host: mail.alukashin.ru,autodiscover.alukashin.ru  или *.alukashin.ru

Мы не будем ничего вводить для предлагаемого понятного имени. Нажмите Enter , чтобы продолжить.

 Source generated using plugin Manual: mail.alukashin.ru and 1 alternatives

 Friendly name '[Manual] mail.alukashin.ru'. <Enter> to accept or type desired name: <Enter>

Проверку выполним по dns txt записи под номером 6 

The ACME server will need to verify that you are the owner of the domain
 names that you are requesting the certificate for. This happens both during
 initial setup *and* for every future renewal. There are two main methods of
 doing so: answering specific http requests (http-01) or create specific dns
 records (dns-01). For wildcard domains the latter is the only option. Various
 additional plugins are available from https://github.com/win-acme/win-acme/.

 1: [http-01] Save verification files on (network) path
 2: [http-01] Serve verification files from memory
 3: [http-01] Upload verification files via FTP(S)
 4: [http-01] Upload verification files via SSH-FTP
 5: [http-01] Upload verification files via WebDav
 6: [dns-01] Create verification records manually (auto-renew not possible)
 7: [dns-01] Create verification records with acme-dns (https://github.com/joohoi/acme-dns)
 8: [dns-01] Create verification records with your own script
 9: [tls-alpn-01] Answer TLS verification request from win-acme
 C: Abort

 How would you like prove ownership for the domain(s)?: 6

Введите 2 для ключа RSA и нажмите Enter .

After ownership of the domain(s) has been proven, we will create a
 Certificate Signing Request (CSR) to obtain the actual certificate. The CSR
 determines properties of the certificate like which (type of) key to use. If
 you are not sure what to pick here, RSA is the safe default.

 1: Elliptic Curve key
 2: RSA key
 C: Abort

Выберите вариант 3 , чтобы сохранить сертификат в хранилище сертификатов Windows, и нажмите Enter .

When we have the certificate, you can store in one or more ways to make it
 accessible to your applications. The Windows Certificate Store is the default
 location for IIS (unless you are managing a cluster of them).

 1: IIS Central Certificate Store (.pfx per host)
 2: PEM encoded files (Apache, nginx, etc.)
 3: PFX archive
 4: Windows Certificate Store
 5: No (additional) store steps

 How would you like to store the certificate?: 3

Создадим в корне диска C:\ папку PFX

Укажем данный путь

 How would you like to store the certificate?: 3

 Description:        Path to write the .pfx file to.

 File path: C:\PFX

Нам предлагают защитить наш серфикат паролем, я откажусь , нажатием 1

Description:        Password to set for .pfx files exported to the folder.

 1: None
 2: Type/paste in console
 3: Search in vault

 Choose from the menu: 1

Выберите 5


 1: IIS Central Certificate Store (.pfx per host)
 2: PEM encoded files (Apache, nginx, etc.)
 3: PFX archive
 4: Windows Certificate Store
 5: No (additional) store steps

 Would you like to store it in another way too?: 5

Выберите 3

 Installation plugin IIS not available: This step cannot be used in combination with the specified store(s)

 With the certificate saved to the store(s) of your choice, you may choose one
 or more steps to update your applications, e.g. to configure the new
 thumbprint, or to update bindings.

 1: Create or update bindings in IIS
 2: Start external script or program
 3: No (additional) installation steps

 Which installation step should run first?: 3

Пишем Y , принимаем лицензионное соглашение

 Which installation step should run first?: 3

 Terms of service:   C:\ProgramData\win-acme\acme-v02.api.letsencrypt.org\LE-SA-v1.2-November-15-2017-w-v1.3-notice.pdf

 Open in default application? (y/n*)

Do you agree with the terms? (y*/n) - yes

Введите свой адрес электронной почты и нажмите Enter .

Enter email(s) for notifications about problems and abuse (comma-separated): administrator@alukashin.ru

Вывод покажет, что нам нужно подключится ко внешнему DNS и вручную создать TXT запись

[*.alukashin.ru] Authorizing...
 [*.alukashin.ru] Authorizing using dns-01 validation (Manual)

 Domain:             alukashin.ru
 Record:             _acme-challenge.alukashin.ru
 Type:               TXT
 Content:            "_UGiCVfFAkQDLjqPFTYJm1Xi0n9AS9ro8YShjKPQzAI"
 Note:               Some DNS managers add quotes automatically. A single set
                     is needed.

 Please press <Enter> after you've created and verified the record

После публикации записи нам нужно подождать пока dns отреплицируется. Для проверки можно использовать инструмент от Google — Google DIG.

После того как запись стало видно можно нажать Enter в поле окна WACS

Если валидация прошла успешно , он потребует удалить запись из внешнего dns , через google dig посмотрите прошла ли репликация, позже нажмите enter , как запись пропадет , можете нажать Enter.





[*.alukashin.ru] Authorizing...
 [*.alukashin.ru] Authorizing using dns-01 validation (Manual)

 Domain:             alukashin.ru
 Record:             _acme-challenge.alukashin.ru
 Type:               TXT
 Content:            "_UGiCVfFAkQDLjqPFTYJm1Xi0n9AS9ro8YShjKPQzAI"
 Note:               Some DNS managers add quotes automatically. A single set
                     is needed.

 Please press <Enter> after you've created and verified the record

 [*.alukashin.ru] Preliminary validation succeeded
 [*.alukashin.ru] Preliminary validation succeeded
 [*.alukashin.ru] Authorization result: valid

 Domain:             alukashin.ru
 Record:             _acme-challenge.alukashin.ru
 Type:               TXT
 Content:            "_UGiCVfFAkQDLjqPFTYJm1Xi0n9AS9ro8YShjKPQzAI"

 Please press <Enter> after you've deleted the record

Сертификат будет ждать вас в папке.

В следующей статье мы разберем как установить сертификат на Exchange 2016

Статьи из этой категории

5 комментариев

Денис 15.03.2023 - 13:48

А вписать какое количество имен хостов можно чисто теоретически, семь имен он потянет?

Reply
Денис 15.03.2023 - 14:10

и еще у меня выдает такое,
Domain: autodiscover.moi-domen.ru
Record: _acme-challenge.autodiscover.moi-domen.ru
Вместо
Domain: moi-domen.ru
Record: _acme-challenge.moi-domen.ru
А домена третьего уровня у меня нету.

Reply
Настройка доступа Sharepoint 2019 в интернет » 19.10.2023 - 00:34

[…] Чтобы совершить прявязку нужно выписать сертификат я в свою очередь выпускал сертификат через win acme у меня есть статья на эту тему […]

Reply
Добавить онлайн редактирование Excel,Word Online Office Server на Sharepoint 2019 » 19.10.2023 - 18:25

[…] Выпишим серфитикат на имя oss.domain.ru через win-acme […]

Reply
Роман 25.10.2023 - 14:47

Можете подробнее подсказать, где нужно создать текстовый файл, который генерит программа?
Создаю на сервере домена в DNS прямая зона-domain- _domainkey текстовый параметр с данными, генерируемыми программой.
Потом нажимаю Enter и получаю ошибку в программе:
Incorrect TXT records found.Preliminary validation failed on all nameserver…
И всё, ошибка получения сертификата.
Или может быть я вообще делаю неправильно?

Reply

Leave a Comment