Управління сертифікатами exchange (частина 3)

Команди Exchange для управління сертифікатами

Оболонка Exchange Management Shell пропонує набір команд, які можна використовувати для управління сертифікатами у вашому середовищі Exchange:

У другій частині цього циклу я описував приблизну організацію Exchange, для якої нам потрібно отримати два сертифікати Exchange, як то кажуть в таблиці 1 нижче.

Таблиця 1: Вимоги сертифікатів

Загальна ім'я (Common Name)

Імена Subject Alternative Names

Потрібно для служб (Required for Services)

Outlook Web Access Outlook Anywhere Autodiscover EWS (Out of Office, Free and Busy)

EdgeSync Opportunistic TLS Domain Security

New-ExchangeCertificate

В оболонці Exchange Management Shell команда New-ExchangeCertificate може використовуватися для створення нового самоподпісного сертифіката або нового запиту сертифіката, який можна направити в ваш центр сертифікації (Certification Authority) і після цього імпортувати і включити для SMTP (Transport Layer Security (TLS)) і / або IIS, POP, IMAP, і UM (так званих служб Secure Sockets Layer (SSL)).

Ключовим параметром, який змусить команду New-ExchangeCertificate створити новий самоподпісной сертифікат або згенерувати запит, є GenerateRequest. Якщо ви опускаєте цей параметр, новий самоподпісной сертифікат буде створено Exchange, як показано на малюнку 1. Якщо ви додаєте цей параметр, Exchange створить запит сертифіката на PKI сертифікат (PKCS # 10) в локальному сховищі запитів.

Управління сертифікатами exchange (частина 3)

Малюнок 1: Створення нового самоподпісного сертифіката (Self-Signed Certificate)

При створенні запиту сертифіката, можна додавати наступний список параметрів:

SubjectName - вводиться у вигляді X.500 відмітної імені (distinguished name), що містить найважливіше властивість сертифіката, загальне ім'я. Суб'єктне ім'я (subject name) являє собою поле, яке використовується DNS службами, і, по суті, буде завіряти служби з підтримкою DNS про те, що сертифікат дійсної був виданий на запит для певного сервера або імені домена;

DomainName - використовується для додавання будь-яких додаткових імен Subject Alternative Names до сертифікату. Можна додавати кілька імен доменів, розділених комою, але довжина кожного імені домена не повинна перевищувати 255 символів;

IncludeAcceptedDomains - додасть всі прийняті домени, налаштовані в організації Exchange, як імена subject alternative name (коли імена визначені з використанням параметра DomainName і ключа IncludeAcceptedDomains, вони з'являться тільки один раз в запиті сертифіката)

IncludeAutoDiscover - додасть кожне ім'я домену у вигляді імені subject alternative name autodiscover.domainname. Ось два примітки: - коли імена визначені за допомогою параметра DomainName і за допомогою ключа IncludeAutodiscover, вони з'являться лише одного разу в запиті сертифіката - цей параметр можна додавати тільки при виконанні команди на сервері Exchange Client Access

Keysize - може використовуватися для вказівки різних розмірів RSA публічного ключа, пов'язаного з сертифікатом під час його створення. Якщо опустити цей параметр, буде використано значення за замовчуванням в 2048 біт, проте це значення можна змінювати на 1024, 2048 або 4096 біт;

Path - вказує місце, в якому буде зберігатися запит сертифіката. Потрібно вказати шлях і ім'я файлу (тип файлу - .req);

PrivateKeyExportable - може використовуватися для генерування сертифіката (і / або запиту) з експортним приватним ключем. Якщо не використовується, приватний ключ не буде експортним. Додавання цього параметра і вказівка ​​значення як True дозволить вам експортувати сертифікат і імпортувати його на інші сервери Exchange і / або ISA модулі;

BinaryEncoded - може використовуватися для зміни умовчання допомогою Base64 зашифрованого експортованого файлу в DER-зашифрований файл;

Services - може використовуватися при створенні нового самоподпісного сертифіката для визначення того, які служби (IIS, SMTP, POP, IMAP, UM) будуть використовувати новий сертифікат. Замовчуванням для цього параметра є SMTP (як видно з малюнка 1), вказівка ​​значення None дозволить створити новий самоподпісной сертифікат без включення для будь-яких служб;

FriendlyName - може використовуватися для визначення іншого імені вашого сертифіката, а не того, яке використовується за умовчанням - "Microsoft Exchange". воно буде обмежено до 64 символів.

Управління сертифікатами exchange (частина 3)

Малюнок 2: New-ExchangeCertificate

Ці два запити сертифіката тепер можна доставити в обраний центр сертифікації, і після отримання сертифікатів, їх можна буде імпортувати і включити для необхідних служб.

Включення EdgeSync, дивіться наступну статтю TechNet

При включенні EdgeSync вам потрібно враховувати інформацію з наступної статті TechNet "EdgeSync Fails with Event ID 10104", в якій чітко говориться, що сервери Hub і Edge Transport не підтримують використання одного і того ж сертифіката!

Import-ExchangeCertificate

Команда Import-ExchangeCertificate дозволяє імпортувати сертифікат, що може бути корисно, коли:

ви хочете імпортувати раніше експортований сертифікат

ви хочете імпортувати файл сертифіката, згенерований центром сертифікації

Є два параметри, які потрібно пам'ятати при виконанні команди Import-ExchangeCertificate:

Password - для введення пароля, який використовувався для шифрування приватного ключа під час експортування сертифіката

Path - для зазначення місця, де ви зберігали сертифікат, отриманий з ЦС

Коли сертифікат імпортовано, вам потрібно включити його для служби, виконавши команду Enable-ExchangeCertificate.

Enable-ExchangeCertificate

Виконавши команду Enable-ExchangeCertificate, ви включите сертифікат для однієї або декількох служб шляхом поновлення метаданих, що зберігаються в сертифікаті.

Кожна служба має свої вимоги до метаданих, тому у них будуть оновлюватися різні властивості:

IIS. Default Web Site буде оновлений;

SMTP. облікового запису Network Service будуть дані дозволу доступу читання (Read access) до відповідного приватному файлу ключа в каталозі Documents and Settings # 92; All Users # 92; Application Data # 92; Microsoft # 92; Crypto # 92; RSA # 92; MachineKeys;

UM. властивості сертифіката будуть оновлені для включення Unified Messaging.

Після отримання двох запитаних сертифікатів, на малюнку 3 видно, що вони імпортовані, і тієї ж терміні видно, що вони включені для необхідних служб.

Малюнок 3: Import-ExchangeCertificate

Get-ExchangeCertificate

Для отримання списку всіх сертифікатів, які доступні у вашому локальному сховищі сертифікатів, можна виконати команду Get-ExchangeCertificate. Можна використовувати цю команду для огляду полів сертифікатів, які використовуються такими службами Exchange (малюнок 4), як:

Issuer. хто випустив сертифікат

Subject. Загальна ім'я (Common Name) сертифіката

CertificateDomains. імена Subject Alternative Names певні на сертифікаті

NotBefore. визначає дату і час, з якої сертифікат може використовуватися

NotAfter. визначає дату і час закінчення терміну дії сертифіката

RootCAType. визначає тип ЦС, який видав сертифікат

Services. для яких служб сертифікат включений

Status. визначає дійсність / недійсність сертифікату

Thumbprint. звід даних сертифіката

Малюнок 4: Get-ExchangeCertificate (SMTP)

Управління сертифікатами exchange (частина 3)

Малюнок 5: Get-ExchangeCertificate (IIS, POP, IMAP)

Export-ExchangeCertificate

Щоб експортувати сертифікат (будь-то з метою створення резервної копії або для використання на інших серверах), можна скористатися командою Export-ExchangeCertificate. Виконання команди експортує сертифікат exchange і його приватний ключ за замовчуванням.

Можна також використовувати цю команду для експортування запиту сертифіката. При виконанні цієї команди, Exchange обстежує експортований сертифікат (використовуючи його thumbprint), і якщо це запит сертифіката, він експортується як PKCS # 10 файл. Якщо це сертифікат, то сертифікат буде експортовано як PKCS # 12 файл.

Є два параметра, які можна використовувати при виконанні команди Export-ExchangeCertificate:

Path. для визначення цільового каталогу й імені файлу для зберігання експортованого сертифікату, не забудьте ввести розширення файлу .req для експортування запиту сертифіката, і .pfx або .p12 для експортування сертифіката;

Password. для захисту приватного ключа, потрібно вводити як захищену рядок (можна використовувати різні способи вказівки пароля, як показано на малюнках 6 і 7).

Малюнок 6: Export-ExchangeCertificate (SMTP)

Управління сертифікатами exchange (частина 3)

Малюнок 7: Export-ExchangeCertificate (IIS, POP, IMAP)

Малюнок 8: Import-ExchangeCertificate (UM)

Remove-ExchangeCertificate

Як тільки ми включили необхідні сертифікати для всіх служб, можна видалити непотрібні сертифікати з сервера Exchange і локального сховища сертифікатів, виконавши команду Remove-ExchangeCertificate. Якщо видаляється сертифікат зберігається в службі каталогів Active Directory, цей об'єкт також буде видалений.

На малюнку 9 показано, як можна видалити всі самоподпісние сертифікати за один раз.

Управління сертифікатами exchange (частина 3)

Малюнок 9: Remove-ExchangeCertificate (Self-Signed)

Перевірка конфігурації сертифікатів

Після отримання необхідних сертифікатів і настройки служб Exchange на їх використання, прийшов час протестувати конфігурацію на предмет коректної роботи.

На малюнку 10 показано, що Outlook Web Access і Outlook Anywhere працюють відмінно, використовуючи необхідний сертифікат.

Управління сертифікатами exchange (частина 3)

Малюнок 10: Властивості сертифіката

І бажана функція Domain Security в організації Sunshine.Edu налаштована, як і було заплановано, як видно з малюнків 11 і 12.

Управління сертифікатами exchange (частина 3)

Малюнок 11: Domain Security

Управління сертифікатами exchange (частина 3)

Малюнок 12: Domain Security

висновок

Схожі статті