Рано или поздно в современных российских реалиях нужно уходить от связки 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 и т.п. Но это уже другая история.