Главная > Разное, Exchange 2010, Exchange 2013, Lync > Публикация CRL (certificate revocation list)

Публикация CRL (certificate revocation list)

PKIProcessДанная статья описывает пример публикации CRL (certificate revocation list), в целях доступности их внешним клиентам, например мобильным клиентам lync, в случае когда для публикации вебслужб Lync используются сертификаты внутреннего CA. Данная статья предназначена для тех кому надо решить данную задачу, но не хочет лезть в дебри PKI 🙂

 

Что мы имеем:

  • Внутренний CA развернут и работает корректно
  • Запись во внешнем DNS(для публикации crl по этому имени), например ca.company.ru
  • Возможность обеспечить доступ к серверу CA (или другой публикующий web server) из Интернета по порту 80/TCP (HTTP). Например можно использовать IIS ARR который мы развернули в прошлых статьях для публикации вебслужб Lync. Просто добавим новую ферму (Server Farm) участником которой будет сервер CA и добавим новое правило(URL Rewrite) для запросов типа ca.* (для нашего примера).

Итак, приступим:

  1. На веб сервере (у нас CA) создадим папку, например c:\CRLDistribution . Дать на нее серверу CA NTFS права на модификацию. Расшарить директорию и дать серверу CA или группе Everyone права на модификацию. crl1crl2
  2. Откройте Internet Information Services (IIS) Manager (на сервере CA). Далее правой кнопкой по Default Web Site и выберете Add Virtual Directory. Заполните поле ALIAS например – CRLD, и выберете директорию из пункта 1. crl3
  3. Выберете созданную виртуальную директорию. Справа выберете и зайдите в Directory Browsing, и включите его (Enable справа в поле action)
  4. Выберете созданную виртуальную директорию. Справа выберете и зайдите в Configuration Editor, выберете в поле section значение system.webServer/security/requestFiltering. Ниже в поле allowDoubleEscaping выберете для него true. crl4         Это необходимо для доступа к файлам, содержащим в имени знак ‘+’. Такой знак генерируется в имени файла, содержащего Delta CRL. Без этого при попытке доступа к файлу Delta CRL сервер будет в любом случае возвращать Error 404 (даже при наличии файла). В нашем случае необходимо также выставить данный флаг и на IIS ARR: Default Web Site\Request Filtering\Edit Feature Settings\Allow double escaping
  5. Перейти на СА и открыть оснастку управления СА (Administrative Tools > Certificate Authority). Войти в свойства CA и перейти на вкладку Extensions. Нажать кнопку Add. В поле Location ввести следующее:
  6. file://\\CA01\CRLDistribution\<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl
    Необходимо для автоматической публикации crl в нужной папке. Где \\CA01\CRLDistribution — UNC-путь к директории, а CA01 — имя, по которому веб-сервер доступен внутри сети(в нашем случае это корпоративный CA).
    Нажать ОК, выделить в списке эту строку и установить:
    Publish CRLs to this location
    Publish Delta CRLs to this location
  7. Добавить еще одну строку(по этому пути внешние клиенты будут искать наши crl). При этом CA.company.ru – fqdn имя по которому сервер доступен из сети интернет. CRLD – это ALIAS виртуальной директории.
    http://CA.company.ru/CRLD/<CaName><CRLNameSuffix><DeltaCRLAllowed>.crl
    Нажать ОК, выделить в списке эту строку и установить:
    Include in CRLs. Clients use this to find Delta CRL locations.
    Include in the CDP extension of issued certificates
  8. crl5
  9. Сохранить изменения. Согласиться с перезапуском службы СА
  10. В оснастке управления СА щелкнуть правой кнопкой на Revoked Certificates и выбрать All tasks -> Publish. В директории на веб-сервере появились два файла — CLR и Delta CLR. Если по этому действию возникают ошибки то они зачастую связаны с отсутствием прав на директорию размещения файлов crl. Еще раз перепроверьте правильно ли вы дали доступ к папке. Возможно помогут статьи с technet http://social.technet.microsoft.com/wiki/contents/articles/3081.ad-cs-error-the-directory-name-is-invalid-0x8007010b-win32http-267.aspx и http://technet.microsoft.com/en-us/library/cc726342(v=WS.10).aspx
  11. Теперь нужно перевыпустить сертификаты для наших публикуемых сервисов. Например для Lync: необходимо перевыпустить сертификаты для ReverseProxy и Edge. Открыть свойства новых сертификатов и на вкладке Details проверить содержимое поля CLR Distribution Points. Там должен фигурировать соответствующий URL, ссылающийся на публичный FQDN веб-сервера.
  12. Проверить доступность CRL из интернет. Например пройдя в нашем случае по ссылке http://ca.company.ru/crld/ вы должны увидеть все файлы в этой директории, попробуйте скачать их. Если скачивается значит все работает как надо. crl6
  13. Примечание: Для использования сертификатов, выданных внутренним CA, с сервисами, доступными из интернет (различные веб службы, например веб службы Lync), необходимо, чтобы публичные сертификаты корневого центра сертификации и всех подчиненных CA были помещены в хранилище Доверенные корневые центры сертификации / Trusted root certification authorities и клиентам были доступны CRL(списки отзыва сертификатов), публикуемые этими центрами сертификации. На мобильных клиентах Lync также необходимо устанавливать корневой сертификат.
  14. Пример из практики для чего нужна данная публикация CRL.

