Skip to content

TACACS+

Что такое TACACS+?

TACACS+ (Terminal Access Controller Access-Control System Plus) — это протокол, разработанный Cisco для централизованного управления доступом к сетевым устройствам.

Протокол используется в основном для аутентификации, авторизации и учета (AAA) действий администраторов и пользователей при подключении к маршрутизаторам, коммутаторам, фаерволам и другим сетевым элементам.


Цель и назначение TACACS+

🎯 Основные задачи:

  • Аутентификация: Проверка личности пользователя
  • Авторизация: Определение, какие команды может выполнять пользователь
  • Учет (Accounting): Логирование всех выполненных команд и действий

В отличие от RADIUS, TACACS+ особенно хорошо подходит для сценариев, где требуется детальная авторизация на уровне CLI (командной строки).


Как работает TACACS+?

[Пользователь] → [SSH / Telnet / Console] → [Network Device] → Отправляет запрос на TACACS+ сервер  
[TACACS+ Server] ←→ [User DB / LDAP / AD] → Проверяет учетные данные  
[TACACS+ Server] → Ответ: Accept / Reject + политики доступа  
[Network Device] → Разрешает или запрещает действия в зависимости от политики

Этапы работы:

  1. Пользователь пытается войти через SSH или консоль.
  2. Устройство отправляет запрос на TACACS+ сервер.
  3. Сервер проверяет учетные данные и возвращает ответ:
  4. Аутентификация успешна?
  5. Какой уровень привилегий у пользователя?
  6. Можно ли выполнять конкретные команды?
  7. Устройство предоставляет доступ согласно политике.

Архитектура TACACS+

+------------------+       +------------------+       +------------------+
|     Клиент       |       |    Network Device|       |   TACACS+ Server |
| (Пользователь,   | <----> | (Router/Switch)  | <----> | (AAA Server)     |
| администратор)   |       |                  |       |                  |
+------------------+       +------------------+       +------------------+

Компоненты:

  • Клиент — человек или автоматизированная система, пытающаяся получить доступ к сетевому устройству
  • Network Device — маршрутизатор, коммутатор, точка доступа и т. д., выступающий как NAS (Network Access Server)
  • TACACS+ Server — сервер, обрабатывающий AAA-запросы и предоставляющий политики доступа

Сообщения и атрибуты TACACS+

Основные типы сообщений:

Сообщение Описание
Authentication START Начало процесса аутентификации
Authentication CONTINUE Продолжение многошаговой аутентификации
Authentication REPLY Результат аутентификации
Authorization REQUEST Запрос на выполнение команды или вход
Authorization RESPONSE Ответ с разрешением или запретом
Accounting REQUEST / RESPONSE Передача данных о действиях пользователя

Часто используемые атрибуты:

Атрибут Описание
user Имя пользователя
password Пароль (шифруется)
priv_lvl Уровень привилегий (например, 0–15 в Cisco)
service Тип сервиса (login, enable и т. д.)
cmd Конкретная команда, которую пользователь хочет выполнить
acct_status_type Тип события (start/stop)
elapsed_time Время сессии

Протокол TACACS+: особенности и отличия от RADIUS

Характеристика TACACS+ RADIUS
Уровень модели OSI Прикладной Прикладной
Протокол передачи TCP (порт 49) UDP (1812/1813)
Функциональность AAA, но каждая часть может быть разделена AAA в одном протоколе
Шифрование Полное шифрование всего сообщения Только пароль шифруется
Авторизация на уровне команд
Поддержка EAP
Гибкость политики Выше, особенно для CLI Ниже
Совместимость Cisco-ориентированный Общий стандарт IETF
Распространённость В корпоративных и операторских сетях В Wi-Fi, Ethernet, PPP, VoWiFi

Где применяется TACACS+?

Сценарий Описание
Консольный доступ Управление маршрутизаторами и коммутаторами
SSH / Telnet Аутентификация администраторов
Enable-режим Защита перехода к привилегированному режиму
CLI-команды Авторизация выполнения конкретных команд
Безопасность инфраструктуры Централизованное управление доступом к сетевым устройствам
Облачные и виртуальные среды Управление виртуальными маршрутизаторами и SDN
Интеграция с Active Directory / LDAP Единая система управления учетными записями

Преимущества TACACS+

Преимущество Описание
Детальная авторизация Возможность ограничения выполнения конкретных команд
Шифрование всего трафика Защита от прослушивания и MITM
Разделение AAA-функций Можно использовать только нужную часть (например, только авторизацию)
Поддержка сложных политик Гибкая настройка прав доступа
Высокая безопасность Защита административного доступа к сетевой инфраструктуре
Интеграция с существующими системами LDAP, Active Directory, Radius (через мосты)
Масштабируемость Поддерживает сотни и тысячи сетевых устройств

Недостатки и ограничения TACACS+

Недостаток Описание
Cisco-зависимость Хотя открыт, чаще используется в Cisco-сетях
Ограниченная поддержка не-Cisco оборудования Не все производители поддерживают TACACS+
Сложность внедрения Требует настройки клиентов, серверов, политик
TCP-соединение Может быть медленнее и менее отказоустойчивым
Нет встроенного механизма MFA Для двухфакторной аутентификации нужны дополнительные модули
Ограничения в мобильных и беспроводных сценариях Меньше подходит для Wi-Fi, VPN, IoT по сравнению с RADIUS

TACACS+ vs RADIUS

Критерий TACACS+ RADIUS
Уровень модели OSI Прикладной Прикладной
Протокол передачи TCP UDP
Функциональность AAA, можно разделить AAA в одном протоколе
Шифрование Полное Только пароль
Авторизация команд
Поддержка EAP
Использование Управление сетевыми устройствами Wi-Fi, Ethernet, PPP, VoWiFi
Распространённость В основном в Cisco-сетях Широко
Безопасность Выше Ниже

Перспективы развития TACACS+

Направление Описание
Открытые реализации Такие как Cisco Tacacs+, FreeTACACS, tac_plus и др.
Интеграция с DevOps Использование TACACS+ в CI/CD, автоматизации сетей
Поддержка MFA Интеграция с OTP, YubiKey, DUO Security
Cloud TACACS+ Работа как SaaS или PaaS сервис
API-first подход Управление через REST API и автоматизацию
Виртуализация и контейнеризация Запуск серверов в Docker/Kubernetes
Поддержка Zero Trust Architecture Интеграция с ZTA для строгого контроля доступа