Как обычно, начнём с установки:
apt-get install tacacs+
После установки проверяем, что демон запущен:
ps -e | grep tac 1468 ? 00:08:03 tac_plus
И можно смело приступать к настройке. Всё, что можно настроить лежит в tac_plus.conf
sudo nano /etc/tacacs+/tac_plus.conf
В качестве примера приведу конфигурацию для одного пользователя состоящего в одной группе. Для простейшей настройки из tac_plus.conf можно всё удалить и прописать только самое необходимое:
accounting file = /var/log/tac_plus.acct
#файл, куда будут записаны инормация об авторизовавшихся пользователях, выполненых ими командах, времени совершённых действий, уровень привелегий пользователя и др.
key = password
#пароль который мы прописываем на коммутаторах или маршрутизаторах
#Далее создадим ACL в который добавим IP адрес устройства с которого возможен вход на сетевое оборудование:
acl = nets {
permit = 192.168.50.*
permit = 192.168.60.22
deny = .*
}
#Следующим шагом будет создание группы с описанием привелений, подключаемых ACL и др. параметрами:
group = net_admin {
expires = "Jan 1 2018" # время действия группы.
acl = nets # подключаемая ACL
service = exec { # используется для назначения уровня привелегий.
priv-lvl = 15 # самый высокий - 15
}
cmd = show {
permit "ports*"
permit "config*"
deny .*
}
cmd = reboot { deny .* }
cmd = reset { deny .* }
cmd = enable { deny .* }
cmd = ip {
permit "address *"
deny .*
}
}
#Параметр cmd = упределяет разрешённые и заперщённые команды на коммутаторе.
#Далее создаётся учётные записи пользователей:
user = admin {
member = net_admin
login = des gC1WJffsfbBjJ1*2/vQ
}
Как видим пользователь admin пренадлежит к группе net_admin и имеет пароль в зашифрованном виде. Для шифрования можно воспользоваться командой:
echo -n '1password!' | md5sum
Password to be encrypted: my_password
KZ.zR7DCHjlWQ
Перезапускаем демон и при отсутствии ошибок в конфиге:
root@mail:/var/log# /etc/init.d/tacacs_plus restart
* Restarting TACACS+ authentication daemon tacacs+ [ OK ]
Должно всё работать.
Зарисовка о настройке Tacacs+ с доменной авторизацией.