Настройка аутентификации
Описание и назначение функции
Модуль AAA (Authentication, Authorization, Accounting) обеспечивает централизованное управление доступом к коммутатору через внешний TACACS+ сервер. Коммутатор передает запросы аутентификации, авторизации и учета на сервер вместо локальной проверки учетных данных, что упрощает администрирование в крупных сетях.
Основные сценарии использования:
- Централизованное управление учетными записями администраторов в сети из десятков устройств
- Разграничение прав доступа на уровне команд (command authorization)
- Регистрация действий администраторов для аудита и соответствия требованиям безопасности
- Резервирование доступа через локальную базу при недоступности TACACS+ сервера
Интеграция AAA с TACACS+ рекомендуется при наличии более 5 сетевых устройств или при необходимости детального журналирования административных действий.
Необходимые условия и предварительные требования
Для настройки AAA аутентификации требуется:
- Доступность TACACS+ сервера (например, tac_plus) с настроенными учетными записями пользователей
- IP-связность между коммутатором и TACACS+ сервером (проверка через команду
ping) - Согласованный общий ключ (shared secret) между коммутатором и сервером
- Версия ПО: v1.0.2 и выше (серия CIT L3200)
- Настроенный management-интерфейс для исходящих запросов к серверу
- Созданная локальная учетная запись для резервного доступа
Примечание: До применения настройки AAA убедитесь в наличии локального пользователя с правами администратора. Это предотвратит блокировку доступа при сбое связи с TACACS+ сервером.
Назначение команд конфигурации
| Команда | Режим | Назначение |
|---|---|---|
tacacs-server [NAME] ip-address [IP] key [SECRET] |
AAA config | Создает TACACS+ сервер с указанием адреса и общего ключа |
tacacs-server [NAME] src-ip [IP] |
AAA config | Определяет IP-адрес источника для запросов к серверу |
tacacs-server [NAME] single-connection enable |
AAA config | Активирует режим единого TCP-соединения для повышения производительности |
tacacs-server timeout [SEC] |
AAA config | Устанавливает таймаут ожидания ответа от сервера (в секундах) |
server-group [NAME] tacacs-server [SERVER] |
AAA config | Создает группу серверов для использования в списках методов |
aaa authentication login method [NAME] server-group [GROUP] local |
AAA config | Определяет метод аутентификации при входе с резервированием на локальную базу |
aaa authentication enable method [NAME] server-group [GROUP] local |
AAA config | Определяет метод аутентификации для перехода в привилегированный режим |
aaa authorization method [NAME] server-group [GROUP] local |
AAA config | Определяет метод авторизации команд |
aaa accounting login method [NAME] server-group [GROUP] |
AAA config | Активирует учет сессий входа |
login authentication aaa method [NAME] |
Line config | Применяет метод аутентификации к линиям vty |
command authorization 15 aaa method [NAME] |
Line config | Включает авторизацию команд уровня 15 (полный доступ) |
Конфигурация реализует схему с приоритетом TACACS+ и автоматическим переключением на локальную аутентификацию при недоступности сервера.
Пример конфигурирования
Пошаговые инструкции
Шаг 1: Проверка связности с TACACS+ сервером
SW4#ping 192.168.100.99
Reply from 192.168.100.99: bytes=64 time<1ms TTL=64
Убедитесь в доступности сервера перед настройкой AAA.
Шаг 2: Вход в режим конфигурации AAA
SW4#configure
SW4(config)#aaa
SW4(config-aaa)#
Команда aaa переводит в специальный режим настройки AAA.
Шаг 3: Создание TACACS+ сервера
SW4(config-aaa)#tacacs-server TAC1 ip-address 192.168.100.99 key labSharedSecret port 49 single-connection enable
Определяет сервер TAC1 с адресом, общим ключом и портом 49 (стандартный для TACACS+). Режим single-connection использует одно TCP-соединение для всех сессий.
Шаг 4: Настройка IP-адреса источника
SW4(config-aaa)#tacacs-server TAC1 src-ip 192.168.100.254
Запросы к серверу будут отправляться с адреса 192.168.100.254 (management VLAN).
Шаг 5: Установка глобального таймаута
SW4(config-aaa)#tacacs-server timeout 5
Сервер будет считаться недоступным через 5 секунд ожидания, после чего сработает резервный метод (local).
Шаг 6: Создание группы серверов
SW4(config-aaa)#server-group TACGRP tacacs-server TAC1
Группа TACGRP содержит сервер TAC1 для использования в списках методов.
Шаг 7: Настройка методов AAA
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
SW4(config-aaa)#aaa authorization method AUTHZ_TAC server-group TACGRP local
SW4(config-aaa)#aaa accounting login method ACCT_TAC server-group TACGRP
Создаются списки методов: LOGIN_TAC для входа, ENA_TAC для enable, AUTHZ_TAC для авторизации и ACCT_TAC для учета. Ключевое слово local активирует резервирование.
Шаг 8: Применение методов к линиям 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
Методы применяются ко всем VTY-линиям (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
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
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
exit
end
Вывод show running-config:
!
aaa
tacacs-server timeout 5
tacacs-server TAC1 ip-address 192.168.100.99 key $9$B06t$fa997cdb74e63c5d73960897db66405f8491ab2ebe070aca
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
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$B06t$...
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 single-connection enable— режим единого соединения активированtacacs-server TAC1 src-ip 192.168.100.254— исходящий адрес для запросовserver-group TACGRP local— резервирование на локальную базу настроено
Просмотр параметров работы
Проверка состояния 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$0F86$... <---- ключ зашифрован
Server Port : 49 <---- стандартный порт TACACS+
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) <---- активный сервер
Просмотр списков методов:
SW4#show aaa method
Method Name : LOGIN_TAC
Method Apply Type : login
Method Apply Funtion : authentication
Method Local : enable <---- резервирование включено
Method Group List : TACGRP
Method Name : ENA_TAC
Method Apply Type : enable
Method Apply Funtion : authentication
Method Local : enable
Method Group List : TACGRP
Method Name : AUTHZ_TAC
Method Apply Funtion : authorization
Method Local : enable
Method Group List : TACGRP
Method Name : ACCT_TAC
Method Apply Type : login
Method Apply Funtion : accounting
Method Local : disable <---- учет только через TACACS+
Method Group List : TACGRP
Рекомендации выполнения команд и настроек
- Управление ключами и безопасностью
- Используйте сложный общий ключ длиной не менее 16 символов
- Храните ключи в защищенном хранилище (password manager)
- Периодически меняйте общий ключ (рекомендуется раз в квартал)
- Обеспечение доступности
- Всегда настраивайте резервирование
localв списках методов аутентификации - Создайте минимум одного локального пользователя с правами администратора
- Рассмотрите развертывание второго TACACS+ сервера и добавление его в группу TACGRP
- Всегда настраивайте резервирование
- Оптимизация производительности
- Используйте режим
single-connection enableдля сокращения задержек - Установите таймаут 3-5 секунд для баланса между отказоустойчивостью и временем ожидания
- Указывайте
src-ipявно для предсказуемости правил firewall на стороне сервера
- Используйте режим
- Журналирование и аудит
- Активируйте
aaa accountingдля всех критичных операций - Настройте сервер TACACS+ для долгосрочного хранения журналов (например,
/var/log/tac_plus.acct) - Регулярно анализируйте журналы на предмет аномальной активности
- Активируйте
- Тестирование конфигурации
- Проверьте вход через SSH с учетными данными TACACS+ до отключения консоли
- Симулируйте недоступность сервера (остановка службы) для проверки резервирования на локальную базу
- Убедитесь в работе command authorization через выполнение команд уровня 15
- Защита консольного доступа
- Оставьте
line consoleс локальной аутентификацией для аварийного доступа - Не применяйте TACACS+ к консоли для предотвращения блокировки при сбое сети
- Оставьте
История возникновения команды
Команды в данной главе применимы для:
- Аппаратных платформ CIT серии L3200 с установленной версией ПО v1.0.2 и выше
- Являются актуальными с версии ПО v1.0.2
Функциональность AAA на базе TACACS+ реализована в соответствии с промышленными стандартами централизованного управления доступом.
Ссылка на внешнюю документацию
RFC 8907 "The Terminal Access Controller Access-Control System Plus (TACACS+) Protocol" описывает стандарт протокола TACACS+. При возникновении вопросов обратитесь к технической поддержке.