четверг, 29 октября 2009 г.

Выпуск собственного SSL-сертификата

 

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

image

Представьте себе, что какой ни будь пользователь с Урала обращается к вашему корпоративному порталу. А ему сообщают, что для шифрования будет использоваться сертификат, который выпустил Вася Пупкин. Ну кто такой этот Вася, и что он там выпустил? Можно ли ему доверять? Не понятно. Другое дело, если все пользователи будут знать этого Васю и полностью ему доверяют. В последнем случае вполне можно использовать сертификат, который он выпустил сам. А в предупреждающем сообщении вы можете просто нажать “Continue to this website (not recommended)

Чтобы выпустить собственный сертификат безопасности вы можете пойти двумя методами. Развернуть в своей организации полноценный Центр Сертификации (Certification Authority) или воспользоваться утилитой selfssl.exe. Разница этих двух методов состоит в области их применения.

Развернув Центр Сертификации вы можете обеспечить автоматический выпуск сертификатов по запросу пользователей. Следить за выданными сертификатами, а так же отзывать их при необходимости. Если же вам требуется выпустить всего один сертификат, чтобы обеспечить безопасную работу с корпоративным порталом, или с электронной почтой через OWA, то проще будет воспользоваться утилитой selfssl.exe.

Утилита selfssl.exe входит в комплект пакета IIS6 Resource Kit Tools. Данный пакет является бесплатным и доступен для свободного скачивания с сайта Microsoft - http://www.microsoft.com/downloads/details.aspx?familyid=56FC92EE-A71A-4C73-B628-ADE629C89499 Загрузив пакет запустите его. После запуска вы увидите окно установки.

image

Выберите метод установки Custom и нажмите Next для продолжения установки.

image

Затем выберите путь для установки или оставьте тот, что уже указан, и нажмите Next

image

Пакет включает в себя много утилит. Нас же интересует только одно. Снимите все флажки кроме одного, как показано на рисунке выше. Затем нажмите Next.

Запустить установленную утилиту можно из меню Пуск, как показано на рисунке.

image

Запустив утилиту вы увидите окно командной строки, в котором, задав необходимые параметры, вы сможете выпустить свой собственный сертификат безопасности.

image

Как видно параметров, которые можно задать, довольно много. Давайте попробуем разобраться с каждым из них:

  • /N:CN задает имя вашего сайта например owa.contoso.com.
  • /K: задает длину ключа. Значение по умолчанию 1024.
  • /V: количество дней до окончания действия сертификата.
  • /S: номер сайта в IIS. По умолчанию равен 1.
  • /P: номер порта. Стандартом является 443. Это же значение задано по умолчанию.

    Например вы решили выпустить сертификат для сайта owa.contoso.com сроком на один год. Нет ничего проще! Наберите следующую команду:

    selfssl /N:cn=owa.contoso.com /V:365

    И нажмите Ввод.

    На вопос “Do you want to replace the SSL settings for site 1 (Y/N)?” нажмите “y”. Если у вас не установлен IIS то вы получите сообщение “Error opening metabase: 0x80040154” – просто игнорируйте его.

    Сертификат выпущен. Теперь вы можете делать с ним все, что угодно. Например установить на ваш WEB-сайт. Давайте посмотрим, как это сделать. Для начала вам нужно выгрузить ваш сертификат. Для этого запустите Microsoft Management Console (MMC). Нажмите Пуск->Выполнить…-> наберите mmc и нажмите ввод.

    image

    Затем нажмите File –> Add/Remove Snap in…

    image

    В появившемся окне нажмите Add…

    image

    Затем выберите Certificates и нажмите Add…

    image

    Выберите Computer account и нажмите Next

    image

    Теперь нажмите Finish

    image

    Оснастка добавлена. Нажмите Close, чтобы закрыть диалоговое окно и OK, чтобы перейти к работе с оснасткой.

    image

    Разверните Crtificates (Local Computer) затем Personal и выберите Certificates. Справа вы увидите ваш сертификат. Щелкните по нему правой кнопкой мыши. Выберите All Tasks, а затем Export.

    image

    В появившемся диалоговом окне нажмите Next.

    image

    Если вы хотите использовать сертификат на вашем WEB-сайте, то для этого понадобиться выгрузить приватный ключ. Выберите “Yes, export the private key” и нажмите Next.

    image

    И еще раз Next.

    image

  • Так как вы выгружаете приватный ключ, то такой сертификат лучше запаролить. Введите пароль или оставьте поле пустым (последнее не рекомендуется). нажмите Next.

    image

    Введите имя файла, то под которым файл будет храниться на диске.  Например owa.contoso.com и нажмите Next.

    image

    В следующем окне нажмите Finish.

    image

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

    2 комментария:

    1. спасибо за информацию !

      ОтветитьУдалить
    2. Спасибо! Кстати незнаю как в IIS6, в седьмом вроде для установке на сайт достаточно его в IIS-сайт-Bindings добавить.

      ОтветитьУдалить