Интеграция Cisco FirePOWER и ISE

080d6651acc0425ba9820506a6f22fb0.png

Привет habr! Начиная с версии FirePOWER 6.0.0.0, появилась возможность интеграции с корпоративным сервером централизованной аутентификации и авторизации Cisco ISE. В данной заметке кратко рассмотрим, что именно даёт связь FirePOWER с ISE и как эта связь настраивается.

Что такое FirePOWER
Достаточно много написали на нашем сайте в разделе вопросы/ответы:
  • Что такое SourceFire?
  • Каковы преимущества FirePOWER и особенности его внедрения/использования?
  • Как запустить сервисы FirePOWER на ASA 5500-X?
Также есть статья на habrahabr «Делимся опытом. Интеграция сервисов FirePOWER на Cisco ASA».

Что такое Cisco ISE
Достаточно подробно написано на habrahabr в корпоративном блоге Cisco.
Также есть серьёзная статья от инженера Cisco, описывающая сценарии использования Cisco ISE и архитектуру TrustSec.

Интеграция FirePOWER c Cisco ISE даёт в первую очередь новый способ получения идентификационных данных пользователей. До версии FirePOWER 6.0.0.0 аутентификация пользователей происходила в пассивном режиме. Это означает, что где-то в сети на компьютере, входящем в домен, или непосредственно на сервере Active Directory (AD) должен быть установлен агент. Данный агент должен мониторить логи AD на предмет событий login/logoff пользователей и передавать соответствия IP-адреса и учётной записи пользователя на FirePOWER. Последняя реинкарнация данного агента от SourceFIRE получила название Cisco FirePOWER User Agent.
Агенты пассивной аутентификации
В наследство от SourceFIRE компания Cisco получила агент SourceFIRE User Agent, способный интегрироваться с системой управления Defence Center (FireSIGHT). К слову сказать, сейчас актуальное название системы управления FirePOWER выглядит так: FirePOWER Management Center (сокращённо FMC). А агент именуется Cisco FirePOWER User Agent.

До этого у Cisco были собственные варианты агентов: Cisco Active Directory Agent (AD Agent), управляемый из командной строки, и более позднее решение с графическим интерфейсом — Context Directory Agent (CDA). Данные решения можно было использовать для получения функциональности Identity FireWall на устройстве Cisco ASA.Т. е. на Cisco ASA появлялась возможность создавать списки доступа не по IP-адресам, а по учётным записям из AD. Также CDA можно было использовать с решением Cisco ASA CX (данное решение уже более не продаётся в пользу ASA+FirePOWER), с WEB-proxy сервером Cisco WSA и с сервером аутентификации и авторизации Cisco ISE.


Преимущество использования агента для аутентификации пользователей — полная прозрачность процесса аутентификации. Другими словами, User Experience для конечного пользователя абсолютно никак не меняется при внедрении аутентификации на сетевом шлюзе. Однако, у данного метода ряд недостатков. Очевидный минус заключается в самом подходе: нужно устанавливать дополнительное ПО, которое должно круглосуточно мониторить логи AD. Если по какой-то причине логи AD будут недоступны, пользователь не будет авторизован на сетевом устройстве. Также может проявиться проблема с неверным предоставлением прав доступа. Например, если на момент входа пользователя в систему ПК был отключен от сети, в теории, новый пользователь сможет получить права доступа предыдущего пользователя ПК, если через какое-то время подключит ПК обратно к сети.

Другой подход — активная аутентификация, при которой установка агента не требуется, но пользователи должны самостоятельно вводить учётные данные по запросу. Недостаток этого метода очевиден.

Активная аутентификация на FirePOWER также была представлена с выходом версии 6.0.0.0.

Использование Cisco ISE для идентификации пользователей на FirePOWER решает проблемы, присущие как пассивной аутентификации с агентом, так и активной аутентификации. Как следует из определения, Cisco ISE является централизованной системой аутентификации и авторизации пользователей при подключении в сеть. Как только пользователь успешно проходит процедуры аутентификации и авторизации и получает доступ в сеть, на Cisco ISE появляется полная информация об этом пользователе, включающая IP-адрес пользователя и его учётную запись. Далее эту информацию достаточно передать на FirePOWER, а точнее на систему управления FirePOWER Management Center. Cистема получит возможность сопоставить IP-адрес сетевой транзакции с учётной записью пользователя и применить настроенные политики доступа.

Но функциональность Cisco ISE не ограничивается аутентификацией и авторизацией пользователей в сети. Cisco ISE позволяет профилировать пользовательские устройства, т.е. определять, какое устройство подключено к определённому порту определённого коммутатора. К информации об устройстве относятся: производитель, версия ОС, тип устройства (мобильное/стационарное) и т.д. Данная информация также может быть передана на FirePOWER. Это даёт возможность настраивать разные правила доступа для разных типов устройств. Например, для Android и iOS более специфичные ограничения, чем для Microsoft Workstation. Пример настройки правила с учётом типа устройства представлен ниже:

04d3768d44704cad83835e4608e2e24a.PNG

