Рано или поздно в современных российских реалиях нужно уходить от связки MS + RADIUS + Cisco. В нашем случае необходимо было реализовать подобный функционал через импортозамещающие варианты.
Цели
Найти бесплатное либо OpenSource решение для полноценной работы модели AAA для стэка оборудования Eltex
Внедрить и использовать.
Технические подробности
Мы используем достаточно большой стэк оборудования от Eltex. В головной компании для этой задачи использовался старый сервер на MS Windows Server
Вариант RADIUS + MS - нельзя.
Вариант Freeradius + Eltex - не удалось настроить в наших реалиях.
Eltex ECCM - всем хороша, но не бесплатна,
TACACS+ - вариант, пробуем развернуть.
О решении
TACACS+ (англ. Terminal Access Controller Access Control System plus) — сеансовый протокол, результат дальнейшего усовершенствования TACACS, предпринятого Cisco.
Улучшена безопасность протокола (шифрование), а также введено разделение функций аутентификации, авторизации и учёта, которые теперь можно использовать по отдельности.
TACACS+ использует понятия сеансов. В рамках TACACS+ возможно установление трёх различных типов сеансов AAA (англ. authentication, authorization, accounting). Установление одного типа сеанса в общем случае не требует предварительного успешного установления какого-либо другого. Спецификация протокола не требует для открытия сеанса авторизации открыть сначала сеанс аутентификации. Сервер TACACS+ может потребовать аутентификацию, но протокол этого не оговаривает.
подробности - тут (https://www.opennet.ru/base/cisco/radius_tacacs.txt.html)
Настраиваем
Для настройки мы будем использовать RedOS 7.3.5, коммутатор Eltex 2308B.
Установка TACACS+ в RED OS 7.3.5
Подключаем необходимый репозиторий вручную.
Создаем файл nux-misc.repo в /etc/yum.repos.d/
со следующим содержимым

Запускаем установку пакета tac_plus
dnf -y --enablerepo=nux-misc install tac_plus
Tacacs+ настраивается конфигурационным файлом tac_plus.conf расположенным по пути /etc/tac_plus.conf

В первую очередь задаем свой ключ

Задаем параметры ACL для разрешения доступа (тестовая сеть 192.168.2.0/24)

для ускорения процесса я не буду настраивать шифрование DES/AES/..etc параметров паролей режима enable в параметрах подключения, что в реальной среде НЕДОПУСТИМО, в тестовой среде будем использовать clear text passwords.

Включаем службу tacacs+ в автозагрузку
systemctl enable tac_plus.service
проверяем что служба стартовала нормально (systemctl status tac_plus.service)

Создаем пользователя и пароль для сетевого оборудования
useradd -m tst2tsc
passwd tst2tcs
Настраиваем наш коммутатор
Задаем параметры параметры сервера
tacacs-server host 192.168.2.57 key T@cTst0Key
устанавливаем способ аутентификации для входа в систему по протоколу tacacs+
aaa authentication login authorization default tacacs local
устанавливаем способ аутентификации при повышении уровня привилегий
aaa authentication enable default tacacs enable
Чтобы не потерять доступ до коммутатора (в случае недоступности tacacs-сервера), рекомендуется создать учетную запись в локальной базе данных, и задать пароль на привилегированный режим.
задаем пароль на привилегированный режим
enable password clrtxtp@wd
Разрешаем ведение учета (аккаунтинга) для сессий управления.
aaa accounting login start-stop group tacacs+
Включаем ведение учета введенных в CLI команд по протоколу tacacs+.
aaa accounting commands stop-only group tacacs+
Примечание: По умолчанию используется проверка по локальной базе данных (aaa authentication login default local).
Включаем авторизацию вводимых команд на сервере tacacs:
aaa authorization commands default group tacacs+ local
После этого каждая вводимая команда будет проходить авторизацию на сервере.
Заходим на наш коммутатор под новой учетной записью и проверяем лог коммутатора.

Далее - можно связывать с SAMBA и т.п. Но это уже другая история.
Комментарии (13)
Johan_Palych
12.02.2025 10:50Почему не использовать репо с tac_plus-4.0.4.26-1.el7.nux.x86_64.rpm - 2017-06-15 10:32,
а не tac_plus-4.0.4.26-1.el6.nux.x86_64.rpm - 2012-10-11 14:26
http://mirrors.coreix.net/li.nux.ro/nux/misc/el7/x86_64/tac_plus-4.0.4.26-1.el7.nux.x86_64.rpm
Добавить одной командой:cat <<EOF | sudo tee /etc/yum.repos.d/nux-misc.repo [nux-misc] name=Nux Misc baseurl=http://li.nux.ro/download/nux/misc/el7/x86_64/ enabled=1 gpgcheck=1 gpgkey=http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro EOF
Почитать:Версии РЕД ОС и сроки поддержки
https://redos.red-soft.ru/base/update/version-and-term/?nocache=1739368083436
algerka
12.02.2025 10:50Вместо нативного tacacs+, из бесплатного, использую https://tacacsgui.com/. Просто, наглядно, удобно. С Элтексом полноценный AAA работает нормально, на сколько это может быть в Элтексе.
Кстати, на MES5332A (и во всех аналогичных моделях) столкнулись с одним багом с авторизацией, в которой при недоступности tacacs вы можете аутентифицироваться (залогиниться получается под локальной УЗ) но не можете выполнить ни одной команды, в результате полная потеря управления оборудованием. Техподдержка Элтекса, как обычно, обещала исправить в следующих версиях. На словах обещали в марте 2025.А пока пришлось не использовать авторизацию на Элтексе :(
Eugene_Kaig Автор
12.02.2025 10:50Надо попробовать, спасибо! Главное чтобы Eltex - делал прошивки как обещает. Мне как то тестовую специально запиливали под один баг. Запилили.
gserge
12.02.2025 10:50Спасибо за статью! Tacacs+ вызывает у меня приступы ностальгии. Мы использовали его лет 20 назад для нашего самописного диалап-биллинга.
hogstaberg
12.02.2025 10:50Вариант Freeradius + Eltex - не удалось настроить в наших реалиях.
А я бы с удовольствием почитал кулстори. Freeradius у меня лично, пожалуй, возглавляет топ софта в категории "блеск нищеты". До сих аор поражаюсь тому, как что-то может быть настолько шедевральным и всратым одновременно.
Eugene_Kaig Автор
12.02.2025 10:50Это точно. С одной стороны классный продукт., а с другой такое унылое... Напишу. Только неизвестно когда. Времени всегда не хватает.
tortor
12.02.2025 10:50Вариант Freeradius + Eltex - не удалось настроить в наших реалиях.
Ладно бы не удалось и не удалось, может, навыков недостает или не очень-то и хотелось - что же, бывает. А может баг какой - поделились бы опытом. Но добавка "в наших реалиях" делает фразу комичной - оказывается "реалии" виноваты.
Eugene_Kaig Автор
12.02.2025 10:50Реалии не причем. Не удалось - т.к. не работало как нужно. Т.е. работало - но не до конца., на свитчах в целом работало, но были вопросы. с SAMBA вообще вязалось через раз. Блуждающие глюки. Но, возможно, действительно не хватило опыта.
jhoag
Но ведь серверы Windows поддерживают RADIUS.
TACACS проприетарный и, полагаю, небесплатный. Нет?
Eugene_Kaig Автор
Серверы Windows - да, поддерживают. Но если их нет?
TACACS+ проприетарный, но есть бесплатные реализации (https://community.cisco.com/t5/network-management/is-tacacs-free/td-p/1440583).
jhoag
Если их нет, RADIUS выглядит ещё более очевидным вариантом. Хочу понять, почему не вышло настроить его в связке с Eltex.
Eugene_Kaig Автор
Про RADIUS - если MS использовать нельзя - то RADIUS - только в реализации FreeRADIUS и т.п.
Не взлетал нормально в наших реалиях., т.е. FreeRADIUS я поднял, настроил в связке c Eltex, но добиться внятной и четкой работы - не смог, а при связке с SAMBA - там хватало отдельных глюков. Хотя мб мне просто не хватило времени допилить схему.