Windows radius server vlan

802.1X и RADIUS

Материал из Xgu.ru

Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

Автор: Наташа Самойленко
Автор: Игорь Чубин
Короткий URL: 802.1X_RADIUS

На этой странице рассматривается как организовать аутентификацию при доступе к порту коммутатора, поддерживающего стандарт 802.1X. Описываются настройки коммутаторов, а также собственно клиентских машин, которые будут осуществлять доступ в сеть. Рассмотрены случаи, когда аутентификация выполняется для хоста под управлением Windows XP, Linux, на котором запущен Xsupplicant, и Mac OS X.

Протокол RADIUS, его устройство, а также процедура инсталляции и конфигурирования RADIUS-сервера рассматривается на другой странице.

Содержание

[править] Задачи

  • Протокол RADIUS
  • Обзор доступных RADIUS-серверов с открытым исходным кодом
  • Инсталляция и настройка RADIUS-сервера FreeRADIUS
  • Web-интерфейс RADIUS-сервера
  • Организация PPPoE сервера с аутентификацией через RADIUS
  • Совместное использование Active Directory и RADIUS-сервера FreeRADIUS
  • Организация доступа к портам коммутатора с помощью 802.1X и RADIUS (802.1X RADIUS)
  • Настройка XSupplicant

[править] Основные понятия

AAA (authentication, authorization, accounting) — это набор сервисов сетевой безопасности, которые определяют подход для организации контроля доступа к сети.

Authentication (аутентификация) — процеcс подтверждения пользователем своей подлиности, подтверждения того, что пользователь запрашивающий сервис легитимный пользователь системы (в системе существует учетная запись для этого пользователя). Аутентификация может осуществляться по паролю, смарт-карте, сертификату и др.

Authorization (авторизация) — определяет какие сервисы будут доступны или какие сервисы будут запрещены пользователю прошедшему аутентификацию.

Accounting (учёт) — слежение за потреблением сетевых ресурсов пользователем.

EAP (Extensible Authentication Protocol) — протокол определяющий подход к процедуре аутентификации (не определяет конкретный механизм аутентификации). На основе этого подхода могут быть реализованы различные механизмы аутентификации, называемые методы EAP. EAP определяет формат сообщений, а каждый протокол использующий EAP определяет способ инкапсуляции сообщений EAP в свой формат.

EAPOL (EAP over LANs) — протокол определяющий способ инкапсуляции, который позволяет передавать пакеты EAP между supplicant и аутентификатором в локальных проводных сетях.

PAE (Port Access Entity) — отвечает за выполнение алгоритмов и протоколов.

[править] Настройка коммутатора Cisco для работы аутентификатором

Базовая настройка 802.1X на интерфейсе fa0/1 и настройка параметров RADIUS-сервера:

[править] Настройка коммутатора HP ProCurve для работы аутентификатором

Базовая настройка 802.1X на портах 1-12 и настройка параметров RADIUS-сервера:

Настройка 802.1X на коммутаторах Cisco с помощью отказоустойчивого NPS (Windows RADIUS with AD)


Рассмотрим на практике использование Windows Active Directory + NPS (2 сервера для обеспечения отказоустойчивости) + стандарт 802.1x для контроля доступа и аутентификации пользователей – доменных компьютеров – устройств. Ознакомиться с теорией по стандарту можно в Wikipedia, по ссылке: IEEE 802.1X

Так как “лаборатория” у меня ограничена по ресурсам, совместим роли NPS и контроллера домена, но вам я рекомендую такие критичные сервисы все же разделять.

Стандартных способов синхронизации конфигураций (политик) Windows NPS я не знаю, поэтому будем использовать скрипты PowerShell, запускаемые планировщиком заданий (автор мой бывший коллега). Для аутентификации компьютеров домена и для устройств, не умеющих в 802.1x (телефоны, принтеры и пр), будет настроена групповая политика и созданы группы безопасности.

В конце статьи расскажу о некоторых тонкостях работы с 802.1x – как можно использовать неуправляемые коммутаторы, dynamic ACL и пр. Поделюсь информацией об отловленных “глюках”…

Начнем с установки и настройки failover NPS on Windows Server 2012R2 (на 2016-м все аналогично): через Server Manager -> Add Roles and Features Wizard выбираем лишь Network Policy Server.

или с помощью PowerShell:

Небольшое уточнение – так как для Protected EAP (PEAP) вам обязательно потребуется сертификат, подтверждающий подлинность сервера (с соответствующими правами на использование), который будет в доверенных на клиентских компьютерах, то вам скорее всего потребуется установить еще и роль Certification Authority. Но будем считать, что CA у вас уже установлен…

