PKI в Windows
Инфраструктура открытых ключей - технология аутентификации с помощью открытых ключей. Это комплексная система, которая связывает открытые ключи с личностью пользователя посредством удостоверяющего центра (Certificate Authority - CA).
В основе PKI лежит использование криптографической системы с открытым ключом и несколько основных принципов:
- закрытый ключ известен только его владельцу;
- удостоверяющий центр (CA) создает сертификат открытого ключа, таким образом удостоверяя этот ключ;
- никто не доверяет друг другу, но все доверяют удостоверяющему центру (CA);
- удостоверяющий центр (CA) подтверждает или опровергает принадлежность открытого ключа заданному лицу, которое владеет соответствующим закрытым ключом.
Фактически, PKI представляет собой систему, основным компонентом которой является удостоверяющий центр (CA) и пользователи, взаимодействующие между собой посредством удостоверяющего центра (CA).
1 Компоненты PKI
Рисунок 1 – Компоненты PKI
Центр сертификации - тут хранится список цифровых сертификатов, с помощью которых осуществляется работа всей инфраструктуры.
Инструменты управления. Точки отзывов и распространения сертификатов. Тут происходит как распространение, так и проверка клиентским приложением является ли сертификат действующим. В Windows Server 2008 появился автоответчик СмартРеспондер, который позволяет реализовать процесс проверки подлинности сертификата через клиент-серверную модель. То есть, клиент не загружает целиком список, а наоборот спрашивает подлинный ли этот сертификат или нет и получает ответ. Эту технологию поддерживает Windows Server 2008 и Windows Vista со стороны клиентской части и выше.
На основании шаблонов создаются цифровые сертификаты. В шаблонах мы можем указать для каких целей используется сертификат, набор определенных специфичных параметров. Список отозванных сертификатов может находиться на веб, на файловом ресурсе. Приложения и службы используют эти компоненты, то есть, защищенная почта, интернет.
Вспомним, как мы заходим на сайт банка, сразу загорается замок, что соединение безопасно и мы можем посмотреть этот сертификат банка, заверенный какой-либо организацией.
2 Цифровая подпись
Электронная подпись предназначена для идентификации лица, подписавшего электронный документ, и является полноценной заменой (аналогом) собственноручной подписи в случаях, предусмотренных законом.
Использование электронной подписи позволяет осуществить:
- Контроль целостности передаваемого документа: при любом случайном или преднамеренном изменении документа подпись станет недействительной, потому что вычислена она на основании исходного состояния документа и соответствует лишь ему.
- Защиту от изменений (подделки) документа: гарантия выявления подделки при контроле целостности делает подделывание нецелесообразным в большинстве случаев.
- Невозможность отказа от авторства. Так как создать корректную подпись можно, лишь зная закрытый ключ, а он известен только владельцу, он не может отказаться от своей подписи под документом.
- Доказательное подтверждение авторства документа: Так как создать корректную подпись можно, лишь зная закрытый ключ, а он известен только владельцу, он может доказать своё авторство подписи под документом. В зависимости от деталей определения документа могут быть подписаны такие поля, как «автор», «внесённые изменения», «метка времени» и т. д.
3 Добавление роли в AD
В диспетчере сервера нажмите «Добавить роли», в открывшемся окне «Мастер добавления ролей», поставьте галочку напротив роли «Службы сертификации Active Directory». После чего, нажмите далее и следуйте инструкциям на экране. После установки у Вас должна появиться новая роль «Службы сертификации Active Directory» в сводках, смотрите рисунок 2.
Рисунок 2 – Сводка по ролям.
4 Работа с центром сертификации
После установки роли в «Пуск» в разделе «Администрирование» появится пункт «Центр сертификации». Выбираем его. В открывшемся окне в левом меню видим:
- Отозванные сертификаты. Тут хранятся все отозванные сертификаты в виде списка. Можно получить информацию о сертификате, щелкнув правой кнопкой мыши.
- Выданные сертификаты. Тут хранятся все выданные сертификаты. Самый первый сертификат выдается контроллеру домена. При ознакомлении с сертификатами можно получить такую информацию, как: путь сертификации, состав сертификата и общие сведения о сертификате.
- Запросы в ожидании. Тут хранятся сертификаты, ожидающие проверки. Вы можете выдать или запретить сертификат.
- Неудачные запросы.
- Шаблоны сертификатов.
5 Проверка работы ЦС
Попробуем теперь получить сертификат для клиентского ПК. Запустим браузер, в адресной строке которого укажем адрес http://localhost/certsrv. Вы попадете на главную страницу центра сертификации.
Прежде всего необходимо загрузить сертификат ЦС и поместить его в хранилище доверенных коренных центров сертификации. Для этого выбираем: «Загрузка сертификата ЦС», «цепочки сертификатов или CRL», затем «Загрузка сертификата ЦС» и сохраняем сертификат в любое удобное место.
Теперь перейдем к установке, для этого щелкнем правой кнопкой на файле сертификата и выберем «установить сертификат», откроется мастер импорта, в котором откажемся от автоматического выбора хранилища вручную выбрав «Доверенные корневые центры сертификации», теперь данный ПК будет доверять всем сертификатам выданным данным ЦС.
Для получения клиентского сертификата снова откроем сайт ЦС и выберем «Запрос сертификата» - «расширенный запрос сертификата» - «Создать и выдать запрос к этому ЦС». Заполняем форму запроса, в качестве имени указываем имя ПК или пользователя, в качестве типа сертификата указываем «Сертификат проверки подлинности клиента» и жмем кнопку «Выдать».
Теперь на сервере откроем оснастку Центр сертификации и в разделе Запросы на ожидание (пункт 4) найдем наш запрос и щелкнув на него правой кнопкой выберем «Все задачи» - «Выдать».