Настройка Cisco ACS 5.3 в связке с Active Directory

в 9:13, , рубрики: aaa, access control, acs, active directory, authentication, authorization, Cisco, huawei, tacacs+, Сетевое оборудование, Сетевые технологии, метки: , , , , , , , , ,

Cisco ACS (Access Control Server) — система для централизованной аутентификации, авторизации и аккаутинга пользователей на всякого рода оборудовании, в частности на активном сетевом оборудовании различных производителей.

Имея достаточно небольшой опыт работы системным администратором в крупной компании enterprise сегмента пришёл к выводу, что каждый системный администратор в идеале должен иметь одну учётную запись для авторизации на всех необходимых ему ресурсах: сетевое оборудование, серверы, рабочие станции и т. д. Это связано как с удобством администрирования, так и с безопасностью. В случае увольнения человека можно залочить всего одну учёту в одном хранилище и пропадёт доступ абсолютно ко всему. Но идеальных случаев, как известно, не бывает. В статье мы попробуем приблизиться к идеалу и настроим авторизацию пользователей на активном сетевом оборудовании с использованием учётной записи Active Directory.

Итак, в нашей сети 3 кампуса: два пользовательских и серверная ферма.
В соответствие с кампусной структурой построения сети устройства подразделяются на группы: access layer, distribution layer, core layer. Отдельно существует группа border для управления пограничным железом: пограничные маршрутизаторы, сетевые экраны, VPN шлюзы, etc.

Полномочия администраторам предоставляются на основе иерархических политик доступа. Администраторам имеющим небольшой опыт работы разрешается работать только с оборудованием уровня access, причём пользовательского некритичного кампуса. С приобретением опыта администраторам даются полномочия на уровень access серверной фермы. При этом они так же могут работать с пользовательским оборудованием. Для разграничения доступа применяется следующая модель. Структура полномочий представлена на рисунке:

Настройка Cisco ACS 5.3 в связке с Active Directory

Каждая прямоугольная область — полномочия на оборудование, которые предоставлены определённой группе администраторов

Настройка сервера ACS

После скачивания с торрент-трекера покупки новой железки Cisco 1120 и первоначальной инсталляции мы попадаем на страницу ввода логина и пароля:

Настройка Cisco ACS 5.3 в связке с Active Directory

Вводим логин и пароль, вбитые при инсталляции и попадаем на стартовую страницу:

Настройка Cisco ACS 5.3 в связке с Active Directory

Network Resources

В секции Network Resources описываются местоположения, типы устройств и, собственно, сами устройства.
Для начала нам необходимо описать устройства, которые будут подключены к серверу. Заходим в секцию Network Resources → Location и создаём как минимум 3 местоположения устройств: Кампус 1, Кампус 2, Серверная ферма:

Настройка Cisco ACS 5.3 в связке с Active Directory

В секции Device Type создаём 3 типа устройств: AccessLayerSwitches, DistributionLayerSwitches, CoreLayerSwitches.

Далее в секции Network Devices and AAA Clients описываем ip адреса устройств и привязываем их к местоположениям и типам. Cisco ACS может использовать проколы tacacs+ и radius. Наши устройства будут работать по протоколу Tacacs+, ставим галочку напротив Tacacs+. В поле Shared Secret вбиваем ключ.

Настройка Cisco ACS 5.3 в связке с Active Directory

Настройки секции Network Resources закончены.

Users and Identity Stores

Переходим к настройке связки с Active Directory. Открываем секцию Users and Identity Stores → External Identity Stores → Active Directory. Заполняем поля. Для соединения с AD необходима учётка доменного администратора. Зачем — не знаю. С учёткой обычного пользователя не работает.

Настройка Cisco ACS 5.3 в связке с Active Directory

Во вкладке Directory Groups осуществляется привязка к группам Active Directory

Настройка Cisco ACS 5.3 в связке с Active Directory

Вкладка Directory Attributes нужна для настройки политик для конкретного пользователя.

Настройка связки с AD на этом закончена.

Policy Elements

