Журнал Системный Администратор, Октябрь 2006

Журнал Системный Администратор

Октябрь 2006

Цена: $4.5 US

  Подписаться

Зарегистриванные пользователи, пожалуйста следуйте этой ссылке


Как настроить библиотеку SASL для совместной работы c Kerberos

Михаил Кондрин

С помощью библиотеки SASL сетевые приложения могут автоматически договориться об использовании определенного механизма подтверждения идентичности пользователя. Как осуществить взаимодействие библиотеки SASL c Kerberos?

Общие свойства SASL

Преимущества протокола Kerberos – сильная криптографическая защита паролей и данных, единая система управления паролями пользователей и возможность реализации single sign-on-системы (система единой регистрации пользователей). Основной недостаток – сложная программная реализация механизма аутентификации. Для того чтобы протокол, точнее, сервис и клиентское приложение, использовали аутентификацию пользователей через Kerberos, соответствующий код должен быть реализован как в клиентской, так и серверной частях протокола. Поэтому, если вы попытаетесь организовать single sign-on-систему, вам потребуется приложить определенные усилия по анализу используемых программных пакетов и выбору тех из них, что поддерживают Kerberos.

Любой из вас в своей работе наверняка сталкивается с протоколами отправки и получения электронной почты. Электронная почта – старый и популярный протокол. И именно потому, что протокол старый (созданный в те времена, когда разработчики не слишком задумывались о безопасности своих продуктов) и популярный (широкий выбор потенциальных жертв), электронная почта является удобной целью для злоумышленников. При этом ваша задача состоит в организации безопасности нескольких сетевых протоколов – SMTP, IMAP и/или POP3, их конфиденциальности и защиты от несанкционированного доступа. В принципе способов добиться решения этой задачи может быть несколько (см., например, [1, 2, 3, 4]), но решение с помощью Kerberos представляется мне наиболее простым и удобным. Удобство в данном случае подразумевает не только простоту администрирования, но и удобство пользователей, которые получают единообразный способ доступа к протоколам чтения и отправки почты на основании своего системного пароля как изнутри, так и извне локальной сети (в последнем случае есть некоторые оговорки). Немаловажным обстоятельством является и то, что Kerberos – хорошо масштабируемый протокол, который разрабатывался в расчете на огромные университетские сети.

Ключевой элемент, обеспечивающий взаимодействие Kerberos и почтовых служб, – пакет SASL (Simple Secure Authentication Layer), разработанный в Университете Карнеги-Меллон. Помимо реализации от CMU (получившей название Cyrus-SASL) существует GNU-версия gsasl [5], разрабатываемая практически единолично шведским программистом Джеффсоном. Несмотря на то что gsasl довольно быстро развивается, эта реализация все еще считается бета-версией и значительно уступает по надежности Cyrus-SASL. Всего университетом Карнеги-Меллон было выпущено две реализации библиотеки SASL, различающиеся между собой по API и формату хранения пользовательских данных, хотя и совместимые по протоколу. В настоящее время вторая версия SASL практически полностью вытеснила первую, и поэтому под SASL я буду понимать именно вторую версию (которую иногда обозначают как SASL2).

Оставшая часть статьи доступна только подписчикам. Если вы желаете продолжить чтение этой статьи, то вам необходимо подписаться на эту статью или весь номер.

Подписаться на весь номер

Зарегистриванные пользователи, пожалуйста следуйте по этой ссылке
oread