Сделаем тоже самое и на втором сервере. Создадим папку для скрипта C:\Scripts на обоих серверах и сетевую папку на втором сервере \\SRV2\NPS-config$

На первом сервере создадим PowerShell скрипт C:\Scripts\Export-NPS-config.ps1 со следующим содержанием:

После этого настроим задание в Task Sheduler: “Export-NpsConfiguration

Выполнять для всех пользователей — Выполнить с наивысшими правами
Ежедневно — Повторять задачу каждые 10 мин. в течении 8 ч.

На резервном NPS настроим импорт конфигурации (политик):
создадим скрипт PowerShell:

и задачу на его выполнение каждые 10 минут:

Выполнять для всех пользователей — Выполнить с наивысшими правами
Ежедневно — Повторять задачу каждые 10 мин. в течении 8 ч.

Теперь, для проверки, добавим в NPS на одном из серверов(!) пару коммутаторов в RADIUS-клиенты (IP и Shared Secret), две политики запросов на подключение: WIRED-Connect (Условие: “Тип порта NAS – Ethernet”) и WiFi-Enterprise (Условие: “Тип порта NAS – IEEE 802.11”), а также сетевую политику Access Cisco Network Devices (Network Admins):

После настройки, спустя 10 минут, все клиенты\политики\параметры должны появиться и на резервном NPS и мы сможем авторизоваться на коммутаторах с помощью учетной записи ActiveDirectory, члена группы domain\sg-network-admins (которую мы создали заранее).

Перейдем к настройке Active Directory – создадим групповую и парольную политики, создадим необходимые группы.

Групповая политика Computers-8021x-Settings:

Создадим группу безопасности sg-computers-8021x-vl100, куда мы будем добавлять компьютеры, которые мы хотим распределять в влан 100 и настроим фильтрацию для созданной ранее групповой политики на эту группу:

Убедиться в том, что политика успешно отработала можно открыв “Центр управления сетями и общим доступом (Параметры сети и Интернет) – Изменение параметров адаптера (Настройка параметров адаптера) – Свойства адаптера”, где мы сможем увидеть вкладку “Проверка подлинности”:

Когда убедились, что политика успешно применяется – можно переходить к настройке сетевой политики на NPS и портов коммутатора уровня доступа.

Создадим сетевую политику neag-computers-8021x-vl100:

