/>/>Федеральное агентство железнодорожного транспорта
Государственное образовательное учреждение
высшего профессионального образования
Иркутский государственный университет путей сообщения
Кафедра «Информационнаябезопасность»
Курсовая работа
Протокол TACACS+
Дисциплина: Криптографические методы защиты информации
/>/>/>/>Выполнил:
студент гр. ЗИ-06
Перминов Д.А.
Проверил:
к. ф. — м. н., доцент каф.«ИнБ»
Бутин А.А.
Иркутск 2009
Оглавление
Введение
Версии TACACS
XTACACS был вытеснен TACACS+
Принцип работы
Свойства TACACS+
Процесс аутентификации TACACS+
Процесс авторизации TACACS+
Процесс аудита TACACS+
Сравнение протоколов TACACS+ и RADIUS
Заключение
Список литературы
Введение
В настоящее время существуют различные технологии,направленные на обеспечение безопасности данных, в котором выделяются 3важнейших компонента:
1. аутентификация (с последующей авторизацией)
2. сохранение целостности данных (их неизменность иконфиденциальность обеспечивается безопасностью инфраструктуры сети)
3. активная проверка установленной политики безопасности
В данной курсовой работе все внимание обращено на первыйкомпонент — аутентификацию.
Первым и наиболее распространенным до сих пор средствомпроведения аутентификации было использование паролей. Для обеспечения высокогоуровня безопасности пароли необходимо часто менять, а криптографически стойкиепароли неудобны для запоминания пользователями, что в итоге привело к формированиюметодики использования одноразовых паролей. Среди них: аутентификация попротоколу S/Key или при помощи специальных аппаратных средств: смарт-карт,USB-токенов и т.д. Для модемного доступа наиболее распространен механизмаутентификации по протоколу PPP с использованием протоколов PAP, CHAP и EAP. ПротоколEAP продолжают усовершенствовать с целью расширения его функциональности, но внастоящее время он уже позволяет более гибко использовать как существующие, таки будущие технологий аутентификации в каналах PPP. А в среде корпоративногоудаленного доступа большое распространение получили протоколы, которыеподдерживают масштабируемые решения в области аутентификации — Remote AccessDial-In User Service (RADIUS) и TACACS.
/>/>/>Версии TACACS
Имеется три версии приложений сервера защиты TACACS.
TACACS (Terminal Access Controller Access Control System — система управления доступом к контроллеру терминальногодоступа). Описанный в документе RFC 1492 промышленныйстандарт протокола, предполагающий передачу имени пользователя и пароляцентрализованному серверу. Централизованный сервер может представлять собойлибо базу данных TACACS, либо базу данных типа файлапаролей UNIX с поддержкой протокола TACACS.Например, сервер UNIX с поддержкой TACACSможет передавать запросы базе данных UNIX и возвращатьсообщения подтверждения или отказа серверу доступа.
XTACACS. Определяет расширения,добавленные Cisco к протоколу TACACSдля поддержки новых и расширенных возможностей. Стандарт XTACACSявляется многопротокольным; он поддерживает авторизацию соединений,использующих SLIP, режим enable,PPP (IP или IPX),ARA, EXEC и Telnet.
XTACACS поддерживает отправкуинформации аудита хосту UNIX от множества серверов TACACS и syslog, соединяетпользователя с «оболочкой» сервера доступа в соответствии срезультатами аутентификации, а также может инициализировать соединения Telnet, SLIP, PPPили ARA после начальной аутентификации.XTACACS был вытеснен TACACS+
TACACS+. Улучшенная и постоянносовершенствуемая версия TACACS позволяет серверу TACACS+ обеспечивать независимое использование сервисов AAA. Поддержка AAA являетсямодульной, так что каждая из возможностей по существу является отдельнымсервером. Каждый сервис может связываться со своей базой данных либоиспользовать другие сервисы сервера или сети. Поддержка TACACS+появилась в Cisco IOS Release10.3 (В настоящее время в ходу Release 12. x).
TACACS+ представляет собойсовершенно новую версию протокола TACACS, ссылающуюсяна документ RFC 1492 и разрабатываемую Cisco. Он несовместим с XTACACS. TACACS+ был представлен на рассмотрение IETF(Internet Engineering Task Force — проблемная группа проектирования Internet)в качестве проекта стандарта.
TACACS и XTACACSв программном обеспечении Cisco IOS официально представлены как протоколы, дальнейшеесопровождение и совершенствование которых компания Ciscoпрекращает. Кроме того, сопровождение бесплатно предлагаемого Ciscoпрограммного кода сервера TACACS и XTACACSтоже официально прекращено. Дальнейшее совершенствование и сопровождение этихпродуктов компанией Cisco не планируется. Однакоактивное независимое сообщество пользователей уже предлагает некоторые усовершенствованияэтих протоколов./>/>/>Принцип работы
TACACS+ — это протокол третьего поколения в семействепротоколов TACACS (RFC 1492). TACACS (Terminal Access Controller Access ControlSystem) — это протокол удаленной аутентификации, который применяется в процессепредоставления доступа к информационным серверам, серверам удаленного доступа идругим активным сетевым устройствам. Он был разработан U. S. Departmentof Defense и BBN Planet corp. (Bolt, Beranek andNewman, Inc). В дальнейшем он несколько раз дорабатывался компанией CiscoSystems Inc.
TACACS+ представляет собойприложение сервера защиты, позволяющее на основе соответствующего протоколареализовать централизованное управление доступом пользователей к серверусетевого доступа, маршрутизатору или другому сетевому оборудованию,поддерживающему TACACS+. Информация о сервисах TACACS+ и пользователях хранится в базе данных, обычноразмещаемой на компьютере под управлением UNIX или Windows NT (Windows 2000/2003).
/>
Рис.1. Поддержка TACACS+ или RADIUS сервером сетевого доступа, маршрутизатором и удаленнойбазой данных защиты
В своей работе протоколы семейства TACACS используют порт49, который выделило для них Internet Assigned Numbers Authority (IANA). Предыдущиеверсии TACACS (как и аналогичный протокол RADIUS) в качестве средства доставкииспользовали протокол UDP. В отличие от них, TACACS+ полагается на TCP, чтопозволяет за счет несколько больших накладных расходов обеспечить более простуюреализацию и расширить функциональность (например, поддерживается множественнаяобработка запросов).
TACACS+ — это протокол, реализованный по технологииклиент-сервер, причем почти всегда клиент — это NAS (Network Access Server — серверсетевого доступа; например, Cisco AS5300 и Shiva Corp. 's Access Manager 3.0),а сервер — некоторая программа, запущенная на хост-машине (UNIX, NT или другая,необходимо отметить что UNIX системы наиболее распространены в роли серверовTACACS+). Примером таких серверов являются CiscoSecure AccessControl Server (ACS) и Shiva's LAN Rover/E Plus.
Протокол TACACS+ позволяет объединить несколько NAS в общуюсистему обеспечения аутентификации в рамках системы обеспечения сетевойбезопасности, функционируя в 2 режимах:
1. проведение аутентификации, используя централизованнуюбазу учетных записей.
2. посредничество для внешних систем аутентификации (т. н. proxy-режим).
Благодаря этому он может использоваться и в глобальныхсистемах предоставления безопасного сетевого доступа, таких как CiscoSecureGlobal Roaming Server (GRS).
Принципиально важной особенностью протокола TACACS+ являетсято, что он позволяет разделить аутентификацию, авторизацию и учет (AAA — Authentication,Authorization, Accounting) и реализовать их на отдельных серверах. Это являетсясущественным прогрессом по сравнению как с исходным протоколом TACACS, вкоторый понятие учета вообще не входило, так и с протоколом RADIUS, в которомаутентификация и авторизация совмещены.
/>/> Свойства TACACS+
TACACS+ поддерживает следующиевозможности сервера защиты.
Пакеты TCP для надежной передачиданных. Использование TCP в качестве протокола связидля соединений TACACS+ между сервером сетевого доступаи сервером защиты. Для TACACS+ резервируется ТСР-порт49.
Архитектура ААА. Каждый сервис предоставляется отдельно иимеет собственную базу данных, но, тем не менее, они работают вместе, как одинсервер защиты.
Канальное шифрование. Часть TCP-пакета,содержащая данные протокола TACACS+, шифруется с цельюзащиты трафика между сервером сетевого доступа и сервером защиты.
Каждый пакет TACACS+ имеет12-байтовый заголовок, пересылаемый в виде открытого текста, и тело переменнойдлины, содержащее параметры TACACS+. Тело пакеташифруется с помощью алгоритма, использующего псевдослучайный заполнитель,получаемый посредством MD5. Пакеты TACACS+передаются по сети и хранятся сервером TACACS+ вшифрованном виде. Когда это необходимо, пакет дешифруется сервером сетевогодоступа или приложением TACACS+ путем обращенияалгоритма шифрования.
Аутентификация РАР и CHAP. Обеспечиваетполный контроль аутентификации с помощью средств вызова/ответа РАР и CHAP, а также посредством использования диалоговых окон вводапароля доступа и поддержки сообщений интерактивной процедуры начала сеанса.
Защита локальных и глобальных сетей. Поддержка средств AAA удаленного и локального сетевого доступа для серверовсетевого доступа, маршрутизаторов и другого сетевого оборудования,поддерживающего TACACS+. Дает возможность осуществлятьцентрализованное управление сетевым оборудованием.
Протоколы инкапсуляции для удаленного доступа. Поддерживаютиспользование SLIP, РРР и ARAP,а также адресацию TN3270 и X.121в рамках Х.25.
Поддержка автокоманд. Автокоманды автоматически выполняютсядля пользователя, если они внесены в конфигурацию базы данных TACACS+и поддерживаются сервером сетевого доступа.
Функция обратного вызова. Данная функция возвращаеттелефонные вызовы, заставляя сервер сетевого доступа звонить соответствующемупользователю, что может дать дополнительные гарантии защиты пользователям,использующим доступ по телефонным линиям.
Индивидуальные списки доступа пользователей. База данных TACACS+ может дать указание серверу сетевого доступаконтролировать доступ данного пользователя к сетевым службам и ресурсам втечение фазы авторизации на основе списка доступа, созданного в ходепредыдущего сеанса связи.
/>/> Процесс аутентификации TACACS+
Заголовок пакета TACACS+ содержитполе типа, являющееся признаком того, что пакет представляет собой частьпроцесса ААА. Аутентификация TACACS+ различает три типапакетов: START (начало), CONTINUE(продолжение) и REPLY (ответ). Рассмотрим процессаутентификации TACACS+, в котором сервер сетевогодоступа обменивается пакетами аутентификации с сервером TACACS+(рис.2).
/>
Рис.2. Процесс аутентификации TACACS+
Сервер сетевого доступа посылает пакет STARTсерверу защиты TACACS+, чтобы начать процессаутентификации.
Процесс аутентификации на сервере защиты TACACS+обычно возвращает серверу сетевого доступа пакет GETUSER,содержащий запрос имени пользователя.
Сервер сетевого доступа запрашивает имя пользователя ипосылает введенное имя серверу защиты TACACS+ в пакете CONTINUE.
Сервер защиты TACACS+ посылаетсерверу сетевого доступа пакет GETPASS, содержащийзапрос пароля. Сервер сетевого доступа выдает запрос пароля пользователю.
Сервер сетевого доступа посылает серверу защиты TACACS+ пакет CONTINUE, содержащийпароль, введенный пользователем.
Сервер защиты TACACS+ проверяетпароль, используя для этого информацию из файла конфигурации TACACS+,и решает, успешно ли завершен процесс аутентификации данного пользователя. Врезультате серверу сетевого доступа возвращается либо пакет PASS(успех), либо пакет FAIL (неудача), указывающийрезультат аутентификации.
/>/> Процесс авторизации TACACS+
В процессе авторизации TACACS+используется два типа пакетов: REQUEST (запрос) и RESPONSE (ответ). Данный процесс авторизации пользователяконтролируется посредством обмена парами «атрибут/значение» междусервером защиты TACACS+ и сервером сетевого доступа. Рассмотримпроцесс авторизации TACACS+, в котором сервер сетевогодоступа обменивается пакетами авторизации с сервером TACACS+(рис.3).
/>
Рис.3. Процесс авторизации TACACS+
Сервер сетевого доступа посылает пакет REQUESTсерверу защиты TACACS+. Данный пакет содержитфиксированный набор полей, идентифицирующих пользователя или процесс, а такжепеременный набор аргументов, описывающих сервисы и параметры, необходимые дляавторизации.
Сервер защиты TACACS+ возвращаетсерверу сетевого доступа пакет RESPONSE, содержащийпеременный набор аргументов ответа (пары «атрибут/значение»). Этипары строятся на основе ранее заданных разрешений для данного пользователя,хранимых в файле конфигурации TACACS+. Вот несколькопримеров таких пар.
service = ррр — исходно доступныйсервис
protocol = ip- протокол, доступный для использования с указанным сервисом
addr = 172.16.10.1 — авторизованныйсетевой адрес
timeout = 12 — абсолютный таймер,ограничивающий длительность соединения в минутах
Сервер сетевого доступа использует пары «атрибут/значение»для того, чтобы запретить, разрешить или модифицировать возможностииспользования команд и сервисов, запрашиваемых пользователем.
/>/>
Процесс аудита TACACS+
В процессе аудита TACACS+используется два типа пакетов — REQUEST (запрос) и RESPONSE (ответ). Данный процесс во многом подобен процессуавторизации. В процессе аудита создаются записи с информацией об активностипользователя в отношении заданных сервисов. Записи, регистрирующие выполненныесетевым оборудованием действия, могут сохраняться в некотором стандартномформате, например в файле. csv (comma-separated value- разделенные запятыми значения), на сервере защиты с целью дальнейшего анализа.
В рамках TACACS+ аудит ААА неявляется средством надежной защиты и обычно используется только для учета илиуправления. Однако с помощью аудита ААА можно контролировать действияпользователя, чтобы, например, вовремя заметить его необычное поведение приработе с сетевым оборудованием. Рассмотрим процесс аудита TACACS+,в котором сервер сетевого доступа обменивается пакетами аудита с сервером TACACS+ (рис.4).
/>
Рис.4. Процесс аудита TACACS+
Сервер сетевого доступа посылает серверу защиты TACACS+ пакет REQUEST аудита,содержащий фиксированный набор полей, идентифицирующих пользователя или процесс.
Этот пакет содержит запись, состоящую из переменного набораполей (пар «атрибут/значение»), описывающих сервисы, для которыхдолжны создаваться записи аудита в зависимости от определенных событий иметодов аудита. Пары «атрибут/значение» аналогичны тем, которыеиспользуются для авторизации, но дополнительно применяются пары,характеризующие время начала и окончания записи аудита, а также общее время,затраченное на ее создание.
Сервер защиты TACACS+ посылаетсерверу доступа пакет RESPONSE и подтверждает получениеконтрольной записи. Этот пакет указывает, что функция аудита на сервере защиты TACACS+ выполнена и что запись создана и сохранена.Сравнение протоколов TACACS+ и RADIUS
А теперь хотелось бы поподробнее сравнить возможности протоколовTACACS+ и RADIUS.
Протокол RADIUS (Remote Authentication Dial In User Service), в отличие от TACACS+, был разработан независимойгруппой разработчиков (на данный момент протокол не модифицируется) и поэтомуполучил широкое распространение у сторонних разработчиков.
Как правило, все производители программных и аппаратныхклиентов поддерживают данный протокол.
Кратко о протоколе можно сказать следующее: использует всвоей основе протокол UDP (а поэтому относительно быстр), процесс авторизациипроисходит в контексте процесса аутентификации (т.е. авторизация как таковаяотсутствует), реализация RADIUS-сервера ориентирована на однопроцессноеобслуживание клиентов (хотя возможно многопроцессное — вопрос до сих пороткрытый), поддерживает довольно ограниченное число типов аутентификации (Cleartext и CHAP), имеет среднюю степень защищености.
Приведем сравнительную таблицу возможностей обоих протоколов: RADIUS TACACS+ Базовый протокол UDP TCP Поддерживаемые сервисы Autentication, Authorization Authentication, Authorization, Accounting Безопасность Шифруется пароль Шифруется все тело пакета
/>/>
Протокол TACACS+ использует протоколTCP, т.е. он потенциально медленнее протокола RADIUS, но TACACS+ способен в каждыймомент времени обслуживать несколько пользователей.
Radius шифрует только пароль впередаваемом пакете, при этом оставшаяся часть пакета (имя пользователя,авторизованные сервисы, информация учета) не зашифрована и доступна для захватазлоумышленником. TACACS+ шифрует все тело пакета. Такимобразом, степень защищенности протокола TACACS+ выше,чем у RADIUS.
RADIUS поддерживает аутентификацию иавторизацию. TACACS+ использует архитектуру AAA (Authentication,Authorization, Accounting). Возможно выполнение аутентификации отдельно(например, на сервере Kerberos), а авторизации и учета- с использованием TACACS+.
Заключение
В заключение хотелось бы отметить тот факт, что в настоящеевремя разработан новый протокол Diameter (RFC 3588 (Diameter Base Protocol),RFC 3589 (Diameter Command Codes for 3GPP), RFC 4006 (Diameter Credit-ControlApplication)) — наследник RADIUS, который включил большую частьфункциональности TACACS+. Но в то же время компания Cisco Systems продолжитподдерживать свой протокол TACACS+, который остается непревзойденным дляуправления предоставлением доступа к сетевым устройствам (а не к сети черезPPP,VPN), т.к он единственный поддерживает такие дополнительные возможности,как фильтрация команд. Детальное сопоставление с протоколом Diameter можнобудет произвести, когда он станет более распространен и поддержанпроизводителями решений в AAA-области.
/>Список литературы
1. Описание технологии аутентификацииTACACS+, Cisco System Inc., 2003 www.cisco.com/russian_win/warp/public/3/ru/solutions/sec/mer_tech_ident-tacacs.html
2. Технологии идентификации — Обеспечениебезопасности в сети, Cisco Systems Inc. www.cisco.com/global/RU/win/solutions/sec/mer_tech_ident.
shtml
3. Протоколы RADIUS и TACACS+: сравнениеи принципы функционирования, Владислав Пинженин, Максим Мокроусов,Сетевые решения, 2003