Disclaimer: данный материал публикуется только для ознакомительных целей и не рекомендуется для использования в реальной производственной среде.
Краткий ввод в курс дела. Что такое EV сертификат – это Extended Validation сертификат, который в браузере отображается зелёной полосой:
Что это означает? Это означает, что издатель сертификата (например, VeriSign) более серьёзно и внимательно изучил предъявителя этого сертификата, что даёт пользователям ещё большую гарантию, что сайт, на который вы попали, является тем самым сайтом, который вы набрали в адресной строке. А так же этим подтверждается, что сайт является зарегистрированной коммерческой организацией с сопутствующими проверками. Т.е. к получателю Extended Validation сертификатов предъявляются достаточно жёсткие требования. Эти сертификаты в Public Certification Authorities стоят значимо дороже, чем обычные SSL сертификаты (я посмотрел по предложениям и получилось в среднем увеличение цены в 2 раза). Плюс, такие сертификаты не имеют возможности использования WildCard доменов в Subject, хотя допускают Subject Alternative Names (когда одному web-сайту сопоставляется несколько имён). Такие сертификаты в интернете могут выпускать только одобренные центры сертификации (Certification Authorities). Список таких CA можно посмотреть вот здесь: http://cabforum.org/forum.html. Требования к работе с такими сертификатами для CA и покупателей: http://cabforum.org/documents.html
Но это всё лирика. Мы хотим внутри корпоративного домена поднять SSL веб-портал и чтобы там была такая же зелёная полоска :-) и мы можем такое сделать. Я покажу процесс на примере CA и домена под управлением Windows Server 2008 R2. Я предполагаю, что у вас уже развёрнут домен Active Directory и установлена роль AD CS (Active Directory Certificate Services).
Когда у нас предварительные подготовления закончены нам нужно произвести необходимые изменения в шаблоне Web Server. Для этого нужно сделать следующее:
Теперь раскройте оснастку Certificate Authority и перейдите в Certificate Templates –> New –> Template To Issue и выберите наш новый шаблон. После того, как все приготовления закончены, можно приступать к редактированию групповой политики.
Примечание: Для редактирования политики вам потребуется консоль GPMC в Windows Server 2008 R2, Windows 7 с установленным RSAT. При этом версия ОС на контроллере может быть другой, но не ниже Windows Server 2003, а сервер CA не ниже Windows Server 2003 Enterprise Edition.
Запустите оснастку GPMC и создайте новую политику, которая будет прилинкована на уровне домена. Безусловно, вы можете редактировать существующую Default Domain Policy, но я не рекомендую использовать дефолтную политику, а для каждой задачи создавать свою политику и линковать куда нужно. В редакторе политики перейдите по секции:
Computer Configuration –> Policies –> Windows Settings –> Security Settings –> Public Key Policies –> Trusted Root Certification Authorities
здесь выберите All Task –> Import и импортируйте корневой сертификат вашего CA, который является корневым в вашем лесу. Далее, выберите свойства сертификата (не открывать сам сертификат) и перейдите в таб Extended Validation:
И добавьте сюда тот самый OID, который у вас был сгенерирован при создании новой Issuance Policy.
Теперь вам нужно перейти на ваш web-сервер. Если это Windows Server 2003, то вы можете запросить новый SSL сертификат из оснастки IIS. Если у вас web-сервер под управлением Windows Server 2008 или выше, то вы не можете больше запрашивать SSL сертификат из оснастки IIS, а только путём генерирования запроса в формате PKCS#7, либо через MMC оснастку Certificates запущенной от лица Local Computer. Запросите новый сертификат на основе вновь созданного шаблона (желательно при запросе указывать наиболее подробные сведения о вашем Web-сервере). Если у вас в политике шаблона указано ручное одобрение запроса – одобрите его в оснастке Certification Authority –> Pending Requests. После того, как сертификат сгенерирован, настройте ваш веб-сервер на работу с SSL с использованием этого сертификата.
Теперь подождите, пока отредактированная групповая политика применится на компьютерах домена. После чего запустите браузер на любом клиенте (не ниже Windows XP SP2 с установленным Internet Explorer 7 или выше) и наберите HTTPS адрес вашего веб-сервера и получайте профит:
И ещё раз о требованиях к операционным системам:
И ещё раз напоминаю, что это будет видно только тем компьютерам, которые получили изменённую политику. Остальные компьютеры будут видеть обычный замочек и всё.
Have a nice day!
Почему то когда я пытаюсь энролить сертификат через IIS в Windows Server 2003 Мне приходит сертификат на основе старого шаблона :( Всякие извращения с mmc не помогли... :(
Это скорее всего связано с кешем браузера.
Не получается почему-то.. Если через IIS в Windows Server 2003 то тянет старый шаблон Если через mmc то The certificate has invalid policy. 0x800b0113 (-2146762477) Error Constructing or Publishing Certificate Invalid Issuance Policies: (...здесь OID...) Вчера даже дома в тэстовой среде получал такую же ошибку.. Вроде все по инструкции сделал.
Вот тут http://technet.microsoft.com/en-us/library/dd759060.aspx пишут про Application Policies почему то :|
В качестве временного воркэраунда сделайте вот это на CA: certutil –setreg CA\CRLFlags +CRLF_IGNORE_INVALID_POLICIES net stop certsvc && net start certsvc по поводу Application Policies — это ошибка в статье МСа. Должно быть Issuance Policy.
Да это помогло. Сертификаты энролятся. Только зеленой полосы нету. :( Политики вроде все компютеры получили. Уже не знаю куда смотреть. Пытался исследовать https://login.live.com Ладно видимо не судьба. В любом случае спасибо за помощь и вообще за весь блог очень много для себя почерпнул.
Так вроде дошло почему у меня тичего не позеленело http://technet.microsoft.com/en-us/library/dd759060.aspx issuing CA must meet the following requirements: The certification path of the issuing CA certificate includes a root certificate that includes an EV certificate policy. The issuing CA certificate includes the All Issuance policy or an EV certificate policy. The issuing CA is an enterprise CA.
Разобрался вроде Был криво установлен Ent SubCA (в нем не присутствовало All Issuance policy ) Отсюда ошибка Invalid Issuance Policies при энроле и соответственно не желение зеленеть при IGNORE_INVALID_POLICIES
и снова нет. Что-то у них очень много ошибок в статье. Корневой CA может иметь EV certificate policy, но обычно корни имеют All Issuance Policy. Issuing CA может иметь EV certificate policy, но может и All Issuance Policy. Правда, тут следует уточнить, что All Issuance Policy должен быть явно определён в CAPolicy.inf при установке Subordinate CA и не обязательно для Root CA. Вот пример этих строчек: [PolicyStatementExtension] Policies = PolicyName Critical = false [PolicyName] OID = 2.5.29.32.0; это OID = All Issuance Policies URL = "http://URL To your CPS"; URL обязателен Issuing CA может быть и Enterprise и Standalone. Они выдают одинаковые сертификаты и отличаются главным образом особенностями эксплуатации. Почему я это всё не написал в основном посте? Я просто на тот момент не заморачивался этим и делал на примитивном сценарии, когда у нас один Root/Policy/Issuing CA.
Comments: