пятница, 1 февраля 2013 г.

Удостоверяющий центр на Windows 2008/2008R2


Удостоверяющий центр на Windows 2008/2008R2 RC. Краткое руководство по установке

wrenchЭто краткое руководство демонстрирует развертывание и тестирование удостоверяющего центра предприятия на MS Windows Server 2008/2008R2 RC в инфраструктуре «один лес, один домен».
Развертывание УЦ выполняется в рамках подготовки к публикации веб-почты (OWA) MS Exchange Server 2007 с помощью MS ISA Server 2006.
Инфраструктура публичных ключей
Инфраструктура Публичных Ключей обеспечивает защиту электронных писем от перлюстрации, безопасную оплату в интернет-магазинах и, в целом, безопасную передачу информации. Она включает в себя сертификаты, удостоверяющие центры (УЦ) и компьютеры-клиенты. УЦ выдают сертификаты клиентам – пользователям и компьютерам. При электронной переписке, сертификат пользователя дает нам уверенность в том, что письмо получено именно от этого пользователя, а не от мошенника. При покупке на веб-сайте, сертификат компьютера (веб-сайта) дает нам уверенность в том, что мы пришли в интернет-магазин, заслуживающий доверия. Сертификаты являют видимой частью айсберга, поэтому корректнее было бы использовать название Инфраструктура Сертификатов.
В инфраструктуре публичных ключей используются неразрывные пары ключей: публичный + секретный (закрытый). Публичные ключи обычно доступны всем, а секретные хранятся только у владельцев ключей. Ключи всегда существуют парами, публичный ключ хранится в сертификате, секретный – защищенно, на компьютере или съемном носителе.
Сертификат выдается удостоверяющим центром (УЦ). УЦ присваивает сертификату запрошенное Имя (Subject Name) и записывает в сертификат публичный ключ, сведения об УЦ-эмитенте, сроке годности и другую полезную информацию. При истечении срока годности сертификат теряет свою силу и более не может быть использован. Если по какой-то причине (например, в случае кражи) сертификат должен быть объявлен негодным до окончания срока годности, администратор УЦ вносит сертификат в список «отозванных» сертификатов. В любое время клиент может проверить сертификат и отказать в сотрудничестве, если сертификат входит в черный список.
Замечание   Описанная здесь инфраструктура предназначена для испытательных целей, а не для производственной системы.

О сервисах

Удостоверяющий центр

Удостоверяющий центр выдает сертификаты только идентифицированным пользователям и компьютерам. Если пользователь или компьютер прошли аутентификацию в домене Windows, УЦ предприятия имеет достаточно информации и обычно не задает дополнительных вопросов.
Пользователь может запросить сертификат в MMC-консоли Certificates или через веб-форму. Хотя запрос через веб-форму является простым и в то же время безопасным (вся передаваемая информация шифруется), особенности УЦ на Windows 2008 иногда требуют работы в командной строке.

Защищенная веб-почта на платформе Exchange + ISA

Любая внешняя сеть или сообщество внешних сетей (интернет) считаются агрессивной средой, поэтому доступ из внешней сети к веб-почте на Exchange 2007 должен быть защищен и для этого удобнее всего применять ISA 2006. Защищенный доступ клиента обеспечивает сертификат компьютера на ISA 2006. Сертификат можно купить у коммерческого УЦ, но в нашем случае сертификат выдаст «домашний» УЦ, развернутый на Windows 2008.

Развертывание УЦ предприятия

О компьютере, на котором мы будем работать:
  • Полное имя компьютера: sCA.lab.dom
  • ОС
    • MS Windows Server 2008 Standard English
    • MS Windows Server 2008 R2 Standard English Release Candidate – допустимо для лабораторной среды.
  • Член домена: lab.dom.
  1. Зарегистрироваться на компьютере с учетной записью администратора домена.
  2. Выполнить команду servermanager.msc.
  3. В консоли Server Manager перейти к Server Manager (<короткое_имя_компьютера>) / Roles.
    В панели Roles выбрать Add Roles. Запускается помощник Add Roles Wizard.
  4. Запустить помощник Add Roles Wizard. Выполнить шаги вместе с помощником, используя информацию из Таблицы 1.
    Таблица 1. Информация для выполнения шагов с помощником Add Roles Wizard
    На шагеСделать
    Before You BeginНажать Next.
    Server RolesВыбрать Active Directory Certificate Services.
    Затем нажать Next.
    AD CSНажать Next.
    image003
    Role ServicesВыбрать Certification Authority иCertification Authority Web Enrollment.
    Открывается диалог Add Roles Wizard.
    В диалоге нажать Add Required Role Services.
    Затем нажать Next.
    Setup TypeВыбрать Enterprise.
    Затем нажать Next.
    Выбор Enterprise (УЦ предприятия) обусловлен интеграцией с AD и дальнейшей простотой эксплуатации.
    CA TypeВыбрать Root CA.
    Затем нажать Next.
    Private KeyВыбрать Create a new private key.
    Затем нажать Next.
    CryptographyНажать Next.
    CA NameВвести имя УЦ в Common name for this CA.
    image005
    Validity PeriodНажать Next.
    Certificate DatabaseНажать Next.
    Web Server (IIS)Нажать Next.
    Role ServicesНажать Next.
    ConfirmationНажать Install.
    Progress
    ResultsНажать Close.
  5. Перезагрузить компьютер.