Исходные данные: В организации развернут Lync, используются сертификаты внутреннего CA. Администратор решил организовать доступ мобильных клиентов Lync из сети интернет. Опубликовал веб службы в интернет с помощью IIS ARR, использовал для публикации сертификаты выпущенные внутренним CA. Установил Lync client 2013 на свой смартфон с ОС WP8, установил корневой сертификат своего CA и успешно подключился, после этого свернул приложение. На следующее утро администратор вызвал из фона приложение Lync но приложение не могло подключиться, помогал только выход из клиента путем разлогирования, при этом появлялось сообщение что связь с сервером разорвана. Данная проблема повторялась каждый раз после длительного периода нахождения в фоне(около 4-6 часов).

Причины: поиск мобильным клиентом списков отзыва сертификатов (CRL)

Решение проблемы: публикация CRL, заново опубликовать веб службы Lync с новыми сертификатами (где есть новая точка распространения CRL)

Profit!

Реклама
  1. exonix
    02.08.2016 в 16:35

    Спасибо за статью. Всё сделал как описано, но только я использовал не общую папку, а полный путь: file://C:\inetpub\wwwroot\CRLDistribution — вообще никаких прав настраивать не нужно было.

    • MRN
      02.08.2016 в 16:51

      Пожалуйста! да и так можно, возможно так проще будет.

      • exonix
        03.08.2016 в 14:49

        Ринат, а у Вас есть опыт по внедрению VPN с двухфакторной аутентификацией? Сейчас всё работает, но сертификат хранится в локальном хранилище Компьютера. Меня интересует, как этот сертификат перенести на флешку или токен или TPM (это сделал) и сказать клиенту где искать сертификат…

      • MRN
        03.08.2016 в 15:11

        Да внедрял.. OpenVPN, сертификат на usb-токене. Информации полно в интернете, погуглите — сам так и настраивал по чьей-то статье, ничего сложного.

      • exonix
        03.08.2016 в 15:42

        Я искал для RRAS сервера с SSTP. Сейчас почитаю, может статьи про OpenVPN наведут на мысль. Спасибо.

  2. exonix
    28.02.2017 в 18:12

    Скажите пожалуйста,
    если менять сервер CRL то, я так понял, надо перевыпускать сертификат для сервера. Нужно ли перевыпускать сертификат для клиентов?

    • MRN
      01.03.2017 в 19:27

      Да, надо. Если вы меняете путь доступа к crl то надо перевыпустить сертификаты в том числе и клиентские сертификаты (у них также присутствует путь к crl). Вопрос только в необходимости это делать 🙂 у вас используется аутентификация по сертификатам?

      • exonix
        01.03.2017 в 19:36

        да, используется для SSTP.
        но я так понял, что можно и не перевыпускать, если старые пути сделать как CNAME во внешнем DNS, который будет ссылаться на новый сервер.

      • MRN
        01.03.2017 в 19:42

        Да наверное будет работать, я правда так не делал. Проверьте через браузер — доступ есть, значит все ок.

  3. exonix
    06.03.2017 в 12:25

    пришлось менять в CRL путь FILE://\\. после этого сертификат НЕ перевыпускал. Всё работает (SSTP VPN)

  1. No trackbacks yet.

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

Заметки ИТ инженера

Мои заметки, связанные с профессиональной деятельностью в сфере Информационных Технологий

IT in realworld

о технологиях Microsoft, или кратко обо всем. Active Directory and other stuff.

%d такие блоггеры, как: