- нормальная задача администратора – поднять radius сервер, прописать его на сетевом оборудовании, настроить интеграцию radius сервера с LDAP каталогом на windows server. В итоге ты логинишься на сетевое оборудование по доменной/AD учетной записи.
Различия Radius/Tacacs
Подробно в статьях Cisco (en/ru): 1 2 и ниже в статьях про RADIUS и TACACS.
- RADIUS сочетает authentication и authorization, тогда как в TACACS+ это две отдельные функции
- RADIUS полагается на транспорт в виде UDP, тогда как TACACS+ использует TCP
- RADIUS шифрует только пароль в пакете запроса доступа от клиента серверу, остальная часть пакета не шифруется. TACACS+ полностью шифрует тело пакета, но оставляет стандартный заголовок TACACS+.
RADIUS combines authentication and authorization. The access-accept packets sent by the RADIUS server to the client contain authorization information. This makes it difficult to decouple authentication and authorization. TACACS+ uses the AAA architecture, which separates AAA. This allows separate authentication solutions that can still use TACACS+ for authorization and accounting. For example, with TACACS+, it is possible to use Kerberos authentication and TACACS+ authorization and accounting.
Diameter
Diameter используется в мобильных сетях, более нигде не встречал.
Radius
- https://freeradius.org/ – крайне популярный и функциональный проект, можно реализовать многое, включая 2fa
- Remote Authentication Dial-In User Service – чаще используется для AAA процесса сетевого доступа клиентов к сетевым сервисам (remote user authentication service).
- Архитектура client-server, в общем случае client является сервером доступа (client as access server/authenticator; bras, wlc, firewall, switch, ap) для пользователей, которые пытаются куда то получить доступ. Взаимодействие между клиентом и сервером обычно происходит не напрямую, а через промежуточный (relay) элемент (Wi-Fi controller, ASA, BRAS, server radius application).
-
Основные RFC RADIUS: 2865 (authn, authz), 2866 (accounting)
-
RADIUS поддерживает масштабирование с использованием RADIUS proxy – промежуточных (между клиентом и сервером) radius серверов
-
Поддерживает аутентификацию с использованием PPP, PAP, CHAP, EAP
-
Поддерживает protocol extension (vendor-specific attributes)
-
Порты RADIUS
-
radius-authn/authz: 1812, udp/tcp (old port 1645)
-
radius-acct: 1813, udp/tcp (old port 1646)
-
-
Буква U в RADIUS характеризует два основных отличия от TACACS:
-
Udp – использует udp для транспорта исторически на основе RFC 2865. Есть новые версии RFC на RADIUS протокол поверх tcp/tls, но они находятся в experimental статусе :
-
Radius over tcp RFC 6613 (автор из http://freeradius.org/ )
-
Radius over tls RFC 6614
-
-
Users – используется в основном пользователями для доступа их к сетевым ресурсам, хотя и по теории и моей личной практике может успешно использоваться для доступа на устройства
-
- Обнаружена серьезная уязвимость в RADIUS из-за использования в основе MD5 (OMG), по хорошему нужно шифровать данные этого протокола (кто бы мог подумать)
https://blog.cloudflare.com/radius-udp-vulnerable-md5-attack/ Тут максимально подробно https://scienceblog.com/547026/radius-security-flaw-exposes-decades-old-vulnerability-in-enterprise-networks/ The newly discovered vulnerability, dubbed Blast-RADIUS, stems from the protocol’s outdated cryptographic design. RADIUS relies on an authentication check based on the MD5 hash function, which has been known to be insecure for nearly two decades. This weakness allows for a “man-in-the-middle” attack, where an attacker can intercept communication between a RADIUS client (the victim’s networked device) and the RADIUS server, forging a valid protocol accept message in response to a fake login or authentication request. The implications of this vulnerability are severe. An attacker could potentially gain administrative access to networked devices and services without needing to guess or “brute force” passwords. This level of access could allow malicious actors to manipulate network traffic, access sensitive data, or even use compromised devices as a launching point for further attacks. For network administrators and IT professionals, immediate action is required. Vendors have released patches implementing the researchers’ recommended short-term mitigations for this vulnerability. System administrators should promptly check for patches for protocols they use with RADIUS and apply the updated configuration options suggested by their vendors. Mitigation measures Manufacturers and network operators need to take immediate action to mitigate this vulnerability: - Vendors should ensure their RADIUS implementations, such as FreeRADIUS, are updated to the latest versions requiring the use of the Message-Authenticator attribute. - Network operators should enforce TLS or DTLS encryption for RADIUS communications to secure the protocol from unauthorized access. - Isolate RADIUS traffic within restricted-access management VLANs or secure VPN tunnels to limit exposure to potential attackers.
Подробнее о authentication, authorization, accounting (что и зачем) в общей статье.
-
запрос клиента в виде access request, который включает идентификатор запрашивающего, парольные данные и другую информацию о пользователе, запрашивающем доступ (напр. IP адрес)
-
ответ сервера
-
Access-Accept – пользователь успешно аутентифицирован, в это сообщение так же вкладываются поля с атрибутами и авторизационные данные
-
Access-Reject – пользователь не аутентифицирован, аутентификация не пройдена
-
Access-Challenge – пользователь должен предоставить дополнительные данные, которые будут отправлены на сервер ответом на challenge в виде нового access request сообщения (первое сообщение radius client)
-
-
Accounting request
-
Accounting Response
RADIUS: CoA
-
-
вешаем redirect политику на сессию если кончились деньги/потрачен трафик
- изменяем политику bandwidth по аналогу типо «турбо кнопки»
-
изменяем политику bandwidth с наступлением ночного периода (тарифа like “ночной разгон”)
-
переводим клиента в особый vlan, если узнали, что он начал не проходить posture или у него обнаружен вирус (threat centric network access control, TCNAC обнаружил уязвимость)
-
-
-
иметь видимость любого уязвимого хоста в сети
-
принимать меры в виде динамического сетевого карантина при неободимости
-
TACACS
- Terminal Access Controller Access-Control System Plus, чаще используется для авторизации на самих сетевых устройствах (terminal access controller)
- TACACS изначально разработан Cisco – Cisco protocol release as open standard 1993
-
TACACS способен предоставлять AAA, причем все процессы независимы друг от друга, что в итоге позволяет использовать один протокол (напр. RADIUS) для аутентификации, другой протокол (напр. TACACS) для авторизации и аккаунтинга.
-
Авторизация и аккаунтинг более гранулярны в сравнении с RADIUS, что, например, позволяет реализовать разрешение на авторизацию определенных команд
-
Так же как и RADIUS
-
имеет protocol extensions для поддержки vendor specific attributes
-
Client-server архитектура (client as access server/authenticator)
-
Поддерживает несколько authentication protocols
-
-
Использует порт TCP 49 для всех сервисов ААА, что обеспечивает более надежное соединение и доставку данных
-
Буква T в TACACS характеризует два основных отличия от RADIUS:
-
TCP – использует TCP для транспорта
-
Technical – используется в основном для авторизации на устройствах (преимущество в покомандной авторизации)
-
-
Authn состоит из 3 сообщений
-
Start – запрос на аутентификацию от TACACS client
-
Reply – ответ сервера с запросом логина
-
Continue – ответ TACACS client с логином; потом reply/continue повторяются для запроса/передачи пароля
-
-
Authz & Accounting состоит из 2 сообщений
-
Request
-
Response
-
Cisco ISE
В слайд лучше скорректировать “and sends DACL” = “and ISE sends DACL”. Тогда все сразу понятно.
-
Централизованный AAA контроль для wired/wireless/vpn
-
Поддержка RADIUS/TACACS/802.1x servers (сервера в него встроены)
- Поддерживает интеграцию с внешними серверами AAA – напр. LDAP/AD
-
Поддерживает интеграцию с Cisco DUO для реализации MFA
-
Может быть задеплоен как в виде Physical Appliance, так и в виде VM (VMWare ESXi, KVM на RHEL7)
-
Поддерживает кластеризацию для масштабирования и отказоустойчивости (как для applicance, так и для VM)
-
WEB AUTH usually done via url redirect of the users browser
-
AUTH server for ASA identity firewall – аналог 802.1х – трафик пока не аутентифицируешься передаваться не будет
-
MAB – не слишком надежный (из-за легкой подмены mac адреса), но способ аутентификации; mab с profiling (девайс должен подпадать под профиль), реализуемый Cisco ISE – более безопасный способ, чем просто mab
-
Guest Web Portals (Guest Access) – напр. юзер подключается к сети (беспроводной или проводной) без аутентификации и браузер клиента перенаправляется через web url на портал web Cisco ISE для:
-
прохождения аутентификации, причем это могут быть временные credentials, которые экспайрятся сразу после аутентификации/после периода времени; такие креды могут быть получены по почте/смс/с распечатки
-
саморегистрации (может запрашивать информацию типа email, phone, name, company)
-
безаутеньтифицированного доступа (не предоставляют identity information) – может быть в аэропортах/кафе (но часто по законодательству уже требуется аутентификация), хоть они и не аутентифицируются, их действия и предоставленная ими информация аккаунтятся
-
-
-
Политики очень гибкие и создаются легко: на основе большого количества атрибутов – локейшн, время доступа, метод доступа и проч. (подробнее ниже)
-
Помогает для решения задач Compliance под стандарты регуляторов и проходить аудиты
-
Позволяет использовать и гибко настраивать Security Posture (Posture assessment) с гранулярностью вплоть до конкретного endpoint
-
Обеспечивает Visibility посредством логов/отчетности/идентификации хостов/создания профалинга пользователей, который позволяет реализовать видимость устройств/пользователей в текущий момент и исторически
-
В продукт встроены методы аутентификации Guest пользователей/подрядчиков (contractors) для получении доступа в сеть – сервис саморегистрации (self service), кастомизируемые гостевые порталы, которые можно развернуть за минуты
-
BYOD (Bring Your Own Device) и Enterprise Mobility решения могут использовать Cisco ISE – есть, например:
-
Сервис (self service) деплоя/управления/саморегистрации устройств
-
Internal device certification management
-
Интеграция с EMM (enterprise mobility management) решениями
-
-
Возможности программного задания Segmentation политик разграничения пользовательских endpoint и других сетевых устройств
-
Cisco TrustSec – Cisco ISE может использовать/реализовывать деплой TrustSec. Подробнее отдельно ниже.
-
pxGRID (platform exchange GRID) – для интеграции с другими продуктами Cisco и других вендоров. Подробнее отдельно. pxGRID позволяет увеличивать видимость и быстро реагировать на security incidents (detect, investigate, recover).
-
первому матчу (first match)
-
более частому (most common)
-
множественное совпадение (multiple match)
-
дефолтное совпадение (catch all rule) – если нет совпадений ни по одной из настроенных политик
- Метод доступа – MAB, 802.1x, wired, wireless, VPN
-
Членство в группе AD
-
Пользовательские атрибуты в AD, такие как имя компании, департамент, название должности, физический адрес
- Подпадание результатов Profiler-а под тип устройства
-
Время/день
-
Местоположение пользователя
- Posture assessment results – posture на основе атрибутов, собранных с endpoint, таких как версия операционной системы, установленные патчи, установленные приложения
-
MDM – интеграция с третьими сторонами, mdm регистрация/энроллмент
-
Информация из цифровых сертификатов – напр. сертификаты часто используются для того, чтобы определить, является ли подключающееся устройство устройством компании или персональным
-
Radius attributes/values – поддерживаются сотни атрибутов, которые могут использоваться для аутентификации и авторизации
-
-
Пример 1 скрины кейсов
-
endpoint, который подпадает под профиль VoIP телефона, будет помещен в voice vlan с настроенным MAB (Mac Authentication Bypass) как методом аутентификации
-
Пользователи попадают в отдельный vlan от телефонов после прохождения authn & authz (напр. 802.1x)
-
Принтер попадает в еще один vlan, отличный от всех и так же использует MAB
-
-
-
-
Пример 2
-
Corporate Laptop получает полный доступ на основе своего профиля
-
Персональный Телефон получает лимитированный доступ на основе своего профиля
-
-
Cisco DUO
- Duo бесплатен up to 10 users
- Duo работает с несколькими типами аппаратных токенов – HOTP, TOTP, YubiKey
HOTP <serial number>,<HOTP secret key>[,<HOTP counter>] TOTP <serial number>,<TOTP secret key>[,<TOTP time step>] YubiKey <serial number>,<private identity>,<secret key> # Компании Facebook и Google используют YubiKey для аутентификации сотрудников и пользователей.
- Восстановление DUO при потере девайса достаточно простое – делается через отправку reactivation смс из административной web панели duo, в итоге возвращается 2FA к привязанным к УЗ ключам
- Duo интегрируется с огромным количеством продуктов, включая, например,
-
- PAM (SSH Linux)
- Cisco ASA/FirePower
- Juniper/Fortigate/CheckPoint
- RDP
- github
- evernote
- macOS login, но я бы не рекомендовал устанавливать по ряду причин (безопасность, надежность, костыльность)
WHY NOT 1 - не каждый logon screen работает Once installed, Duo authentication is required for new console logons, but not when unlocking the screensaver or when an already logged-on user wakes the system from sleep. WHY NOT 2 - потенциальные проблемы при апдейтах ОС Upgrading from macOS 10.x to macOS 11.0 disables Duo's Mac Logon package. You can restore Duo after updating your operating system with the restore_after_upgrade.py script included in the Duo for macOS 1.1.0 zip file. WHY NOT 3 - bash (напр. учетная запись с _ отбрасывается кривым grep, надо было отбрасывать только то, что начинается с _) dscl . ls /Users | grep -v _ ./configure_maclogon.sh /path/to/MacLogon-NotConfigured-1.1.0.pkg
-
- wordpress – на практике очень неплохо – поддерживается 2FA с использованием push, что считается безопасным методом 2FA сейчас (в сравнении с SMS, phone calls). Кроме того, enterprise решение привлекает и хочется “покрутить” :).
Duo рекомендует отключать XML-RPC (работа с wordpress с мобильных клиентов).
Using XML-RPC bypasses two-factor authentication and makes your website less secure. We recommend only using the WordPress web interface for managing your WordPress website.
DUO security – приобретенная Cisco компания (как и многие другие – catalyst, aironet, opendns, etc). Реализует функции MFA/SSO. Используется многими компаниями любого размера. Duo обеспечивает защиту как cloud, так и on-premise приложений – легко интегрируется с различными enterprise приложениями (vpn подробнее ниже, vdi, rdp, ssh, web, api) и облаками (azure-ad) с использованием различных протоколов AAA (radius, ldap, saml, etc).
Posture assesment
Posture assesment подразумевает проверку на conditions (ос, патчи, политики, состояние файрвола, обновления и события антивируса) устройства перед/во время авторизацией в сеть. Реализован с использованием Cisco ISE + AnyConnect/Temporal agent/Stealth anyconnect/DUO. Endpoint считается compliant если он проходит все posture conditions.
- AnyConnect с posture модулем – поддерживает все posture conditions ((в уроке “большую часть”, но тоже самое и для stealth anyconnect)), automatic remediation и passive reassessment (оценка состояния системы и реагирование на это состояние не только в момент авторизации).
- Temporal agent – загружается временный агент, который осуществляет проверку системы. Достоинство – нет постоянного софта, простота для временных сотрудников (contractors/guest). Недостаток – поддерживается ограниченное количество posture conditions.
- Stealth anyconnect – устанавливается клиент, который исполняется в background и не имеет gui. Поддерживает большую часть posture conditions.
Cisco trustsec
Cisco TrustSec – Cisco ISE может использовать/реализовывать деплой TrustSec – назначать Security Group Tags (SGT) для контроля доступа (authentication/authorization) на основе SGT (SG-ACL).
SGT предоставляют собой значения, которые добавляются сетевым устройством (коммутатором/беспроводным AP/файрволом) в клиентские фреймы. Последующие устройства при обработке фреймов с SGT применяют к ним политики безопасности на основе SGT.
Например, фреймы с “finance” user tag могут взаимодействовать только с устройствами, которые имеют “finance” net tag – сетевая сегментация по аналогии с VLAN/VXLAN. IP адрес и VLAN tag может статически быть замаплен к SGT. Cisco ISE при этом может распространять IP-SGT/VLAN-SGT mapping таблицы на сетевые устройства для реализации политик.
Классификация SGT может происходить автоматически (802.1x, guest, mab, passive id easyconnect, etc mapping to groups on Cisco ISE) или статически. Во время процесса классификации SGT назначаются на IP адреса. SGT могут передаваться в VXLAN сетях. Cisco ISE trustsec dashboard – центральное место по мониторингу деплоя Cisco TrustSec.
Cisco auth failures
Ошибки, которые лечатся указанием алгоритма обмена ключей/типа шифрования.
$ ssh 192.168.1.254 Unable to negotiate with 192.168.1.254 port 22: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1 $ ssh -oKexAlgorithms=+diffie-hellman-group1-sha1 192.168.1.254 Unable to negotiate with 192.168.1.254 port 22: no matching cipher found. Their offer: aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc $ ssh -c aes256-cbc -oKexAlgorithms=+diffie-hellman-group1-sha1 192.168.1.254
Ошибка login invalid не говорит о том, что login invalid. Вы можете вводить неправильный пароль, а будет писать login invalid.
Username: Password: % Login invalid
Ошибка Kerberos: No default realm defined for Kerberos! не блокирует подключение к устройству.
User Access Verification Username: Kerberos: No default realm defined for Kerberos! Username: redkin.p Password: DLS_WS-C3550-24PWR-SMI#