Первая попытка получения сертификата с помощью Internet Explorer

Если на Windows 2008 развернуть удостоверяющий центр по процедуре Развертывание УЦ – вы не сможете получить сертификат для ISA 2006 с помощью Internet Explorer.
А если попытаетесь, то получите сообщение об ошибке:
image007
На снимках хорошо видно, что компонент Certification Authority Web Enrollment требует поддержки протокола HTTPS, в то время как веб-сервер не поддерживает HTTPS. Это недоразумение сохранилось и в MS Windows Server 2008 R2 Release Candidate.
image009
Чтобы компонент Certification Authority Web Enrollment мог нормально работать, придется сделать дополнительные шаги.

Дополнительные шаги

Получение сертификата для УЦ и веб-сервера

  1. Зарегистрироваться на компьютере как администратор домена.
  2. Ввести команду mmc. Появляется окно Console1 – [Console Root].
    В меню выбрать File / Add/Remove Snap-in. Появляется диалог Add or Remove Snap-ins.
    В области Available snap-ins выбрать Certificates, нажать Add. Появляется диалог Certificates snap-in.
    В диалоге Certificates snap-in выбрать Computer account, нажать Next и затем Finish.
    В диалоге Select Computer нажать Finish.
    В диалоге Add or Remove Snap-ins нажать OK.
  3. В консоли перейти к Console Root / Certificates (Local Computer) / Personal / Certificates.
    После активации роли Active Directory Certificate Services ‑ в списке сертификатов уже есть сертификат с коротким именем, совпадающим с именем УЦ. Но этот сертификат непригоден для доступа к веб-серверу по защищенному каналу (протокол HTTPS).
  4. В контекстном меню объекта Certificates выбрать All Tasks / Request New Certificate . Появляется помощник Certificate Enrollment.
  5. В помощнике Certificate Enrollment нажать Next.
    В области Request Certificates выбрать Computer, нажать Enroll.
    image011
    Замечание: Если УЦ работает на контроллере домена, необходимо выбрать Domain Controller.
  6. Если получение сертификата прошло успешно, появляется сообщение STATUS: Succeeded.
    В области Certificate Installation Results нажать Finish.
image013
  1. Закрыть консоль и сохранить конфигурацию консоли на рабочем столе в файлCertificates (Local computer).msc.


    Получение сертификата для УЦ и веб-сервера на Windows 2008 R2

    Процедура получения сертификата в случае с Windows Server 2008 R2 отличается на один шаг.
  2. Зарегистрироваться на компьютере как администратор домена.
  3. Ввести команду mmc. Появляется окно Console1 – [Console Root].
    В меню выбрать File / Add/Remove Snap-in. Появляется диалог Add or Remove Snap-ins.
    В области Available snap-ins выбрать Certificates, нажать Add. Появляется диалог Certificates snap-in.
    В диалоге Certificates snap-in выбрать Computer account, нажать Next и затем Finish.
    В диалоге Select Computer нажать Finish.
    В диалоге Add or Remove Snap-ins нажать OK.
  4. В консоли перейти к Console Root / Certificates (Local Computer) / Personal / Certificates.
    После активации роли Active Directory Certificate Services ‑ в списке сертификатов уже есть сертификат с коротким именем, совпадающим с именем УЦ. Но этот сертификат непригоден для доступа к веб-серверу по защищенному каналу (протокол HTTPS).
  5. В контекстном меню объекта Certificates выбрать All Tasks / Request New Certificate . Появляется помощник Certificate Enrollment.
    image015
  6. В помощнике Certificate Enrollment нажать Next.
    В области Request Certificates выбрать Computer, нажать Enroll.
    image017
    Замечание: Если УЦ работает на контроллере домена, необходимо выбрать Domain Controller.
  7. Если получение сертификата прошло успешно, появляется сообщение STATUS: Succeeded.
    В области Certificate Installation Results нажать Finish.
    image019
  8. Закрыть консоль и сохранить конфигурацию консоли на рабочем столе в файлCertificates (Local computer).msc.

