Компании Netscape и Network Associates предлагают два решения для генерации цифровых сертификатов и управления данным процессом.
Локальные сети обеспечивают защиту информации в своих пределах, но ее необходимо каким-то образом распространить и на "дикую" среду Internet. Здесь-то шифрование и цифровые сертификаты и выходят на сцену. Со временем создание и распространение цифровых сертификатов должны стать одним из самых важных процессов защиты в организациях.
Цифровые сертификаты имеют несколько предназначений. Во-первых, они предоставляют способ идентификации. Во-вторых, их можно применять для создания защищенных каналов связи. В частности, многие браузеры Web уже включают поддержку SSL (Secure Socket Layer). Кроме того, цифровые сертификаты применяются в протоколе SET (Secure Electronic Transaction). Информация цифровых сертификатов может быть использована для шифрования электронной почты и проверки цифровых подписей пользователей.
Цифровые сертификаты основаны на шифровании с открытыми ключами, где применяется пара ключей - личный и открытый. Открытый ключ обычно включается в цифровой сертификат.
Цифровой сертификат может содержать различную информацию; как правило, это открытый ключ и сведения о владельце (например, адрес электронной почты). Еще более важно, что цифровой сертификат включает в себя цифровую подпись на основе личного ключа уполномоченного по выдаче сертификатов (Certificate Authority, CA). Подлинность сертификата можно проверить с помощью открытого ключа CA. Кроме того, цифровые сертификаты содержат серийный номер и дату окончания их действия.
Серверы цифровых сертификатов реализуются по-разному, но все они преследуют одну цель - подпись и распространение цифровых сертификатов защищенным образом. Поэтому нет ничего удивительного в том, что доступ к серверу цифровых сертификатов, который представляет собой защищенную систему каталогов, организуется по протоколу LDAP (Lightweight Directory Access Protocol). Общая идентификационная информация, такая как имя пользователя электронной почты, является частью цифрового сертификата, и получить ее можно по LDAP.
Вложения электронной почты формата MIME (Multipurpose Internet Mail Extension) шифруются средствами Secure/MIME (S/MIME) по технологии X.509 или средствами Pretty Good Privacy (PGP)/MIME по технологии PGP. Клиент на противоположном конце должен иметь соответствующую поддержку для расшифровки и проверки цифровой подписи.
Мы рассмотрели два типа серверов сертификатов. Один из них - Certificate Server 1.01 компании Netscape - представляет собой иерархическую систему, совместимую с X.509. Другой сервер сертификатов - PGP Certificate Server от Network Associates. Он также может иметь иерархическую структуру и применять шифрование PGP. PGP Certificate Server можно использовать в одноранговой среде - такой метод более гибок, чем строгий иерархический подход.
В ЧЕМ РАЗНИЦА?
Серверы X.509 могут генерировать сертификаты для клиентов и серверов. Клиентские сертификаты, как правило, применяются в электронной почте, а серверные - в SSL-соединениях. Стандартные браузеры Web, такие как Microsoft Internet Explorer, Netscape Navigator и Netscape Communicator, обычно имеют дело с сертификатами серверов при установлении SSL-соединения. При обнаружении нового сертификата пользователю выдается запрос, и при удовлетворительном ответе сертификат сохраняется для последующих соединений. Браузеры содержат также список уполномоченных, сертификаты которых они могут принимать.
Аналогичным образом работают и серверы PGP, но они используют сертификаты одного типа и не поддерживают сертификатов X.509. Сертификат PGP обычно хранится в "связке" сертификатов (в английском оригинале - keyring, т. е. "кольцо для ключей". - Прим. переводчика). Клиент PGP работает с двумя "связками" - одной общей (public), другой частной (private). Частная "связка", как правило, содержит секретные ключи, используемые для шифрования и цифровых подписей. Сертификаты общей связки применяются для шифрования/проверки отправляемой или получаемой информации. Сервер PGP выполняет для клиента роль хранителя общей "связки".
Мы установили клиент PGP for Business Security в ОС Windows 95. В отличие от системы X.509, клиент PGP может создавать свои пары ключей и сертификаты. Это позволяет двум пользователям с клиентами PGP генерировать собственные ключи друг для друга и обмениваться их открытой частью, а затем посылать снабженную подписью или зашифрованную электронную почту без участия сервера сертификатов.
Так для чего же в PGP вообще нужен сервер сертификатов? По той же причине, что и в X.509: такие серверы являются надежным источником проверенных цифровых сертификатов, а также выдают новые цифровые сертификаты. Кроме того, они обеспечивают централизованное управление набором сертификатов, так что пользователям не нужно делать это вручную.
С распространением электронных транзакций, когда проблемы защиты в Internet станут еще более острыми, серверы сертификатов будут иметь для пользователей еще большее значение.
В настоящее время большинство пользователей принимают сертификаты с серверов Web или по электронной почте, не задумываясь о последствиях и проверке. К счастью, эти транзакции редко подвергаются риску, поэтому обеспечиваемая защита является достаточной. В то же время от возможной атаки они не застрахованы.
ВОПРОСЫ УПРАВЛЕНИЯ СЕТЬЮ
Имя и пароль сетевого администратора - вот волшебные ключи от сети. Бюджет администратора открывает доступ к механизмам защиты, включая создание новых пользователей сети.
В среде сервера цифровых сертификатов "волшебным ключом" служит ключ для подписи сертификата. Его нужно защищать всеми мерами. Последствия утери или кражи ключа для подписи сертификата выходят за рамки сети и распространяются на любую точку, где сертификат может быть подписан с помощью данного ключа.
Владельцем ключа подписи сертификата является уполномоченный по выдаче сертификатов - это может быть любая организация. Роль уполномоченного выполняет ряд общественных компаний, таких как VeriSign (www.verisign.com), выдающая сертификаты и ключи за определенную плату. Обычно сервер сертификатов имеет копию ключа подписи сертификата (для создания новых сертификатов), но для предоставления имеющихся сертификатов клиентам ключ не требуется. Процесс выдачи сертификатов можно отделить от серверов сертификатов. В соответствии с подходом, используемым компанией Network Associates, новые ключи создает PGP-клиент администратора (выполняя функции CA).
Одной из основных задач администратора является распространение сертификатов на другие серверы сертификатов или рассылка их пользователям, осуществляющим дальнейшее распространение (возможно, через недоступный непосредственно сервер сертификатов). PGP Certificate Server поддерживает средства тиражирования для автоматизации данной процедуры, но признание сертификата не всегда оказывается простым процессом. Список сертификатов может поступать из одного источника или генерироваться несколькими уполномоченными. Администраторам сетей следует определить, каким сертификатам они готовы доверять, и внести эту информацию в базу данных сервера сертификатов. Обычно для решения этой проблемы серверы сертификатов предусматривают механизм фильтрации.
Возможность отзыва сертификатов до даты истечения их действия значительно усложняет управление ими. Сервер сертификатов уполномоченного должен вести список аннулированных сертификатов (Certificate Revocation List, CRL). Администраторам необходимо получать списки CRL из источников сертификатов. В противном случае может случиться, что пользователи станут использовать отозванный сертификат, в то время как он уже является недействительным. Естественно, списки CRL нуждаются в периодическом обновлении. Задавать частоту такого обновления имеет смысл с учетом вероятности мошенничества. При обмене электронной почтой список достаточно обновлять ежедневно, а при финансовых операциях его лучше обновлять каждый час.
Другая проблема связана с повторной выдачей сертификатов с уже истекшим сроком действия. Сертификат с истекшим сроком действия не будет использоваться, даже если списки CRL недоступны. Когда вероятность отзыва высока, срок действия должен быть мал (например, дни или месяцы вместо лет). Сертификаты можно выдавать повторно с новой датой истечения срока действия, но этот процесс ни сервером, ни клиентом обычно не автоматизируется: данная обременительная обязанность возлагается на администратора, отвечающего за сертификаты.
Крупным организациям приходится сталкиваться с вопросами производительности и надежности. Часто им требуется несколько серверов, поэтому соответствующее программное обеспечение должно поддерживать тиражирование. Иногда тиражирование реализуется как часть механизма распространения сертификатов.
Администраторам следует в обязательном порядке предупредить пользователей о необходимости сохранять конфиденциальность секретных ключей. Обычно эти ключи защищаются с помощью пароля, который пользователь вводит при открытии каждого очередного сеанса. Такой пароль намного короче ключа. Хотя современные ключи (длиной в сотни или тысячи битов) раскрыть практически невозможно, подбор пароля, защищающего секретный ключ, для специалиста не представляет проблемы. Таким образом, ограничение доступа к файлам с секретными ключами и использование длинных трудно угадываемых паролей имеет важнейшее значение.
NETSCAPE CERTIFICATE SERVER
Программное обеспечение Netscape Certificate Server можно установить отдельно, но наиболее эффективно оно при работе с другими серверами Intranet компании Netscape, включая входящие в семейство Netscape SuiteSpot. Certificate Server предусматривает поддержку стандарта X.509, в том числе иерархических подчиненных подписей сертификатов, обмен списками CRL и сертификатами между серверами (см. Рисунок 1). Доступ к сертификатам осуществляется по протоколу LDAP. Обращаться к сертификатам (и предоставлять открытые ключи) можно также через Web-интерфейс.
Netscape Certificate Server допускает иерархическую конфигурацию с подчиненными уполномоченными цифровых сертификатов. Обмен сертификатами и списками CRL может осуществляться между любыми серверами, что позволяет пользователям обращаться к заслуживающим доверия сертификатам.
Netscape Certificate Server поддерживает сертификаты X.509, используемые в SSL-соединениях и вложениях электронной почты S/MIME. Лучше всего этот продукт работает с клиентами Web, поддерживающими SSL и S/MIME (такими как Netscape Communicator).
Мы установили Netscape Certificate Server на сервере Windows NT 4.0 с программным обеспечением SuiteSpot компании Netscape. (Кроме того, здесь уже был установлен Netscape Directory Server.) Для всех серверов компания Netscape использует одну общую систему управления на базе Web. Чтобы свести к минимуму потенциальные проблемы защиты, Netscape рекомендует не размещать серверы приложений на тех системах, где выполняется Netscape Certificate Server.
Прочитав короткое руководство по инсталляции, мы заполнили формы, введя в них имена пользователей и другую информацию. Чтобы иметь браузер Web для управления и тестирования, мы установили на сервере Netscape Communicator 4.04. Кроме того, мы создали пользовательский бюджет для работы с сервером. Инсталляция начинается с установки SQL-сервера Informix, так как он используется программным обеспечением Netscape Certificate Server. На той же машине был установлен другой SQL-совместимый сервер БД, но, для того чтобы избежать конфликтов с базой данных Informix, перед инсталляцией Netscape Certificate Server мы его удалили. БД Informix требуется раздел NTFS (Windows NT File System), а процедура инсталляции предполагает выполнение ряда шагов вручную (с помощью командной строки). К сожалению, аналогичные действия приходится выполнять и при инсталляции Netscape Certificate Server. Нам пришлось вводить различные пароли, выбирать каталоги и т. д. Хорошо, что все эти операции подробно описаны в документации.
Мы инсталлировали лишь автономный сервер сертификатов, поэтому данную процедуру выполнить было несложно. "Мастер" инсталляции провел нас через все необходимые этапы, в том числе генерации пары ключей для сертификата собственного уполномоченного сервера, поддержки SSL и цифровой подписи. Netscape предусматривает возможность инсталляции на одном компьютере нескольких серверов сертификатов, но при этом они должны работать через разные порты IP.
Руководство Netscape для администратора, "Administrator's Guide", оказалось очень полезным: в нем рассказывается об использовании сертификатов, описывается архитектура сервера и рассматриваются вопросы защиты. Такая информация крайне важна для тех администраторов серверов сертификатов, которые не имеют опыта подобной работы. Хотя серверы сертификатов не защищены от неумелых действий, но простые предосторожности, упомянутые в документации, помогут обеспечить безопасность сервера сертификатов. Кроме того, в документации освещены вопросы управления данным продуктом из Web.
Мы выполнили описанные в "Administrator's Guide" шаги и создали сотню пар ключей (как для серверов, так и для клиентов). Ключ сервера использовался сервером каталога, а большинство ключей клиентов - клиентами Netscape Communicator. Некоторые клиенты получили несколько ключей (такая ситуация типична, когда ключи предоставляются несколькими уполномоченными). Процесс создания ключей довольно утомителен, так как запросы требуется подтверждать вручную. Чтобы этим мог заниматься помощник, я создал дополнительно еще один административный бюджет.
Компания Netscape предлагает механизм для автоматизации процесса проверки. Это позволяет автоматизировать выдачу сертификатов, в зависимости от содержания запроса. К сожалению, поддержку автоматической проверки нельзя назвать простой в использовании (в отличие от других средств сервера сертификатов). Неопытный администратор сервера сертификатов вряд ли справится с этой задачей.
С помощью Netscape Communicator мы получили дополнительные сертификаты из других источников и добавили их в базу данных своего сервера. Эти сертификаты пришлось авторизовать вручную, поскольку наш сервер не имел доступа к выдавшему их серверу.
Netscape Communicator предлагает ограниченную поддержку списков CRL. Мы аннулировали несколько сертификатов, чтобы посмотреть, что произойдет. Как и предполагалось, Communicator не оставил эти действия без внимания. Он справлялся также и с сертификатами с очень коротким сроком действия (один день). На практике такой малый срок действия может быть очень полезен: подобный сертификат может служить, например, для предоставления однодневного доступа к закрытому серверу Web для получения материалов конференции.
Чтобы предупредить вопросы о функционировании и использовании сервера сертификатов, мы настроили пользовательский интерфейс на базе Web, добавив пару файлов GIF и ссылки на справочную информацию. Этот процесс описывается в документации, однако, как там утверждается, внесение изменений требует знания HTML, форм, языка JavaScript, а также принципов функционирования сервера сертификатов. Никакого диалогового окна или "мастера" здесь не предусмотрено. Тем не менее небольшие "косметические" изменения заняли всего несколько минут.
Трудозатраты по обслуживанию и сопровождению сервера сертификатов минимальны. Они заключаются в основном в проверке журналов на наличие возможных проблем и авторизации запросов на выдачу сертификатов.
Netscape Certificate Server работал весьма неплохо, особенно если учесть, что это версия 1.01. Основные недостатки состоят в ограниченных возможностях межсерверного обмена сертификатами и списками CRL. В настоящее время данный процесс выполняется вручную, но если сервер сертификатов входит в состав сети с несколькими серверами или Internet, то он создает администратору неразрешимые трудности.
PGP BUSINESS SUITE
Программным обеспечением Business Suite компании Network Associates используется другой подход к цифровым сертификатам. Вместо сертификатов X.509 здесь применяются собственные клиенты и соответствующие серверы для предоставления открытых ключей PGP для шифрования, дешифровки, подписи и проверки цифровой подписи.
Прежде чем инсталлировать сам сервер, мы установили клиенты PGP с программным обеспечением Eudora Pro компании Qualcomm в системе Windows 95, а также некоторые другие клиенты электронной почты POP3. При инсталляции клиента в панели задач Windows 95 появляется новая пиктограмма, щелчок на которой открывает доступ к функциям буфера обмена (Clipboard) и компоненту PGPTray, управляющему локальной "связкой" (набором сертификатов). Кроме того, при инсталляции создается пара ключей (открытый/секретный).
Eudora Pro позволяет без труда обрабатывать сообщения электронной почты и вложения. Благодаря интеграции, кнопки PGP появляются на панели инструментов Eudora Pro. Шифрование PGP/MIME выполняется простым щелчком мышью. Клиент PGP может шифровать или подписывать файлы и содержимое буфера обмена. Данный метод используется клиентами POP3 для подписи или шифрования сообщений электронной почты. Обмен сообщениями между клиентами обоих типов происходил без проблем.
Инсталляция программного обеспечения PGP Certificate Server в среде Windows NT оказалась более простой задачей, чем установка версии для ОС Solaris, где применяется сценарий на языке Perl. Поддержка интерфейса на базе Web требует CGI-совместимого сервера Web. В качестве такового мы использовали продукт Internet Information Server (IIS) 4.0 корпорации Microsoft, входящий в состав Windows NT Server.
Базовая настройка конфигурации осуществляется с помощью панели управления Windows NT Server, а экспорт и импорт ключа - с помощью утилит, работающих в режиме командной строки. Хотя операции такого типа требуется выполнять довольно редко, приложение на базе Windows было бы полезным дополнением.
Серверы PGP Certificate Server могут обмениваться сертификатами с любым сервером сертификатов PGP. Тиражирование осуществляется автоматически, но допускает некоторую настройку. Например, сервер способен фильтровать поступающие сертификаты и принимать только те из них, что подписаны проверенным уполномоченным. Конфигурация осуществляется с помощью текстового файла, но он сделан скрытым конфигурационной утилитой на базе Web.
Кроме того, PGP Certificate Server принимает сертификаты от любого пользователя. Заданные на сервере правила определяют, как поступить с сертификатом - включить в базу данных или поместить в очередь. Просмотр такой очереди входит в обязанности администратора.
Инсталлировав и запустив сервер, мы настроили на него клиенты. В каждый момент времени клиент может ссылаться только на один сервер PGP Certificate Server. Это хорошо в пределах одной компании, но может создать проблемы для пользователей Internet, так как им приходится обычно работать с множеством серверов. К счастью, локальная "связка" позволяет отслеживать часто используемые сертификаты, полученные из разных источников. Основным недостатком локальной "связки" является то, что только сервер обновляется автоматически (включая отзыв сертификатов).
Использовать корпоративный ключ подписи оказалось несложно. Это обычный ключ PGP, но он должен храниться со всеми возможными мерами предосторожности. Если, согласно принятым правилам, данный корпоративный ключ подписи обязаны использовать все клиенты, то ключ PGP открывает доступ ко всей зашифрованной электронной почте организации. Вместе с тем PGP-клиент может выполнять шифрование и без корпоративного ключа.
Одним из продуктов в комплекте средств PGP компании Network Associates является PGP Policy Management Agent for SMTP. Этот программный агент можно применять для мониторинга всего трафика сообщений между почтовыми серверами SMTP с целью фильтрации сообщений электронной почты, не имеющих действительных цифровых сертификатов (см. Рисунок 4). Текущая версия PGP Policy Management Agent for SMTP работает только в среде Solaris. SMTP-сервер может находиться на том же компьютере, что и агент PGP, или функционировать на отдельном ПК. Последний вариант полезно применять в том случае, когда SMTP-сервер работает на отличной от Solaris платформе (как в нашем случае). Агент правил позволяет следить за использованием подписей, шифрования или корпоративного ключа подписи (избирательно либо при обмене сообщениями с другой сетью).
Программный агент PGP Policy Management Agent for SMTP располагается между SMTP-сервером организации и удаленными серверами электронной почты. Он обрабатывает всю входящую/исходящую почту и удаляет сообщения из обращения, если они не отвечают принятым правилам защиты.
Непосредственное размещение данного агента в рабочей среде SMTP не рекомендуется: риск нарушить работу всей системы электронной почты организации оказывается слишком велик. Вместо этого в целях проверки мы рекомендуем создать тестовый сервер SMTP со сравнимой конфигурацией. Так, при тестировании серверов PGP мы сделали несколько небольших ошибок, но в рабочей системе и они навлекли бы на администратора гнев пользователей.
Затем мы настроили агент на тестовом сервере. Этот процесс предусматривает перенаправление внешних серверов SMTP и локального сервера на данный агент. Данные изменения несложны, однако неверная модификация может привести к остановке всего процесса доставки электронной почты. Лучше всего начать с разрешения пропускать любую почту. Проверив систему в работе, вы можете задать более строгие правила. Изучив данный процесс, администратор может повторить его на рабочем сервере.
СОЗДАНИЕ ЦИФРОВЫХ ОБЪЕКТОВ
Если вы собираетесь применять цифровые сертификаты в своей организации, то программное обеспечение Netscape Certificate Server будет подходящим выбором там, где важна поддержка стандарта X.509. Решение Netscape разработано и ориентировано именно на эту задачу и весьма неплохо с ней справляется. Интеграция с семейством серверов SuiteSpot того же производителя повышает эффективность его применения в среде серверов Netscape.
ПО PGP Certificate Server компании Network Associates не поддерживает сертификатов X.509. Если основная цель заключается в управлении сертификатами PGP, то это не проблема. Вместе с тем пакет PGP Certificate Server предназначен для реализации защищенного обмена электронной почтой и имеет необходимые для этого средства защиты. Решение на базе PGP обеспечивает непревзойденную поддержку обмена шифрованной электронной почтой между пользователями ПО PGP Certificate Server или автономных клиентов PGP. Для тех сетевых администраторов, которые стремятся реализовать стратегию безопасного обмена электронной почтой, поддержка SMTP может оказаться неоценимой.
Рассматриваемые серверы сертификатов - это надежные продукты, но все же пока они опираются на еще не вполне апробированную технологию. В данной области совместимость между разными клиентами и серверами еще явно недостаточна, так как стандарты появились относительно недавно. Сегодня администраторы, применяющие эту технологию, будут чувствовать себя как "на переднем крае", но весьма скоро она станет обязательной для большинства корпоративных сетей.
Уильям Вонг - консультант по вычислительной технике и автор. С ним можно связаться по адресу: bwong@voicenet.com.
ИТОГ ИСПЫТАНИЙ
Netscape Certificate Server
Netscape Communications
501 E. Middlefield Rd. Mountain View, CA 94043 1-650-254-1900
www.netscape.com
PGP Certificate Server
Network Associates
2121 S. El Camino Real San Mateo, CA 94403 1-888-747-3011
www.nai.com
Цель. обеспечение идентификации пользователей Internet и Intranet путем выдачи пользователям цифровых сертификатов. Управление выдачей цифровых сертификатов и списками аннулированных сертификатов (Certificate Revocation List, CRL).
Вопросы. защита, поддерживаемые клиенты, совместимость со стандартом X.509, поддержка списков CRL и протокола LDAP (либо интеграция с сервером каталога LDAP). Тестируемый продукт или реализация. Netscape Certificate Server под управлением Microsoft Windows NT Server 4.0; клиенты Netscape Communicator под управлением Windows 95. Pretty Good Privacy (PGP) Certificate Server и Policy Management Agent for SMTP компании Network Associates в среде Microsoft BackOffice Server 4.0 с Microsoft Exchange Server; клиенты PGP for Business Security под Windows 95 с ПО Qualcomm Eudora Pro.
Достоинства. Netscape Certificate Server - хорошая интеграция с серверами Netscape SuiteSpot; расширенная поддержка тиражирования на несколько серверов; защищенные средства управления на базе Web. PGP Certificate Server - хорошая интеграция с клиентами Qualcomm Eudora Pro; прозрачное шифрование с двумя ключами; поддержка тиражирования.
Недостатки. Netscape Certificate Server - при инсталляции некоторые шаги требуется выполнять вручную; отсутствие поддержки тиражирования. PGP Certificate Server - отсутствие поддержки стандарта X.509; многие клиенты электронной почты недостаточно хорошо интегрируются с клиентом PGP.
Цена. Netscape Certificate Server стоит 525 долларов за лицензию на 100 пользователей. Стоимость PGP Certificate Server составляет 1499 долларов, PGP Policy Management Agent for SMTP - 799 долларов, а PGP for Business Security - 119 долларов.