Протоколы удаленной аутентификации
При локальном доступе база данных находится непосредственно на сервере удаленного доступа. Это не позволяет организовать централизованную систему аутентификации в том случае, если на предприятии используются несколько серверов удаленного доступа. Но благодаря тому, что пароли не передаются по сети, безопасность и быстродействие такой системы потенциально могут быть наилучшими.
Наличие центральной базы данных предприятия упрощает управление удаленным доступом, так как устраняет необходимость создания и поддержки отдельных баз данных учетных записей на каждом из серверов удаленного доступа предприятия. При удаленном доступе к базе данных учетных записей имеет место так называемая сквозная, или удаленная аутентификация. Для того, чтобы произвести аутентификацию и предоставить удаленному пользователю соответствующие права доступа, сервер удаленного доступа обращается к серверу аутентификации, на котором хранится база данных учетных записей. Применяемые для этого протоколы называются протоколами удаленной аутентификации.
Существуют различные варианты решения проблемы доступа к базе данных учетных записей, содержащих пару идентификатор-пароль и, возможно, другую информацию. Реализация той или иной схемы зависит от требований, предъявляемых к системе удаленного доступа на предприятии. В качестве протоколов для удаленной аутентификации в настоящее время чаще всего применяются два типа.
Протоколы аутентификации сетевой операционной системы. Они реализованы в службе аутентификации сетевой операционной системы (например, в Microsoft Windows NT это служба Net-logon). При использовании этих протоколов отпадает необходимость в поддержке дополнительных сетевых служб аутентификации, однако уязвимость такого способа аутентификации полностью определяется защищенностью службы безопасности сетевой операционной системы. Так что, если в какой-то момент времени обнаружится ошибка в реализации протокола аутентификации сетевой операционной системы и будет найден способ использования этой ошибки злоумышленниками, то безопасность удаленного доступа также будет поставлена под угрозу. Кроме того, отсутствует возможность передачи специфической для удаленного доступа информации.
Специализированные протоколы аутентификации. Они ориентированные на поддержку удаленного доступа, и могут быть фирменными, хотя некоторые из них описаны в стандартах Internet. Такие протоколы являются достаточно гибкими и позволяют передать на сервер удаленного доступа всю информацию, необходимую для организации сеанса удаленной связи. Наибольшее распространение получили протоколы удаленной аутентификации TACACS (Terminal Access Contfol Access System – система управления терминальным доступом), родственные ему – XTACACS (Extended TACACS – расширенный TACACS) и TACACS+, а также RADIUS (Remote Aythenticatron Dial In User Service – служба удаленной аутентификации пользователей коммутируемых соединений).
Протокол TACACS был первым специализированным протоколом удаленной аутентификации. Его расширенная версия XTACACS была разработана и использована фирмой Cisco Systems для серверов удаленного доступа (терминальных серверов). Именно эта версия была документирована и принята как стандарт Internet. В дальнейшем фирма Cisco Systems разработала версию протокола TACACS, отвечающую современным требованиям, в частности, предотвращающую перехват паролей. Сервер удаленной аутентификации по протоколу обычно реализуется в виде программы xtacacsd, исходный код которой разработан фирмой Cisco Systems. Как правило, программа работает под управлением операционной системы семейства UNIX и может входить в состав операционной системы, поставляться в составе средств удаленного доступа либо быть доступной бесплатно.
Протокол RADIUS был разработан фирмой Livingston Enterprises. Затем он был принят в качестве стандарта Internet. Он применяется для поддержки работы с единой базой данных, предназначенной для аутентификации удаленных пользователей и конфигурирования услуг, предоставляемых удаленному узлу.
Сервер удаленного доступа функционирует в качестве клиента RADIUS. Клиент, взаимодействуя с сервером RADIUS, предоставляет по его запросу информацию, необходимую для аутентификации удаленных пользователей. Сервер RADIUS отвечает за прием запросов от клиента, проведение аутентификации и передачу клиенту информации, необходимой для конфигурирования удаленного узла. Сервер RADIUS также может выполнять функции клиента RADIUS, обращаяськдругому серверу RADIUS.
Взаимная аутентификация и обмен информацией между клиентом и сервером построены на использовании доступного обеим сторонам пароля, который не передается через сеть. Кроме того, все пароли пользователей, сообщаемые клиентом серверу, также передаются в зашифрованном виде, что исключает возможность определения пароля злоумышленником, получившим физический доступ к локальной сети.
Наконец, сервер RADIUS может использовать различные способы аутентификации пользователя. В частности, поддерживаются протоколы РАР и CHAP, аутентификация UNIX (передача имени пользователя и пароля), и другие.
Одним из наиболее удачных вариантов решения проблемы удаленной аутентификации является так называемая трехзвенная модель (рис. 2.6). В этом случае сервер удаленной аутентификации, к которому обращается сервер удаленного доступа, выполняет роль шлюза для внешней универсальной системы аутентификации. Так как серверы удаленного доступа поддерживают ограниченный набор протоколов удаленной аутентификации (как правило, ориентированных на удаленный доступ), то такая модель позволяет обойти это ограничение и использовать любой протокол аутентификации и авторизации для доступа к единой базе данных учетных записей предприятия (конечно, при условии, что сервер-шлюз поддерживает требуемый тип преобразования протоколов).
Рис. 2.6. Трехзвенная процедура аутентификации