Связывание сертификата с веб-сервером

  1. Выполнить команду InetMgr. Появляется консоль Internet Information Services (IIS) Manager.
  2. В консоли перейти к ... Sites / Default Web Site.
    image021 
  3. В контекстном меню объекта выбрать Edit Bindings. Появляется диалог Site Bindings.
    image023 
  4. В диалоге нажать Add. Появляется диалог Add Site Binding.
  5. В диалоге Add Site Binding, в Type выбрать https. Затем в появившемся списке SSL certificate выбрать сертификат с именем <полное_имя_компьютера>.
    Нажать Ok.
    image025
  6. В диалоге Site Bindings нажать Close.
  7. В консоли перейти к ... Sites / Default Web Site / CertSrv. Появляется панель /CertSrv Home. По умолчанию режим отображения панели Features View (см. низ панели).
    image027
  8. В панели выбрать SSL Settings. В контекстном меню объекта выбрать Open Feature. Появляется панель SSL Settings.
  9. В панели включить Require SSL и Require 128-bit SSL.
    Затем в панели Actions нажать Apply.
    image029
  10. Для проверки готовности роли Certification Authority Web Enrollment выполнить тестПолучение сертификата пользователя с помощью веб-формы.

Вторая попытка получения сертификата с помощью Internet Explorer

Для обеспечения защищенного доступа к веб-почте, компьютер с ISA 2006 должен располагать сертификатом компьютера. Решив первую проблему и получив доступ по протоколу HTTPS к УЦ на Windows 2008, вы все равно не сможете получить сертификат компьютера на основе шаблона Веб-сервер.
А если попытаетесь получить сертификат...
image031
…то с удивлением обнаружите, что невозможно включить необходимый параметрПометить ключ как экспортируемый.
image033
Чтобы получить желанный сертификат компьютера, придется перейти к работе в командной строке.

Получение сертификата компьютера в командной строке

Перед выполнением процедуры следует убедиться в том, что на ISA:2006:
  • Включено системное правило c номером 1 Allow access to directory services for authentication purposes.
  • Создано и включено правило, пропускающее TCP-трафик от ISA к УЦ в диапазоне портов 49152 – 65535.
    • На диапазон 49152 – 65535 косвенно указывает документ http://support.microsoft.com/kb/929851. Существует возможность зафиксировать порт на Windows 2008 и затем ужесточить правило наISA 2006.
  1. Зарегистрироваться на компьютере с учетной записью администратора домена.
  2. Открыть командную консоль, перейти в каталог C:\Service (при необходимости создать каталог C:\Service).
  3. Создать файл C:\Service\Request.inf, содержащий текст.
[Version]
Signature= "$Windows NT$" 
[NewRequest]
Subject = "CN=<полное_внешнее_имя_для_сервиса_OWA>"
KeySpec = 1
KeyLength = 1024
Exportable = TRUE
MachineKeySet = TRUE
UseExistingKeySet = FALSE
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
ProviderType = 12
RequestType = PKCS10
KeyUsage = 0xa0 
[EnhancedKeyUsageExtension]
OID=1.3.6.1.5.5.7.3.1
Пример файла Request.inf. На данном снимке полное внешнее имя для веб-почты:owa.ext-lab.dom
image035
Благодаря выражению Exportable=true мы получим желанную галочку Пометить ключ как экспортируемый, а MachineKeyset=true даст сертификат компьютера.
Выполнить команду для запроса сертификата
certreq -new Request.inf Request.req
Выполнить команду для получения сертификата
certreq -submit -attrib "CertificateTemplate:WebServer" Request.req Server.crt
Появляется диалог Select Certification Authority.
В диалоге щелкнуть по единственному УЦ и затем нажать OK.
image037
Если УЦ успешно выдал сертификат, появляется сообщение об успешном получении сертификата:
image039
Выполнить команду для установки сертификата
certreq -accept Server.crt
Выполнить тесты Проверка наличия сертификата компьютера и Проверка пригодности сертификата для веб-прослушивателя.

Тесты

Получение сертификата пользователя с помощью веб-формы

О компьютере, на котором мы будем работать:
  • Тестовый компьютер работает под управлением Windows Server 2003 English (требование версии 2003 вовсе не является обязательным, просто снимки сделаны именно в этой версии) и является членом домена.
  • Internet Explorer 6.0 (версия 6 также не является обязательной).
  1. Зарегистрироваться на компьютере с учетной записью пользователя домена.
  2. Запустить Internet Explorer и перейти по ссылке Request a certificate.
    image041 
  3. Перейти по ссылке User Certificate.
    image043 
  4. Нажать Submit.
    image045 
  5. Нажать Yes.
    image047 
  6. Выполняется онлайновая обработка запроса.
    image049 
  7. Перейти по ссылке Install this certificate.
     image045
  8. Нажать Yes.
    image053
  9. Сообщение Your new certificate has been successfully installed (Ваш новый сертификат был успешно установлен) говорит о том, что тестирование доступа к УЦ по протоколу HTTPS прошло успешно.
