Протокол TACACS+ предназначен для централизованной аутентификации и авторизации администраторов сетевого оборудования. Протокол позволяет выполнять авторизацию каждой выполняемой на сетевом устройстве команды. Так же он позволяет выполнять отправку сведений о выполняемых командах (аккаунтинг). NAICE может выступать в качестве сервера авторизации TACACS+. При взаимодействии сетевого оборудования с сервером по протоколу TACACS+ используется по умолчанию TCP порт 49. Данный порт должен быть доступен для подключения со стороны сетевого оборудования.
Для настройки взаимодействия потребуется выполнить следующие действия:
Подробная информация о настройках для каждого раздела содержится во встроенной документации, которую можно просмотреть, нажав кнопку |
Перейти в раздел Администрирование → Управление идентификацией → Группы пользователей сети. Добавить группу с названием "Администраторы TACACS":
Нажать кнопку Добавить.
Перейти в раздел Администрирование → Управление идентификацией → Пользователи сети. Добавить пользователя, указав его имя и пароль:
Чтобы добавить пользователя в ранее созданную группу "Администраторы TACACS" необходимо в блоке "Группы пользователя" нажать на
и в открывшемся модельном окне выбрать группу и нажать
, в результате чего группа переместиться направо в "Выбранные*":
Нажать Добавить. В результате назначенная группа начнет отображаться в блоке "Группы пользователя". Нажать Добавить, что бы сохранить пользователя во внутренний источник идентификации.
Перейти в раздел Администрирование → Сетевые ресурсы → Профили устройств. Создать или отредактировать существующий профиль устройства, включив в нем использование протокола TACACS+ в блоке "Поддерживаемые протоколы":
Нажать кнопку Сохранить.
Перейти в раздел Администрирование → Сетевые ресурсы → Устройства. Создать или отредактировать существующее сетевое устройство, указав пароль TACACS+, который будет использоваться данным устройством:
Пароль, который будет использоваться для взаимодействия по протоколу TACACS+, необходимо указать в блоке настроек "Настройки аутентификации TACACS+" в поле "Секретный ключ". Нажать Сохранить.
Перейти в раздел Контроль сетевых устройств → Политики сетевых устройств. После установки в наборе есть только одна политика по умолчанию Default. Её нельзя удалить и она всегда будет последней в списке политик.

В данной политике можно изменить или добавить политика аутентификации и авторизации, или же создать новую. Нажать в политике справа
и провалиться в политику.
Политика аутентификации по умолчанию используется цепочку Default sequence, в которую по умолчанию добавлен внутренний источник идентификации Internal DB.
В блоке "Политика авторизации" нажать слева кнопку
: сверху (то есть с наибольшим приоритетом) добавиться новая политика авторизации. Нажать на
в колонке Условия*: откроется модальное окно редактора условий:
Задать условие: "User identity·Identity Group Равно Администраторы TACACS" и нажать Использовать внизу в правой части окна. После этого модальное окно закроется, а условия появится в колонке Условия*.
При необходимости можно сохранить условие в библиотеке. Для этого надо нажать кнопку Сохранить. Данное действие не является обязательным. |
В колонке "Профиль TACACS*" выбрать системный профиль "Maximum privilege". Этот профиль предполагает, что по умолчанию администратор устройства будет авторизован с уровнем привилегий 15. Вы можете добавить собственный профиль с другим поведением и использовать его.
В колонке "Набор команд TACACS*" выбрать системный набор "Allow all". Данный набор команд предполагает разрешение выполнения на устройстве любой команды с любыми аргументами. Вы можете добавить собственный набор команд с другими настройками и использовать его.