Типовые настройки для порта коммутатора (обращаю внимание, что используется тип аутентификации “мультидомен” – Data & Voice, а также есть возможность аутентификации по mac адресу. на время “переходного периода” есть смысл использовать в параметрах:

влан id не “карантинного”, а того же, куда пользовательский компьютер должен попасть, успешно авторизовавшись – пока не убедимся, что все работает как следует. Эти же параметры могут быть использованы и в других сценариях, например, когда в этот порт воткнут неуправляемый коммутатор и вы хотите, чтобы все устройства, подключенные в него и не прошедшие аутентификацию, попадали в определенный влан (“карантинный”).

Убедиться, что компьютер\телефон успешно прошли аутентификацию можно командой:

Теперь создадим группу (например, sg-fgpp-mab ) в Active Directory для телефонов и добавим в нее один аппарат для тестов (в моем случае это Grandstream GXP2160 с мас-адресом 000b.82ba.a7b1 и соотв. учетной записью domain\000b82baa7b1).

Для созданной группы понизим требования парольной политики (используя Fine-Grained Password Policies через Active Directory Administrative Center -> domain -> System -> Password Settings Container) с такими параметрами Password-Settings-for-MAB:

тем самым разрешим использовать мас-адрес устройств в качестве паролей. После этого мы сможем создать сетевую политику для аутентификации 802.1x method mab, назовем ее neag-devices-8021x-voice. Параметры следующие:

  • NAS Port Type – Ethernet
  • Windows Groups – sg-fgpp-mab
  • EAP Types: Unencrypted authentication (PAP, SPAP)
  • RADIUS Attributes – Vendor Specific: Cisco – Cisco-AV-Pair – Attribute value: device-traffic-class=voice

после успешной аутентификации (не забываем настроить порт коммутатора), посмотрим информацию с порта:

Теперь, как и обещал рассмотрим пару не совсем очевидных ситуаций. Например, нам требуется подключить компьютеры\устройства пользователей через неуправляемый коммутатор (свитч). В этом случае настройки порта для него будут выглядеть следующим образом:

P.S. замечен очень странный глюк – если устройство было подключено через такой свитч, а потом его воткнули в управляемый коммутатор, то оно НЕ заработает, пока мы не перезагрузим(!) свитч Пока других способов решения этой проблемы не нашел.

Еще один момент, связанный с DHCP (если используется ip dhcp snooping) – без таких вот опций:

почему-то корректно ip адрес не получить…хотя может это особенность нашего DHCP сервера

А еще Mac OS & Linux (в которых поддержка 802.1x нативная) пытаются пройти аутентификацию пользователем, даже если настроена аутентификация по мас-адресу.

В следующей части статьи рассмотрим применение 802.1x для Wireless (в зависимости от группы, в которую входит учетная запись пользователя, его будем “закидывать” в соответствующую сеть (влан), хотя подключаться они будут к одному SSID).

Про NAP, MAB и динамические VLAN-ы

Статья о том, как в нашей небольшой организации используются технологии корпораций Microsoft и Cisco в плане ограничения предоставления доступа к сети различным устройствам. Под катом будет рассказано про NAP, MAB и как все это можно использовать.

Некоторые вещи описаны вскользь, т.к. общеизвестны либо достаточно подробно описаны во многих документах.

Технология номер один — NAP (Network Access Protection) от Microsoft — предоставление доступа к сети на основании состояния «здоровья» компьютеров. Другими словами — определяются некоторые политики в которых сказано, что для получения доступа к сети компьютер должен удовлетворять некоторым требованиям — например необходимо наличие антивируса, наличие антивируса с обновленными антивирусными базами, наличие работающего фаервола или службы автоматических обновлений и проч. Если компьютер удовлетворяет требуемым условиям, то доступ к сети предоставляется. Если не удовлетворяет, то доступ не предоставляется, либо предоставляется но ограниченный.

Технологию NAP можно применять в различных сценариях — с DHCP, IPSec’ом, RD-Gate’ом. В нашей небольшой организации NAP применяется совместно с протоколом 802.1X для проверки и предоставления\не предоставления доступа к сети устройствам подключенным к портам коммутаторов или по Wi-Fi. Т.е. как только компьютер подключается к сетевой розетке происходит аутентификация и проверка его соответствия заданным политикам — на основании результатов данной проверки коммутатору от RADIUS-сервера приходит мессейдж о том пускаем клиента в сеть или не пускаем. Если пускаем, то куда (VLAN).
Если компьютер не удовлетворяет заданным требованиям, то его можно переместить в карантинный VLAN, в котором данному компьютеру будет доступен некий сервер — сервер восстановления. С данного сервера можно скачать и установить например антивирус и попытаться повторно получить доступ к нужной сети.
Данный алгоритм работы предполагает, что все клиенты у нас получают адреса по DHCP — и это очень важный момент.

Технология номер два — MAB (MAC Authentication Bypass) от Cisco — аутентификация устройств подключенных к сети по MAC-адресам. Т.е. при подключении устройства к порту правильно-настроенного коммутатора (правильно-настроенный коммутатор в сеть кого попало без предварительной проверки не пропускает) происходит аутентификация подключенного девайса. Правильно-настроенный коммутатор пересылает соответствующий запрос RADIUS-серверу используя MAC-адрес девайса в качестве логина и пароля. Далее коммутатор уже ориентируется на ответ RADIUS-сервера — либо MAB-Success либо банан.

А теперь о том, как мы все это используем.

Как не трудно подметить, технология NAP отлично прилагается к девайсам типа компьютер, т.к. именно здесь реализоваться ее, технологии, потенциал (проверка на установленный антивирус, фаер, обновления. ) и не важно под какой ОС работает компьютер — есть, правда платные, реализации под Linux и вроде даже как под Mac. Для Windows многое бесплатно из коробки (коробка правда стоит денег).

С другой стороны MAB отлично прилагается к девайсам не особо сведущим о таких высоких материях как 802.1X или тем более NAP — т.е. принтера (хотя многие принтера и могут работать по 802.1X), сетевые сканеры, видео-регистраторы, холодильники…

Зная какие устройства используются в сети была разработана соответствующая хитрая схема адресации внутри этой самой сети с определением соответствующих VLAN-ов. Т.е. принтерам была выделена отдельная подсеть и назначен VLAN скажем 5. Компьютерам пользователей своя подсеть и VLAN скажем 6. Количество VLAN-ов и подсетей зависит от того, как именно требуется разграничивать доступ и вообще стоит ли это делать.
VLAN-ы, и это немаловажно, назначаются динамически — т.е. в какую бы розетку пользователь не воткнулся он получит доступ именно к своей сети (если конечно у него есть соответствующие “разрешения” и он удовлетворяет заданным политикам). Тоже самое и с другими девайсами. Случайны прохожий всюду получит банан.

Далее были развернуты RADIUS-сервера и нацелены на Active Directory. В свою очередь в AD были созданы спец. группы в которые добавляются учетные записи компьютеров (в зависимости от принадлежности к отделу\департаменту\… или требуемому уровню доступа).
Также в AD заводятся учетные записи пользователей соответствующие устройствам не понимающим NAP и 802.1X, которые будут проходить по MAB-у. Во время тестирования и настройки единственное что удалось найти в интернете про авторизацию по MAC-адресу (в частности на сайте Майкрософт) — MAC Address Authorization — статья, следуя которой MAB НЕ настроить. А настроить его можно так:

  • в настройках NPS добавить к существующей политике протокол аутентификации PAP;
  • прочитать указанную выше статью технета, и убедиться что у вас в реестре НЕТ данных ключей (в статье их рекомендуют создать);
  • создать в AD учетки пользователей с именами и паролями соответствующими MAC-адресу устройства (маленькими буквами без разделителей);

Созданные учетные записи пользователей для устройств также добавляются в специально заведенные группы — например принтера, сканеры, тонкие клиенты, датчики теплого пола…

Далее на RADIUS-серверах заводятся RADIUS-клиенты, т.е. коммутаторы от которых будут приходить запросы на аутентификацию и авторизацию.

Во времена, когда NAP только появился мы начали его разворачивать на Windows 2008 Standard и очень быстро уперлись, в нашей небольшой организации, в ограничение данной версии — стандартная версия с ролью NPS (Network Policy Server — он же в нашем случае RADIUS) поддерживает только 50 RADIUS-клиентов. В мануалах об этом конечно же написано, но как-то подзабиылось.

Помимо RADIUS-клиентов на серверах создаются соответствующие правила как для работы NAP-а, так и MAB-а. Правила примерно следующие — если запрос пришел из подсети xxx.xxx.xxx.xxx, и клиент входит в группу в AD YYY, да еще и удовлетворяет всем предъявляемым требованиям определенной политики (например имеется рабочий антивирус с актуальными базами и включенным фаерволом для всех сетевых подключений), то предоставляется полный доступ к сети — VLAN ZZZ.
Для MAB-а политика такая же, только без проверки состояния здоровья и проверяется уже членство в определенной группе пользователя, а не компьютера.

Как уже было сказано выше, для MAB-а используется протокол аутентификации PAP, для NAP-а, соответственно, PEAP. На PEAP-е стоит заострить внимание иначе в один прекрасный день это сделает сам PEAP. Дело в том, что PEAP завязан на сертификат сервера — в нашем случае это сертификат RAS IAS сервера. У сертификатов есть отличная способность — срок их действия однажды истекает. Поэтому неплохо позаботится заранее о политике autoenroll-а NPS-серверам соответствующих сертификатов, т.к. иначе десятки, сотни или быть может тысячи пользователей рискуют остаться без доступа к сети (в зависимости от размеров организации и степени проникновения NAP-а).

Далее идет настройка сетевого оборудования. Важно, чтобы коммутаторы поддерживали протокол 802.1X иначе фокус не получится. В нашей небольшой организации повсюду используются девайсы производства Cisco, но даже с ними были проблемы — необходимая поддержка появилась в более поздних версиях IOS-а.

Все что необходимо сделать на коммутаторах это:
— указать RADIUS-сервера и shared key;
— настроить необходимые порты.

Пример:
aaa authentication dot1x default group radius
dot1x system-auth-control
!
interface GigabithtEthernetX/X/X
switchport mode access
authentication order mab dot1x
authentication port-control auto
mab
dot1x guest-vlan XXX
spanning-tree portfast
!
radius-server host XXX.XXX.XXX.XXX auth-port 1812 acct-port 1813 key XXX

Собственно на этом настройка на сетевом оборудовании заканчивается.

Однако для того чтобы все это заработало необходимо, помимо всего прочего, выполнить некоторые настройки и на клиентских компьютерах. А именно — выставить в autostart службы Network Access Protection и Wired Autoconfig — по дефолту они в состоянии Manual.

Замечена особенность — при подключении компьютеров к сети через IP-телефоны Cisco совершенно разных моделей периодически возникает ситуация, когда телефон блокирует прохождение через себя EAP-пакетов. На некоторых телефонах это лечится включением в настройках параметра SPAN to PC. На многих телефонах такой настроки нет. Поэтому кому-то приходится подключаться мимо телефонов в сеть, либо перезагружать телефон. Есть ли похожие ништяки у других вендоров не известно — у нас используется только Cisco.

В результате мы получаем неплохую защиту нашей сети уже на этапе попытки подключения к ней. Уходим от таких вещей как port-security или за-shutdown-енные порты. В качестве бонуса получая динамически-назначаемые VLAN-ы.

В обчем и целом можно сказать, что технологии неплохие и вполне рабочие.

Читайте также:  Как установить windows remote desktop services user cal
Оцените статью