Помимо профилирования устройств Cisco ISE позволяет реализовать архитектуру Cisco TrustSec. Очень кратко, Cisco TrustSec позволяет разграничивать доступ в сети по меткам, называемым Security Group Tags (SGT). Метка представляет собой произвольное число от 1 до 65535 передаётся в рамках Ethernet-кадра. Соответственно, устройства, через которые проходят кадры с метками SGT, должны поддерживать архитектуру TrustSec. В противном случае, информация о метке для сетевой транзакции может передаваться посредством протокола Security Group Tag Exchange Protocol (SXP). При успешном прохождении процедур аутентификации и авторизации пользователю присваивается метка, определяющая его доступ к ресурсам сети. Описание, присвоение метки SGT, а также настройка правил доступа по меткам (SGT ACL) осуществляется при помощи Cisco ISE. Начиная с версии FirePOWER 6.0.0.0 появилась возможность использовать метки SGT в политиках доступа на FirePOWER. Пример настройки правила с учётом метки SGT представлен ниже:

9e3fb17b4825406ebd710cc9fdca1666.PNG

Последний атрибут ISE, который может быть использован в политиках доступа FirePOWER версии 6.0.0.0, — Location IP. Данный атрибут означает IP-адрес сетевого устройства, которое аутентифицировало пользователя через Cisco ISE. Следовательно, можно создавать различные правила доступа для одного и того же пользователя, в зависимости от того, к какому сетевому устройству он подключен (коммутатор или точка доступа WiFi, или, например, коммутатор в головном офисе или коммутатор в удалённом филиале, или, например, подключение пользователя удалённо через AnyConnect).

Прежде чем переходить к настройке связи FirePOWER c Cisco ISE подведём итог. При интеграции FirePOWER и Cisco ISE получаем следующие преимущества:

  1. Отпадает необходимость использования агента Cisco FirePOWER User Agent для аутентификации пользователей. Также отпадает необходимость в активной аутентификации. Все задачи аутентификации и авторизации пользователей в сети берёт на себя Cisco ISE.
  2. Более точная идентификация пользователей на FirePOWER по сравнению с использованием агента Cisco FirePOWER User Agent.
  3. Использование атрибутов Cisco ISE, а именно:
    • Появляется возможность использовать результаты профилирования Cisco ISE в правилах доступа FirePOWER.
    • Появляется возможность использовать метки TrustSec (SGT) в правилах доступа FirePOWER.
    • Появляется возможность использования IP-адреса авторизующего устройства в правилах доступа FirePOWER.


Настройка связи FirePOWER с Cisco ISE

Настройка приводится для FirePOWER Management Center версии 6.0.1 и Cisco ISE версии 2.0.0.306. Как говорилось ранее, Cisco ISE хранит подробную информацию об авторизованных в сети пользователях. Основная задача — передать необходимую информацию на FirePOWER.

Традиционно, когда одна система должна коммуницировать с другой системой, используют кастомные или проприетарные API (Application Programing Interface). Cisco предлагает собственную технологию, посредством которой осуществляется взаимодействие различных продуктов Cisco, а также связь решений Cisco с системами других вендоров. Технология именуется Cisco Platform Exchange Grid (pxGrid). Данная технология предлагает общий язык взаимодействия для обмена информации между различными системами, например, FirePOWER, ISE, WSA, Cyber Threat Defense (CTD) и т.д.

Центральным компонентов pxGrid является Cisco ISE. Другие внешние системы выступают в роли клиентов или агентов в рамках pxGrid и подписываются на Cisco ISE для получения или передачи информации. Когда внешние системы подключаются к pxGrid, регистрируясь на Cisco ISE, они получают возможность обмениваться информацией по схеме «каждый с каждым», используя для этого единые методы. Регистрация внешних систем на Cisco ISE в pxGrid осуществляется посредством цифровых сертификатов. Для возможности использования pxGrid на Cisco ISE требуется наличие лицензии PLUS.

Перейдём к настройкам. Сперва Cisco ISE.

1. Активировать pxGrid Persona на Cisco ISE.

Вкладка Administration → System → Deployment.

f28e290e8ec845ddad7365035ab87574.PNG

Выбрать сервер ISE. Кликнуть по его названию. Установить галку напротив pxGrid:

e3369762250b4b5e867ed00d0748bef6.PNG

Нажать Save.

2. Получить цифровой сертификат для pxGrid. Сервис pxGrid требует расширенные возможности использования цифрового ключа, а именно, аутентификация как сервера, так и клиента. Поэтому сертификат, используемый для стандартных задач ISE (EAP Authentication, Admin portals, User Portals) не подходит для pxGrid. Необходимо сгенерировать и подписать на корпоративном удостоверяющем центре (далее корпоративный CA) сертификат для pxGrid. Для этого нужно зайти на вкладку Administration → System → Certificates и в меню слева выбрать Certificate Signing Requests:

9b95e4cdd9904476a0cb0a38c1aeba04.PNG

Нажать Generate Certificate Signing Request (CSR) и заполнить необходимые поля. Пример на изображении ниже:

3826a04b5a0f4246bf317909c3f8b0d1.PNG

Нажимам Generate и экспортируем полученный CSR. Теперь идём на корпоративный CA и подписываем по CSR сертификат. На данном моменте подробно останавливаться не буду, просто вставлю скриншоты:

78fb18998f334612b0b17f4a23cc087a.PNG
509f647b9e514951b75935e2d17cea47.PNG
e905d31e0d264a168db1770d8c435b55.PNG
229dacc7e7114f328805ac7f62132a49.png

Подписанный сертификат получен. Возвращаемся на ISE, привязываем сертификат к CSR:

bd7304ee8071421ab3a7c78f8d321991.png

829f9ea78f354ba6815317e3209db0aa.png

Теперь на ISE есть необходимый сертификат для pxGrid:

93560c4673384ad09ffdd000be48d747.png

3. Проверить подключенные по pxGrid клиенты можно на вкладке Administration → pxGrid Services. Здесь же установим настройку «Enable Auto Registration»:

44585b6923854460bd80893c67f3a281.png

ISE настроен. Теперь перейдём к настройкам pxGrid на FirePOWER.

4. Необходимо перейти на вкладку System → Integration → Identity Sources и выбрать Identity Services Engine в качестве источника идентификационной информации:

93642d191d15491bbb5efc1e607df952.png

5. Заполнить обязательные поля. Необходимо указать IP-адрес или имя сервера ISE:

fe6fdd86c574443ead993b384476b831.png

6. Указать сертификаты «pxGrid Server CA» и «MNT Server CA». В качестве этих сертификатов можно использовать корневой сертификат корпоративного CA:

cca27c96b3f34619aad467e6f6cfbd4d.png

7. Указать сертификат и ключ «FMC Server Certificate». Данный сертификат FirePOWER Management Center будет предъявлять Cisco ISE при попытке подключения к pxGrid. Чтобы получить этот сертификат, нужно на FirePOWER сгенерировать CSR, подписать его на корпоративном CA и загрузить полученный подписанный сертификат на FirePOWER. Для этого нужно сгенерировать пару ключей и CSR из командной строки FMC, используя утилиту openssl:

da0527defd9c4a8ba257853d5d76efd3.png

Я использовал следующую строку параметров для создания CSR и Private Key:

req -batch -new -newkey rsa:2048 -nodes -keyout fp.key -subj '/C=RU/ST=Moscow/L=Moscow/O=CBS/OU=Computers/emailAddress=uskov@cbs.ru/CN=fmc/CN=cbs/CN=com/CN=ru' -out fp.csr

Далее по CSR нужно подписать сертификат на корпоративном CA. Процедура абсолютно аналогична процессу получения сертификата pxGrid для ISE. Подписанный сертификат импортируем на FirePOWER Management Center. Вкладка Objects → Object Management меню PKI → Internal Certs:

4b86ba8d60d74aa7ad88613080c243bb.png

Нажимаем Add Internal Cert, выбираем подписанный сертификат и Private Key:

c26c5a1ecae64f40acacdb6c4cf9d3f1.png

Сертификат и ключ «FMC Server Certificate» готов. Возвращаемся на вкладку System → Integration → Identity Sources и выбрать Identity Services Engine. Указываем «FMC Server Certificate»:

7cfe985f232c480ebd68b8f7879fc28e.png

8. В этом же меню нажимаем Test. Должно появиться окно «Success»:

8736b5cd1e3540509a7226efd2a074ae.png

9. Не забыть нажать Save в верхнем правом углу:

8f85b3eefb6d4e9c9882c875d6ac5b94.png

10. Вернёмся к ISE, проверим вкладку Administration → pxGrid Services. Видим, появились новые клиенты pxGrid:

5323dd239a1c4144901ef7423330ccdb.png

Проверим работоспособность настроенного решения. Cisco ISE настроен на аутентификацию тестового сегмента проводной сети. Настройки политик Cisco ISE в рамках данной заметки рассматривать не будем. Подключимся с помощью ноутбука к проводной сети, в качестве сапликанта используем Cisco AnyConnect Network Access Manager (NAM):

c249e6c4c0c24f48b9e8827d1df7dbd4.png

В логах ISE проверим Radius Livelog (вкладка Operations → RADIUS Livelog):

2d4f9d5a5c39425cbb9dea9ac2ff4941.png

Аутентификация прошла успешно. Теперь проверим User Activity на FirePOWER (вкладка Analysis → Users → User Activity):

cedbbc209afb42ebb931f470869ab0db.png

Если промотать вывод User Activity правее, то можно увидеть, что FirePOWER Management Center получил от ISE дополнительные атрибуты: Security Group Tag, Endpoint Profile и Endpoint Location:

fa7f2a696ef44da787eb534813a5d7c9.png

На этом описание настройки интеграции ISE и FirePOWER я завершаю. Надеюсь, приведённый материал будет полезен читателям.

Если данная тема заинтересует, добро пожаловать к нам на демостенды по Cisco ISE, Cisco FirePOWER.

Комментарии (0)

© Habrahabr.ru