Установка ГОСТ-сертификата на Web-сервер
Для начала работы по этой пошаговой инструкции следует установить CriptoPro в соответсвии с инструкцией. Инструкция подробная, дублировать ее не вижу смысла. В своей среде я установил Крипто-Про на два различных сервера - центр регистрации на cR.test.gisis.ru, центр сертификации на cS.test.gisis.ru.
ЦС - это собственно говоря, сервер сертификатов. Его назначение - генерить все ключи и хранить закрытый ключ корневого сертифката предприятия. Еще он ведет журнал и имеет помимо стандартного Web-узла сервера сертификатов еще Web-службы на узле CA, туда обращается ЦР - центр регистрации.
ЦР - это некая пользовательская надстройка над ЦС, которая имеет пользовательский интерфейс, описанный тут и АРМ администратора, в котором производятся одобрения (или неодобрение) действий, запрашиваемых пользователем. Он также имеет Web-службы на узле RA, через который к системе сертификации могут обращаться пользователи. ЦР обращается к ЦС по SSL. Есть возможность проверить коннект между ЦР и ЦС.
Собственно, все описанное выше - это и есть правильно развернутая инфраструктура сертификатов. То, что должно получится в результате правильной инсталляции КриптоПро. А в даннной инструкции мы посмотрим, КАК ВОСПОЛЬЗОВАТЬСЯ этой развернутой инфраструктурой сертификатов.
Воспользоваться этой инфраструктурой мы попробуем (в моем окружении) на узле crypto.test.gisis.ru. Именно на этом узле будет мною развернут защищенный Web-узел, вход на который я потребую исключительно по действительным индивидуальным сертификатам пользователей. Причем в узле crypto.test.gisis.ru у меня нет даже логина - сертифкат исполняет роль логина - мой сайт автоматически увидит действительный сертификат, выпущенный этой инфраструктурой и вид страничек сразу изменится так, как они должны выглядеть для залогиненного пользователя. именно для этого необходимо установить выпустить и правильно установить на мой узел сертификат этой инфраструктуры.
Процедура установки ГОСТ-сертификата в инфраструктуре Крипто-Про существенно сложнее обычной установки сертификата стандартного алгоритма:
- Прежде всего необходимо установить на Web-узел сам криптопровайдер. Это компонент, который является расширением алгоритма schannel и позволяет обращаться к закрытым ключам, установленным на различных носителях или в реестре.
- Следующим шагом следует на этот Web-Сервер уcтановить утилиты центра регистрации (не путайте их с утилитами центра сертификации).
- После этого необходимо вызвать утилиту запроса на сертификат ЦР.
- Указанный запрос переносится на сервер сертификатов (ЦС) и обрабатывается там утилитой выпуска сертификата WEB-сервера центра регистрации.
- Теперь возвращаемся на Web-сервер, переносим туда полученный сертификат и попытаемся его скормить Web-серверу. Для начала его можно импортировать стандартным мастером - это внесет корневой сертификат в юзера (это делается просто на всякий случай).
- Далее надо скормить нашему Web-узлу корневой сертификат.
- Далее следует импортировать сертификат с закрытым ключом утилитой установки сертификата web-Сервера.
- После того, как сертификат импортирован и его закрытый ключ появился в крипто-провайдере машины с Web-узлом - можно установить этот сертификат непосредственно в наш WEb-узел.
Итак, сертификат установлен на наш Web-узел. Теперь необходимо потребовать, чтобы не сервер идентифицировал себя на клиенте (что в принципе неплохо), но гораздо важнее, чтобы клиент идентифицировал себя на сервере. Здесь вопрос не только в двухсторонней аутентифкации, но сайт устроен так, что клиентский сертификат фактически заменяет логин. Он должен быть индивидуальным и для этого в АРМе администратора выпускаются для каждого клиента уникальные сертификаты, которые и передаются клиентам (вместе с закрытым ключом).
И последняя тема, которую мы рассмотрим тут - это проверка корректности использования нашим сайтом инфраструктуры Крипто-Про. Для этого возьмем вот такой найпростейший сайт в (сгрузить) и попытаемся зайти в него с браузера клинетской машины, на которой установлен клиентский сертификат. Мы должны этим тестовым сайтом увидеть номер клиентского сертификата и его содержимое. Это и означает, что нам удалось успешно установить инфраструктуру ГОСТ-овских сертификатов на свой Web-узел.
|