WWW / SSL сервер

Previous pageReturn to chapter overviewNext page

 

WWW HTTP сервер, если порт не занят, запустится автоматически, и никаких особенных настроек он не требует.

 

Но для SSL потребуются сертификаты. Сертификат нужен серверу для организации шифрования данных в рамках SSL. Реализация SSL поддерживает работу только с серверным сертификатом, сертификаты со стороны клиента игнорируются.

 

Серверные сертификаты должны находиться в системном хранилище Windows. При запуске SSL сервер просматривает все имеющиеся там подходящие сертификаты, и если их нет, он не запустится.

 

Статус SSL сервера и общее количество подходящих сертификатов можно посмотреть на главной странице службы.

 

Для просмотра содержимого системного хранилища сертификатов имеется специальная оснастка MMC консоли. Откройте пустую консоль (mmc.exe) и добавьте туда оснастку "Сертификаты". При добавлении спросят, какое хранилище открывать, надо выбрать "системное" (Local System). Откроется дерево хранилища, сертификаты с приватными ключами находятся там в персональном разделе (Personal/Certificates). Сохраните оснастку, она в дальнейшем понадобится.

 

Сертификат должен удовлетворять следующим требованиям -

 

Иметь приватный ключ.
Атрибут Key Usage должен быть Digital Signature, Key Encipherment (0xa0).
Должен быть Enhanced Key Usage типа Server Authentication (1.3.6.1.5.5.7.3.1)
Иметь валидные даты действия, т.е. не быть просроченным и срок начала его действия должен уже наступить. Также он должен иметь доверенного издателя. Если он самоподписан, то этот сертификат также должен присутствовать в списках доверенных издателей.
Также он должен удовлетворять другим требованиям, стандартным для сертификатов.

 

Если сертификат этим требованиям не удовлетворяет, то SSL сервер его не увидит. Статус (валидность) сертификата можно увидеть в консоли просмотра сертификатов.

 

Имя сертификата (Subject) должно соответствовать имени хоста в запросе. Если оно не соответствует, то, как минимум, клиент получит предупреждение броузера. Но при некоторых настройках безопасности у клиента работа с таким сертификатом будет невозможна.

 

Если предусматривается работа с SSL сервером с внутренних и внешних сетей и имена хоста в запросе в этом случае будут разными, в программе предусмотрен выбор отдельных сертификатов для внутренних и внешних запросов.

 

Что-бы со стороны клиента броузер не выдавал никаких вопросов, также важно, что-бы сертификат издательства серверного сертификата находился у клиента в списке доверенных. Об этом см. ниже.

 

Есть несколько способов получить серверный сертификат -

 

Создать сертификаты средствами программы. Самый быстрый и простой путь.
Развернуть Сервер Сертификатов от Windows. Предпочтительно, если в сети потребуется использование сертификатов для других целей.
Купить сертификат у известного издателя, например, Verysign. Этот вариант удобен тем, что у клиентов, как правило, сертификаты таких издательств уже предустановлены в доверенных,и броузеры никаких вопросов по ним задавать не будут.
Создать самоподписанный сертификат утилитами Windows или библиотеки OpenSSL. Этот путь подробно описан в Интернет.

 

Самоподписанный сертификат имеет недостаток - он должен быть добавлен у каждого клиента сети в список доверенных издателей. При использовании своего сервера сертификатов также надо прописывать сертификат издательства у каждого клиента, но зато в дальнейшем все сертификаты, выписанные этим сервером, будут валидны.

 

ВНИМАНИЕ ! Броузеры на движке Mozilla (Firefox и т.д.) текущей версии с самоподписанными сертификатами не работают.

 

Для облегчения задачи администратора по установке доверенных сертификатов у клиентов, это реализовано в клиентском агенте. При необходимости агент загружает с WWW сервера все необходимые сертификаты и сам их устанавливает. Броузеры также, в случае необходимости, предлагают клиенту установить сертификат, который не имеет доверенного издателя.

 

Чтобы агент установил сертификаты:

необходимо наличие сертификата - проверяется в WWW сервер - свойства - закладка сертификаты.
установить в Общих настройках клиентов на закладке Авторизация  предпочитаемый протокол SSL ИЛИ (И) в настройках агента на закладке Соединение указать Протокол обмена - SSL.

 

Использование Windows Certificate Server.

 

Имеется в составе всех серверных версий Windows. Установка его вопросов обычно не вызывает. Не забудьте указать внятное имя издательства и достаточное время действия сертификата. Следует отметить, что он требует установки IIS, и в случае установки на одном сервере может по TCP портам конфликтовать со службами Traffic Inspector.

 

Учитывая, что использоваться он будет эпизодически, только при первой установке программы на чистую систему, его лучше всего поставить на отдельной машине.

 

После его установки надо зайти на сервер с Traffic Inspector с правами администратора, открыть Internet Explorer (именно его!) и набрать http://name/certsrv. Здесь name - имя сервера где установлен сервер сертификатов.

 

Если сервер сертификатов установлен отдельно, то на сервер с Traffic Inspector надо установить сертификат издательства. Для этого -

 

на страничке сервера сертификатов выбираем "Download a CA certificate, certificate chain, or CRL", выбираем сертификат издательства и сохраняем его на диске.
Далее открываем ранее созданную оснастку системного хранилища сертификатов. Выбираем в меню "Import", запускаем мастер импорта и устанавливаем сертификат издательства. Он должен появиться в разделе "Trusted Root Certificates Authorities"

 

Далее генерируем сертификаты для сервера -

 

Откройте страничку сервера сертификатов.
Выбираем Request a certificate.
Далее выбираем submit an advanced certificate request
Далее выбираем Create and submit a request to this CA.
Выбираем шаблон Web Server.
В поле Name вписываем имя хоста запроса.
Выбираем галку Store certificate in the local computer certificate store
Нажимаем Submit, подтверждаем действие и ждем выполнения запроса.
Кликаем на иконку сертификата на странице и устанавливаем его.
Проверяем, появился ли сертификат в системном хранилище.

 

Далее это все можно повторить для другого имени хоста.

 

Перегружаем службу Traffic Inspector, открываем консоль и смотрим, появились ли там сертификаты. Далее надо открыть окно настроек SSL сервера и выбрать сертификаты для внутренних и внешних сетей. Если 443-й порт на сервере свободен, то лучше всего выбрать его.

 

Если SSL сервер запустился, то можно проверить его работу, набрав на броузере любой его ресурс с префиксом https. Если порт 443-й, то его в запросе можно не указывать.

 

Что-бы у клиента броузер не выдавал предупреждения о неизвестном издательстве, надо что-бы все клиенты установили сертификат Вашего издательства. Проще всего ссылку на файл сертификата издательства разместить на главной страничке кабинета клиента с инструкцией, как его поставить. Ставить его надо в личное хранилище клиента, поэтому достаточно просто скачать этот файл, кликнуть по нему, и мастер его автоматически поставит.

 

Если сеть - организация и есть домен Windows, то сертификаты издательства проще всего раздать средствами групповых политик.

 

 


Текущая страница справки: help.smart-soft.ru/index.html?installssl.htm

Сайт разработчиков Traffic Inspector