Переходим к конфигурированию элементов политик. Создадим профиль полного доступа к устройству. Для этого в секции Policy Elements переходим в группу Authorization and Permissions → Device Administration → Shell Profiles. Создаём профиль FullAccess. Во вкладке Common Tasks задаём максимальные привилегии:

Настройка Cisco ACS 5.3 в связке с Active Directory

Нажимаем Submit. Всё, настройки профилей закончены.

Access Policies

Непосредственно сами политики доступа настраиваются в секции Access Policies.

Для начала необходимо создать политику для работы с Active Directory. Нажимаем на ссылку Access Services и создаём новую политику доступа:

Настройка Cisco ACS 5.3 в связке с Active Directory

Ставим 2 галочки Identity и Authorization.

Далее необходимо указать по какой политике доступа будут работать устройства. Нажимаем на ссылку Service Selection Rules. Создаём правило по которому будут матчиться устройства, работающие по протоколу tacacs+:

Настройка Cisco ACS 5.3 в связке с Active Directory

По этому правилу все устройства, запрашивающие данные по протоколу tacacs+ будут обрабатываться политикой, созданной выше.

Переходим непосредственно к настройке политик доступа. В пункте Identity настраивается источник учётных записей. Выбираем Active Directory. В пункте Authorization прописываются правила для авторизации пользователей. По-умолчанию нужные нам столбцы недоступны, их необходимо принудительно активировать нажав кнопочку Customize.

Настройка Cisco ACS 5.3 в связке с Active Directory

В секции Customize Results выбираются возможные варианты профиля командной строки и набор команд. В нашем случае используется только набор команд.

Для создания правила нажимаем кнопку Create.

Настройка Cisco ACS 5.3 в связке с Active Directory

Проставляем галочки и условия. Пункт AD1:mailNickname нужен если правило настраивается с привязкой к конкретному имени пользователя, а не всей группе.

Далее необходимо настроить правила в соответствие с первой картинкой.

Примеры настройки tacacs+ авторизации на устройствах Cisco и HUAWEI

Авторизация проходит через через сервер tacacs, если он недоступен, но проверяются локальные учётные записи.

Cisco:

#
 tacacs-server host 1.1.1.1
 tacacs-server key _$ecretkey!
#
 aaa new-model
 aaa authentication login default group tacacs+ local
 aaa authentication enable default group tacacs+ enable
 aaa authorization exec default group tacacs+ local if-authenticated
 aaa authorization commands 0 15 group tacacs+ local
 aaa accounting send stop-record authentication failure
 aaa accounting exec default start-stop group tacacs+
 aaa accounting commands 0 15 start-stop group tacacs+
 aaa accounting connection default start-stop group tacacs+
#

HUAWEI:

#
hwtacacs-server template ht
 hwtacacs-server authentication 1.1.1.1
 hwtacacs-server authorization 1.1.1.1
 hwtacacs-server accounting 1.1.1.1
 hwtacacs-server shared-key cipher _$ecretkey!
#
aaa
 authentication-scheme default
 authentication-scheme l-h
  authentication-mode hwtacacs local
  authentication-super hwtacacs super
 authorization-scheme default
 authorization-scheme hwtacacs
  authorization-cmd 3 hwtacacs
  authorization-mode  hwtacacs
 accounting-scheme default
 accounting-scheme hwtacacs
  accounting-mode hwtacacs
  accounting start-fail online
  accounting realtime 3
 recording-scheme scheme0                                                             
  recording-mode hwtacacs ht                                                     
 cmd recording-scheme scheme0                                                         
 outbound recording-scheme scheme0                                                    
 system recording-scheme scheme0 
 domain default
 domain default_admin
 domain huawei
  authentication-scheme l-h
  accounting-scheme hwtacacs
  authorization-scheme hwtacacs
  hwtacacs-server ht
#

Список используемой литературы

1. Understanding ACS 5.3 Configuration
2. Википедия — свободная энциклопедия
3. HedEx Lite — документация по оборудованию HUAWEI

Автор: alexkoh

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js