Pull to refresh

Использование Vendor-Specific Attributes в Cisco ACS 5 на примере APC и Supermicro

Reading time4 min
Views7.4K
В этой статье я хотел бы поделиться опытом использования Vendor-Specific Attributes (далее VSA) в Cisco Secure ACS 5.5 (далее просто ACS) на примере настройки RADIUS-авторизации на APC Smart-UPS и Supermicro IPMI. ACS в свою очередь будет авторизовать пользователей в LDAP. В конце статьи в качестве бонуса покажу как снимать дамп пакетов на ACS для траблшутинга с помощью Wireshark.
Предупреждение: для простоты понимания излагаемого материала статья содержит множество скриншотов.

Первым делом необходимо произвести конфигурирование External Identity Stores, а именно — настроить подключение к AD/LDAP и настроить мапинг групп. На Хабре уже есть статья на эту тему, так что этот пункт я опущу и перейду непосредственно к подготовке ACS к авторизации в нем пользователей APC Smart-UPS (в конце показав отличия в настройке Supermicro IPMI).

Для начала необходимо создать RADIUS VSA дабы при успешной авторизации передавать дополнительное поле на клиента. В данном случае передается уровень прав залогинившегося пользователя. Необходимые имена полей а так-же их значения можно найти в документации производителя (APC и Supermicro). Создание VSA производиться в разделе меню System Administration -> Configuration -> Dictionaries -> Protocols -> RADIUS -> RADIUS VSA. Вначале создаем Vendor Specific Dictionary (Vendor ID можно узнать на сайте IANA).


Потом добавляем сами атрибуты.


Создаем Device Type для UPS и IPMI. Для этого в Network Resources -> Network Device Groups -> Device Type создаем группу APC-UPS.


Далее в Network Resources -> Network Devices and AAA Clients описываем подсеть, в которой расположены наши ИБП. Можно описывать каждое устройство отдельно, просто указав его IP, но при большом количестве удобнее оперировать группами устройств.


Теперь необходимо создать Device Filter для того, что бы потом можно было направить запрос авторизации в необходимый Access Service. Делается это в разделе Policy Elements -> Session Conditions -> Network Conditions -> Device Filters.


Создаем Authorization Profile для передачи VSA на клиентское устройство в разделе Policy Elements -> Authorization and Permissions -> Network Access -> Authorization Profiles.






Конфигурим Access Service в разделе Access Policies -> Access Services.




Указываем для него Identity Source тут Access Policies -> Access Services -> APC UPS Network Access -> Identity.


И создаем правила Network Access Authorization Policy в Access Policies -> Access Services -> APC UPS Network Access -> Authorization.






Последним шагом в ACS создаем правило выбора Access Services в Access Policies -> Access Services -> Service Selection Rules.






И наконец конфигурим UPS для авторизации пользователей через RADIUS.




Поздравляю! Теперь на UPS можно войти авторизовав пользователя через RADIUS (который в свою очередь авторизует пользователей в LDAP/AD а так-же берет из него группы). В случае недоступности RADIUS-сервера авторизация будет происходить через локальную учетную запись, так что не забываем настроить ее и задать ей стойкий пароль.

Теперь рассмотрим отличие между APC Smart-UPS и Supermicro IPMI. Заключается оно в другом словаре VSA и авторизационном профайле.










Остальные настройки аналогичны вышеприведенным настройкам для ИБП от APC.

Настройка RADIUS в IPMI довольно тривиальна.


В отличии от APC NMC в Supermicro IPMI нельзя указывать приоритет источников учетных записей. Одновременно работают как локальные так и RADIUS пользователи. Так-же не забываем сменить дефолтный пароль пользователя ADMIN.

Хочу обратить Ваше внимание на найденный нами баг/фичу в версиях прошивок IPMI используемых у нас: Пароль пользователя длиннее 16 символов обрезается. У мну был 17 символов — пришлось «урезать». Возможно в более новых версиях это пофиксили — не проверяли.

Обещанный бонус:


Часто, во время настройки авторизации может возникнуть необходимость снять дамп пакетов между конечным устройством и сервером авторизации в лице Cisco ACS. До версии Cisco ACS 5.5 с этим было все плохо (CSCtd13775), но просьба была услышана и теперь в составе ACS есть полноценный tcpdump. Вызвать его можно с помощью команды:
acs-01/admin# tech dumptcp --help
tcpdump version 3.9.4
libpcap version 0.9.4
Usage: tcpdump [-aAdDeflLnNOpqRStuUvxX] [-c count] [ -C file_size ]
                [ -E algo:secret ] [ -F file ] [ -i interface ] [ -M secret ]
                [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ]
                [ -W filecount ] [ -y datalinktype ] [ -Z user ]
                [ expression ]

Как видно из вывода хелпа — имеем мы дело с обыкновенным tcpdump версии 3.9.4, так что можно использовать все известные/привычные приемы работы с ним. Есть только одна особенность — опции передаваемые tcpdump должны быть заключены в двойные кавычки. К примеру что бы перехватить radius-сессию с конечным устройством, которое имеет IP 192.168.1.1 можно выполнить следующую команду:
acs-01/admin#  tech dumptcp "host 192.168.1.1 and port 1812 -vvv -s 0  -w radius.pcap"

Далее копируем его на tftp-сервер:
acs-01/admin# copy disk:radius.pcap tftp://192.168.1.254/

И можем смело «кормить» его Wireshark для дальнейшего анализа.

Полезные ссылки:


1) Настройка Cisco ACS 5.3 в связке с Active Directory
2) IANA PRIVATE ENTERPRISE NUMBERS
3) IPMI User's Guide
4) How do I configure my RADIUS server to authenticate my APC Network Enabled device?
Tags:
Hubs:
Total votes 3: ↑3 and ↓0+3
Comments0

Articles