Skip to content

Настройка TACACS+

Описание и назначение функции

TACACS+ (Terminal Access Controller Access-Control System Plus) обеспечивает централизованное управление доступом к сетевому оборудованию через внешние серверы. Протокол использует TCP порт 49 и шифрует все содержимое пакета, включая команды и параметры. Коммутатор CIT L3200 поддерживает раздельную настройку аутентификации, авторизации и учета действий пользователей.

Основные сценарии использования:

  • Централизованная аутентификация администраторов при подключении по SSH или Telnet
  • Разграничение доступа к командам на основе уровня привилегий пользователя
  • Регистрация всех выполненных команд для аудита и расследования инцидентов
  • Переход в привилегированный режим (enable) с проверкой прав через внешний сервер

Протокол рекомендуется использовать в производственных средах с высокими требованиями к безопасности и необходимостью детального учета действий администраторов.


Необходимые условия и предварительные требования

Для настройки TACACS+ требуется:

  • Доступный TACACS+ сервер (tac_plus, Cisco ISE, ACS или аналогичный)
  • Сетевая связность между коммутатором и сервером (проверьте командой ping)
  • Общий секретный ключ (shared secret), согласованный с администратором сервера
  • Версия ПО: v1.0.2 и выше (серия CIT L3200)
  • Настроенный management-интерфейс или VLAN для source IP коммутатора

Примечание: Сервер TACACS+ должен быть настроен с учетной записью пользователя и правами до начала конфигурирования коммутатора. Убедитесь, что секретный ключ содержит достаточно энтропии для обеспечения безопасности.


Назначение команд конфигурации

Команда Режим Назначение
tacacs-server <имя> ip-address <адрес> key <ключ> port <порт> AAA config Создание экземпляра TACACS+ сервера с IP-адресом, секретным ключом и портом
tacacs-server <имя> src-ip <адрес> AAA config Указание source IP для исходящих соединений с сервером
tacacs-server <имя> single-connection enable AAA config Активация режима мультиплексирования сессий через одно TCP-соединение
tacacs-server timeout <секунды> AAA config Установка глобального таймаута ожидания ответа от сервера
server-group <имя> tacacs-server <имя_сервера> AAA config Создание группы серверов и привязка к ней TACACS+ сервера
aaa authentication login method <имя> server-group <группа> local AAA config Определение метода аутентификации входа с fallback на локальную базу
aaa authentication enable method <имя> server-group <группа> local AAA config Определение метода аутентификации для команды enable
aaa authorization method <имя> server-group <группа> local AAA config Определение метода авторизации команд
aaa accounting login method <имя> server-group <группа> AAA config Определение метода учета сессий и команд
login authentication aaa method <имя> Line config Применение метода аутентификации к линиям VTY
login authorization aaa method <имя> Line config Применение метода авторизации к линиям VTY
login accounting aaa method <имя> Line config Применение метода учета к линиям VTY
enable authentication aaa method <имя> Line config Применение метода аутентификации для enable на линиях VTY
command authorization 15 aaa method <имя> Line config Применение авторизации команд уровня привилегий 15

Команды настраивают полный цикл AAA с использованием TACACS+ в качестве primary метода и локальной базы как резервного варианта.


Пример конфигурирования

Пошаговые инструкции

Шаг 1: Проверка сетевой связности

SW4#ping 192.168.100.99
 PING 192.168.100.99: 64 data bytes
 Reply from 192.168.100.99: bytes=64 time<1ms TTL=64
 2 packets transmitted, 2 packets received, 0% packet loss

Убедитесь, что TACACS+ сервер доступен по сети.

Шаг 2: Вход в режим конфигурации AAA

SW4#configure
SW4(config)#aaa
SW4(config-aaa)#

Все команды TACACS+ настраиваются в подрежиме AAA.

Шаг 3: Создание экземпляра TACACS+ сервера

SW4(config-aaa)#tacacs-server TAC1 ip-address 192.168.100.99 key labSharedSecret port 49 single-connection enable

Команда создает сервер TAC1 с адресом 192.168.100.99, секретным ключом labSharedSecret, портом 49 и включает режим single-connection.

Шаг 4: Настройка source IP адреса

SW4(config-aaa)#tacacs-server TAC1 src-ip 192.168.100.254

Коммутатор будет использовать адрес 192.168.100.254 в качестве source IP при подключении к серверу.

Шаг 5: Установка таймаута

SW4(config-aaa)#tacacs-server timeout 5

Глобальный таймаут ожидания ответа устанавливается в 5 секунд.

Шаг 6: Создание группы серверов

SW4(config-aaa)#server-group TACGRP tacacs-server TAC1

Группа TACGRP содержит сервер TAC1 и может быть расширена дополнительными серверами для резервирования.

Шаг 7: Настройка методов аутентификации

SW4(config-aaa)#aaa authentication login method LOGIN_TAC server-group TACGRP local
SW4(config-aaa)#aaa authentication enable method ENA_TAC server-group TACGRP local

Метод LOGIN_TAC проверяет пользователей через TACGRP, при недоступности сервера переключается на локальную базу.

Шаг 8: Настройка метода авторизации

SW4(config-aaa)#aaa authorization method AUTHZ_TAC server-group TACGRP local

Метод AUTHZ_TAC определяет разрешенные команды через сервер с fallback на локальные права.

Шаг 9: Настройка метода учета

SW4(config-aaa)#aaa accounting login method ACCT_TAC server-group TACGRP

Метод ACCT_TAC регистрирует события входа и выполненные команды на сервере.

Шаг 10: Применение методов к линиям VTY

SW4(config)#line vty 1 32
SW4(config-line)#login authentication aaa method LOGIN_TAC
SW4(config-line)#login authorization aaa method AUTHZ_TAC
SW4(config-line)#login accounting aaa method ACCT_TAC
SW4(config-line)#enable authentication aaa method ENA_TAC
SW4(config-line)#command authorization 15 aaa method AUTHZ_TAC

Все методы AAA применяются к VTY-линиям 1-32 для SSH/Telnet сессий.


Полный вывод выполненных конфигураций

Команды для copy-paste в режиме privileged EXEC:

configure
aaa
tacacs-server timeout 5
tacacs-server TAC1 ip-address 192.168.100.99 key labSharedSecret port 49 single-connection enable
tacacs-server TAC1 src-ip 192.168.100.254
tacacs-server TAC1 timeout 5
server-group TACGRP tacacs-server TAC1
aaa authentication login method LOGIN_TAC server-group TACGRP local
aaa authentication enable method ENA_TAC server-group TACGRP local
aaa authorization method AUTHZ_TAC server-group TACGRP local
aaa accounting login method ACCT_TAC server-group TACGRP
exit
line vty 1 32
login authentication aaa method LOGIN_TAC auth-type pap
login authorization aaa method AUTHZ_TAC
login accounting aaa method ACCT_TAC
enable authentication aaa method ENA_TAC
command authorization 15 aaa method AUTHZ_TAC
end

Вывод show running-config:

!
aaa
 tacacs-server timeout 5
 tacacs-server TAC1 ip-address 192.168.100.99 key $9$3751$***
 tacacs-server TAC1 single-connection enable
 tacacs-server TAC1 src-ip 192.168.100.254
 tacacs-server TAC1 timeout 5
 server-group TACGRP tacacs-server TAC1
 aaa accounting login method ACCT_TAC server-group TACGRP
 aaa authorization  method AUTHZ_TAC server-group TACGRP local
 aaa authentication  enable method ENA_TAC server-group TACGRP local
 aaa authentication login method LOGIN_TAC server-group TACGRP local
!
line vty 1 32
 login authentication aaa method LOGIN_TAC auth-type pap
 login authorization aaa method AUTHZ_TAC
 login accounting aaa method ACCT_TAC
 enable authentication aaa method ENA_TAC
 command authorization 15 aaa method AUTHZ_TAC
!

Изучение состояния устройства

Просмотр конфигурации

Проверка активной конфигурации AAA:

SW4#show aaa config
Version                             : AAA_VB3.00.00.00
!
aaa
 tacacs-server timeout 5
 tacacs-server TAC1 ip-address 192.168.100.99 key $9$***
 tacacs-server TAC1 single-connection enable
 tacacs-server TAC1 src-ip 192.168.100.254
 server-group TACGRP tacacs-server TAC1
 aaa accounting login method ACCT_TAC server-group TACGRP
 aaa authorization  method AUTHZ_TAC server-group TACGRP local
 aaa authentication  enable method ENA_TAC server-group TACGRP local
 aaa authentication login method LOGIN_TAC server-group TACGRP local

Обратите внимание на строки:

  • tacacs-server TAC1 ip-address — IP-адрес сервера и зашифрованный ключ
  • server-group TACGRP tacacs-server TAC1 — привязка сервера к группе

Просмотр параметров работы

Проверка статистики TACACS+ сервера:

SW4#show aaa tacacs-server TAC1 statistic
Server Name                           : TAC1
  Server IP Address                   : 192.168.100.99
  Server IP Instance                  : public
  Server Key                          : $9$***         <---- ключ зашифрован
  Server Port                         : 49            <---- стандартный порт
  Socket Opens                        : 0
  Socket Closes                       : 0
  Socket Errors                       : 0             <---- нет ошибок соединения
  Socket Timeouts                     : 0             <---- нет таймаутов
  Total Packets Sent                  : 0
  Total Packets Recv                  : 0

Проверка конфигурации группы серверов:

SW4#show aaa server-group
Server-group Name                  : TACGRP
  Server-group Protocol Type       : tacacs           <---- тип протокола
  Primary Server                   : TAC1(192.168.100.99:49)

  Current Active Server            : TAC1(192.168.100.99:49)  <---- активный сервер

Проверка настроенных методов AAA:

SW4#show aaa method
Method Name                        : ACCT_TAC
  Method Apply Type                : login
  Method Apply Funtion             : accounting
  Method Local                     : disable         <---- нет локального fallback для учета
  Method Group List                : TACGRP

Method Name                        : AUTHZ_TAC
  Method Apply Funtion             : authorization
  Method Local                     : enable          <---- fallback на локальную авторизацию
  Method Group List                : TACGRP

Method Name                        : ENA_TAC
  Method Apply Type                : enable
  Method Apply Funtion             : authentication
  Method Local                     : enable          <---- fallback на локальную аутентификацию
  Method Group List                : TACGRP

Method Name                        : LOGIN_TAC
  Method Apply Type                : login
  Method Apply Funtion             : authentication
  Method Local                     : enable
  Method Group List                : TACGRP

Рекомендации выполнения команд и настроек

  1. Безопасность секретного ключа
    • Используйте ключи длиной не менее 16 символов с высокой энтропией
    • Применяйте различные ключи для разных устройств или групп устройств
    • Регулярно ротируйте ключи согласно политике безопасности организации
  2. Резервирование и отказоустойчивость
    • Настройте минимум два TACACS+ сервера в группе для обеспечения доступности
    • Оставляйте параметр local в методах аутентификации для доступа при сбое всех серверов
    • Размещайте серверы в разных сегментах сети для защиты от локальных сбоев
  3. Управление таймаутами
    • Значение таймаута 5 секунд оптимально для большинства сетей
    • В высоколатентных каналах увеличьте таймаут до 10-15 секунд
    • Минимизируйте таймауты в критичных сегментах для быстрого переключения на резервный сервер
  4. Source IP и маршрутизация
    • Указывайте src-ip из management VLAN для изоляции служебного трафика
    • Убедитесь, что указанный src-ip маршрутизируется до TACACS+ сервера
    • Настройте ACL на сервере для приема подключений только от известных source IP

История возникновения команды

Команды в данной главе применимы для:

  • Аппаратных платформ CIT серии L3200 с установленной версией ПО v1.0.2 и выше
  • Являются актуальными с версии ПО v1.0.2

Протокол TACACS+ был стандартизирован IETF в сентябре 2020 года в RFC 8907.


Ссылка на внешнюю документацию

RFC 8907 — The Terminal Access Controller Access-Control System Plus (TACACS+) Protocol. При возникновении вопросов обратитесь к технической поддержке.