image055

Проверка наличия сертификата компьютера

О компьютере, на котором мы будем работать:
  • Полное имя компьютера: r01.lab.dom
  • Полное имя, по которому компьютер r01.lab.dom предоставляет доступ к веб-почте из внешней сети: owa.lab.dom
  • ОС
    • MS Windows Server 2003 Standard English
    • Один внешний сетевой интерфейс, с единственным фиксированным IP-адресом.
    • Один внутренний сетевой интерфейс, с единственным фиксированным IP-адресом.
  • Член домена: lab.dom.
  • MS ISA Server 2006 Standard English
  1. Зарегистрироваться на компьютере с учетной записью администратора домена.
  2. На рабочем столе открыть консоль Certificates (Local computer).msc.
    (Консоль была создана на шаге Получение сертификата для УЦ и веб-сервера)
  3. В консоли перейти к Console Root / Certificates (Local Computer) / Personal / Certificates.
  4. В консоли должен присутствовать сертификат с именем<полное_внешнее_имя_для_сервиса_OWA>
    На данном снимке полное внешнее имя для веб-почты: owa.ext-lab.dom
image057

Проверка пригодности сертификата для веб-прослушивателя

О компьютере, на котором мы будем работать:
  • Полное имя компьютера: r01.lab.dom
  • Полное имя, по которому компьютер r01.lab.dom предоставляет доступ к веб-почте из внешней сети: owa.lab.dom
  • ОС
    • MS Windows Server 2003 Standard English
    • Один внешний сетевой интерфейс, с единственным фиксированным IP-адресом.
    • Один внутренний сетевой интерфейс, с единственным фиксированным IP-адресом.
  • Член домена: lab.dom.
  • MS ISA Server 2006 Standard English
    • Веб-прослушиватель создан по процедуре Создание веб-прослушивателя.
  1. Зарегистрироваться на компьютере с учетной записью администратора домена.
  2. В консоли ISA выбрать объект Firewall Policy / Toolbox / Web Listeners.
  3. Выбрать веб-прослушиватель для веб-почты (OWA). На данном снимке веб-прослушиватель имеет имя SSL.
    image059
  4. Сделать двойной щелчок по веб-прослушивателю. Открывается диалог, в нем выбрать вкладку Certificates.
    Выбор IP-адреса на вкладке происходит автоматически, поскольку есть только один внешний сетевой интерфейс и один IP-адрес для внешнего интерфейса.
  5. Нажать Select Certificate. Появляется диалог Select Certificate.
  6. В верхней половине диалога по умолчанию выбран единственный сертификат. Рядом с сертификатом располагается зеленый значок, это означает пригодность сертификата для веб-прослушивателя.
    image061
  7. Нажать Cancel для закрытия диалога.

Приложение

Создание веб-прослушивателя

Компактный вариант процедуры.
О компьютере, на котором мы будем работать:
  • Полное имя компьютера: r01.lab.dom
  • Полное имя, по которому компьютер r01.lab.dom предоставляет доступ к веб-почте из внешней сети: owa.lab.dom
  • ОС
    • MS Windows Server 2003 Standard English
    • Один внешний сетевой интерфейс, с единственным фиксированным IP-адресом.
    • Один внутренний сетевой интерфейс, с единственным фиксированным IP-адресом.
  • Член домена: lab.dom.
  • MS ISA Server 2006 Standard English
Выполняется на ISA под учетной записью администратора домена.
  1. В консоли ISA выбрать объект Firewall Policy / Toolbox / Web Listeners.
  2. Из контекстного меню выбрать New Web Listener.
  3. Ввести параметры в помощнике New Web Listener Definition Wizard.
    a)     Web Listener Name: SSL
    b)    Выбрать Require SSL secured connection with clients
    c)     Web Listener IP Addresses
    i)      Выбрать только External
    (1)   Для выбранной сети установить <IP_адрес_внешнего_сетевого_интерфейса>
    d)    Назначить валидный сертификат для внешнего сетевого интерфейса.
    i)      Выбрать Assign a certificate for each IP address
    Выбор IP-адреса происходит автоматически, поскольку есть только один внешний сетевой интерфейс и один IP-адрес для интерфейса.
    ii)     Нажать Select Certificate…
    Появляется диалог Select Certificate.
    iii)    В верхней половине диалога выбрать валидный сертификат, и затем нажать Select.
    e)     Выбрать Authentication Settings: HTML Form Authentication
    i)      По умолчанию выбрано Windows (Active Directory) — оставить выбор в силе.
    f)     Отключить Enable SSO for Web sites published with this Web listener
  4. Принять изменения нажатием Apply в панели.
Владислав Артюков
(Vladislav Artukov)

Комментариев нет:

Отправить комментарий