Нажать кнопку Сохранить, которая станет доступна после выполнения всех необходимых настроек.
В итоге будет настроена политика авторизации, которая позволяет выполнять подключение с максимальным уровнем привилегий к сетевым устройствам пользователей из внутреннего источника идентификации, которые находятся в группе "Администраторы TACACS", и разрешает для них выполнение любой команды.
Возможно взаимодействие с сетевыми устройствами любых производителей, которые поддерживают протокол TACACS+.
Далее рассматривается настройка для популярных моделей сетевого оборудования Eltex. Получить полную информацию по возможностям сетевого оборудования компании Eltex можно на сайте https://eltex-co.ru/ в разделе Поддержка.
Предполагается, что минимально необходимая конфигурация (IP-адрес, vlan) на коммутаторе уже настроена и есть IP-связность с сервером NAICE.
Указать IP-адрес NAICE в качестве TACACS сервера, при этом key должен совпадать с ключом, указанным в настройках устройства в NAICE:
tacacs-server host 192.168.0.1 key testing123 |
Указать протокол аутентификации и авторизации TACACS как основной:
aaa authentication login authorization default tacacs local |
Данных настроек минимально достаточно для возможности авторизации по протоколу TACACS+. |
Выполнить команду:
aaa authentication enable default tacacs |
Выполнить команду:
aaa authorization commands default group tacacs+ local |
Отправлять аккаунтинг событий подключения пользователей:
aaa accounting login start-stop group tacacs+ |
Отправлять аккаунтинг событий выполняемых команд:
aaa accounting commands stop-only group tacacs+ |
Предполагается, что необходимая конфигурация (IP-адрес, vlan) на коммутаторе уже настроена и есть IP-связность с сервером NAICE.
Указать IP-адрес NAICE в качестве TACACS сервера, при этом key должен совпадать с ключом, указанным в настройках устройства в NAICE:
tacacs-server host 192.168.0.1 key testing123 |
Указать протокол аутентификации и авторизации TACACS как основной:
aaa authentication default tacacs local |
Данных настроек минимально достаточно для возможности авторизации по протоколу TACACS+. |
По умолчанию данный тип коммутаторов использует метод аутентификации PAP, который задается командой:
tacacs-server authentication type pap |
Чтобы включить метод аутентификации ASCII необходимо выполнить команду:
tacacs-server authentication type ascii |
На коммутаторах данной серии требуется включать авторизацию команд для каждого уровня привилегий. По умолчанию все команды распределены по уровням 1,7,15.
Выполнить команды:
aaa authorization command 1 tacacs local aaa authorization command 7 tacacs local aaa authorization command 15 tacacs local |
Для мониторинга событий аутентификации и авторизации TACACS+ необходимо открыть раздел Мониторинг → TACACS+ → Журнал подключений.

В данном разделе отображаются события аутентификации и авторизации. Информация о возможных действиях содержится во встроенной документации, которую можно просмотреть, нажав кнопку
вверху справа.
Информация о событиях аутентификации и авторизации сохраняется в БД с задержкой, по умолчанию интервал равен 60 с. Данные в таблице вычитываются из БД, поэтому события на странице могут отображаться с задержкой. |
Для просмотра подробной информации о событии необходимо нажать на кнопку
в колонке Подробнее для требуемого события. В новой вкладке браузера откроется окно с подробной информацией:

Для мониторинга событий аккаунтинга TACACS+ необходимо открыть раздел Мониторинг → TACACS+ → Учёт команд.

В данном разделе отображаются события аккаунтинга. Информация о возможных действиях содержится во встроенной документации, которую можно просмотреть, нажав кнопку
вверху справа.
Возможна настройка отправки событий аккаунтига в формате syslog на сторонний сервер.
Возможны два варианта задания настроек отправки логов на syslog сервер, которые будут рассмотрены далее.
Настройки выполняются в переменных в файле .env в папке установки NAICE (по умолчанию - /etc/docker-naice):
SYSLOG_ENABLED: false SYSLOG_HOST: 127.0.0.1 SYSLOG_PORT: 514 SYSLOG_FACILITY: AUTHPRIV SYSLOG_LEVEL: INFO |
В переменной SYSLOG_HOST нужно указать адрес syslog-сервера, на который будет выполняться отправка, а также включить отправку логов с помощью SYSLOG_ENABLED: true. При необходимости можно изменить остальные переменные. После этого в папке установке NAICE (по умолчанию - /etc/docker-naice) выполнить перезапуск TACACS-сервера с помощью команды:
sudo docker compose down naice-aquila && sudo docker compose up -d naice-aquila |
Если используется схема с резервированием NAICE, необходимо применить настройку на каждом сервере где развернут NAICE. |
Перезапуск сервиса может занять несколько секунд. В это время авторизация пользователей по протоколу TACACS+ выполняться не будет. |
В файле переменных плейбука group_vars/all.yml изменить настройки:
syslog_enabled: true syslog_host: <IP-адрес syslog-сервера> syslog_port: 514 syslog_facility: AUTHPRIV syslog_level: INFO |
Выполнить плейбук:
- для однохостовой установки:
ansible-playbook install-naice.yml |
- для установки с резервированием:
ansible-playbook reservation-naice-services.yml -i hosts-cluster.yml |
При выполнении плейбука будет выполнен перезапуск всех сервисов NAICE. Это может знать несколько минут. В это время авторизация пользователей по протоколам RADIUS и TACACS+ выполняться не будет! |
Создать две разные группы и поместить в них пользователей согласно требуемым уровням привилегий. Пример:

tacacs.user находиться в группе "Администраторы TACACS".tacacs.user2 находится в группе "Пользователи TACACS".Открыть раздел Контроль сетевых устройств → Элементы политик → Профили TACACS. Создать профиль "tacacs privilige 7":

Указать "Уровень привилегий по умолчанию" 7. Нажать Добавить.
Перейти в раздел Контроль сетевых устройств → Политики сетевых устройств. Перейти в настройки политики, в которой требуется выдавать разные уровни привилегий и добавить две политики авторизации:

В первой политике авторизации настроить условие "User identity·Identity Group равно Администраторы TACACS", использовать профиль "TACACS Maximum Privilege" и "Набор команд TACACS*" "Allow all".
Во второй политике авторизации настроить условие "User identity·Identity Group равно Пользователи TACACS", использовать профиль "tacacs privilige 7" и "Набор команд TACACS*" "Allow all".
Нажать Сохранить.
Для проверки корректности настройки пройти авторизацию под разными добавленными пользователями и убедиться, что каждому выдается указанный уровень привилегий.
Открыть раздел Контроль сетевых устройств → Элементы политик → Профили TACACS. Создать профиль "Extra attrs":

В профиле авторизации указать: "Уровень привилегии по умолчанию".
Нажать кнопку
в блоке "Пользовательские атрибуты", указать имя и значение параметра. В приведенном примере задано два параметра: acl=test и timeout=60.
Можно просмотреть и отредактировать передаваемые атрибуты во вкладке "Передаваемые параметры" рядом с "Атрибуты":

Нажать кнопку Добавить.
Перейти в раздел Контроль сетевых устройств → Политики сетевых устройств. Провалиться в политику, в которой требуется выдавать разные уровни привилегий, и настроить политику авторизации:

В политике авторизации оставить ранее настроенное условие условие, использовать созданный выше профиль профиль "Extra attrs", в "Набор команд TACACS*" указать "Allow all".
Пройти авторизацию на сетевом устройстве и проверить, что отправляемые атрибуты применяются.
Сетевое оборудование должно поддерживать обработку выдаваемых атрибутов! |
Для работы данного функционала требуется настроить авторизацию команд на сетевом устройстве! |
Для настройки разрешения или запрета выполнения команд на устройстве необходимо создать списки таких команд, называемые в NAICE наборами команд.
Настройка наборов команд выполняется в разделе Контроль сетевых устройств → Элементы политик → Наборы команд TACACS. Добавить новый набор команд с именем "restrict 1":

В приведенном выше примере настроено следующее:
show running-config и show startup-config;exit;GigabitEthernet;Более подробно настройка наборов команд и ее принципы описаны во встроенной документации, которую можно просмотреть, нажав кнопку
вверху справа.
Перейти в раздел Контроль сетевых устройств → Политики сетевых устройств. Перейти в настройку политики, в которой требуется использовать настроенный ранее набор команд, и настроить в политике авторизации:

В политике авторизации оставить ранее настроенное условие условие, использовать профиль "TACACS Maximum Privilege" и в "Набор команд TACACS*" указать ранее созданный набор "restrict 1".
Пройти авторизацию на сетевом устройстве и проверить, что можно выполнять только разрешенные команды.
Настройка внешнего источника идентификаций не имеет особенностей и выполняется обычным образом. Настроить внешний источник идентификации согласно инструкции Создание источника идентификации и добавить необходимые для использования в условиях группы согласно инструкции Добавление групп.
Создать цепочку источников идентификаций, в которой будет использоваться новый источник идентификаций.
Перейти в раздел Контроль сетевых устройств → Политики сетевых устройств. Перейти в настройку политики, в которой требуется использовать настроенный ранее набор команд, и настроить политики аутентификации и авторизации:

В в блоке "Политика аутентификации" выбрать для политики по умолчанию "Цепочка идентификации*" ранее созданную цепочку идентификации, содержащую Active Directory как внешний источник пользователей.
В блоке "Политика авторизации" добавить новое правило и настроить его:
Условия*" указать условие с использованием группы, полученной из Active Directory, членам которой требуется разрешить авторизацию, например: "AD·ExternalGroups Равно CN=TACACS admin,CN=Users,DC=test,DC=loc"; Профиль TACACS*" выбрать требуемый профиль, например "TACACS Maximum Privilege". Набор команд TACACS*" выбрать требуемый набор команд, например "Allow all".Нажать Сохранить для применения новых настроек.
Пройти авторизацию на сетевом устройстве пользователем из Active Directory, который является членом выбранной в условии группы и убедиться, что авторизация проходит успешно.