Возникла такая задача\желание сделать в организации авторизацию по проводу через внутренний Radius сервер и Cisco 802.1x, поскольку инфраструктура строится на Wind домене был выбран встроенный механизм NPS.
Настройка Windows 2012 R2 NPS
Для начала нужно проверить что оборудование и сервер видят друг друга по портам 1812 и 1813.
Затем на NPS Сервере нужно создать Connection Request Policy.
Выглядит она так:
Никаких особых настроек, за исключением только типа подключения – NAS – Ethernet
Затем в Templates нужно завести SharedSecret, можно конечно каждый раз вносить его в ручную, но через шаблон это удобнее.
Затем в RADIUS Clients нужно добавить IP нашего коммутатора, с которого будут прилетать запросы на авторизацию:
Как раз тут и пригодится шаблон секрета, в случае если коммутаторов много – меньше шансов ошибиться.
После этого начинается самое интересное, нужно создать политики авторизации как клиентов, так и устройств которые не умеют 802.1x
Сперва пишем политику для пользователей.
Далее указываем условия успешной авторизации, что пользователь должен быть в нужной нам группе, и что авторизация происходить в проводной сети.
Механизмы авторизации указываем EAP и MSCHAP v2
И в NAS так же указываем тип – Ethernet
Тут самое интересное, мы добавляем в Standart следующие параметры:
Tunnel-Medium-Type – 802
Tunnel-Type – Virtual VLANs
Tunnel-Pvt-Group-ID – 100 (Это VLAN в который после авторизации коммутатор поместит клиента, в моем случае это 100 VLAN)
А в Vendor Specific Указываем Tunnel-Tag – 100 (Так же номер VLAN)
Настройка Cisco Catalyst 802.1x
И после этого можно уже настраивать коммутатор, для этого на нем нужно ввести такие настройки:
aaa new-model
aaa authentication dot1x default group radius
dot1x system-auth-control
radius-server host ххх.ххх.ххх.ххх
radius-server key суперсекретныйкод
И уже на нужном нам интерфейсе, или на всех если вы поехавший, делаем такие настройки:
interface GigabitEthernet0/46
switchport mode access
authentication event fail action authorize vlan 71
// Это мы указываем в какой влан попадет устройство в случае неудачной авторизации, в моей сети 71 – гостевой vlan.
authentication event no-response action authorize vlan 71
// Тоже самое, но только если устройство не может\не хочет авторизоваться – попадает в 71.
authentication port-control auto
dot1x pae authenticator
dot1x timeout quiet-period 15
dot1x timeout tx-period 3
no cdp enable
spanning-tree portfast
И все, после подключения в этот порт – устройство обязано авторизоваться дабы попасть в рабочий VLAN.
Настройка RADUIS MAC авторизации
Но это только часть беды, есть же устройства которые не умеют 802.1х, и для этого мы будем использовать механизм авторизации по MAC адресу устройства. В моем случае это камеры видео-наблюдения.
Сперва напишем политику авторизации, отличатся она будет только другой группой
Условиями авторизации, появляется параметр PAP, SPAP
И Tunnel-Pvt-Group-ID и Tunnel-Tag, нужно будет указать какой VLAN вы будете отдавать при авторизации по MAC.
Но это не самое интересное, самое интересное что для каждого устройства в домене должен быть пользователь у которого username и пароль будут равны его мак адресу, к примеру если у устройства mac адрес 12-34-56-78-90-AB, то в домене должен быть пользователь с логином 1234567890ab и паролем 1234567890ab.
Причем ВАЖНО, Логин и пароль должен быть именно в таком виде, и в нижнем регистре.
Тут начинается загвоздка, поскольку политики безопасности в домене не позволяют пользователю иметь такой же пароль как и логин, и он не проходит по безопасности – домен не даст нам создать такого пользователя.
А лечится это написанием отдельной парольной политики для групп пользователей, более подробно можно найти в этой статье:
И после написания отдельной политики – создаем пользователя, присваиваем ему группу доступа отвечающую за VLAN и группу с пониженным требованием к паролю.
Я еще ставлю следующие атрибуты: Пароль никогда не истечет, пароль нельзя сменить, и для интерактивного логина нужна смарт-карта.
Так же убираю у пользователя группу доменных пользователей, так во избежание.
И собственно после этих манипуляций нужно на Cisco добавить в строке интерфейса всего 1 строчку – mab
Таким образом настройки интерфейса выглядят так:
interface GigabitEthernet0/46
description Besdima_Test
switchport mode access
authentication event fail action authorize vlan 71
authentication event no-response action authorize vlan 71
authentication port-control auto
mab
dot1x pae authenticator
dot1x timeout quiet-period 15
dot1x timeout tx-period 3
no cdp enable
spanning-tree portfast
Бонус
В качестве бонуса вот табличка радиус ответов, по которым можно продиагностировать почему не проходит авторизация в логах на NPS.
Код | Назначение | Комментарий |
0 | Код состояния в случае успешной аутентификации | Все OK |
7 | Домен не найден | Нужно проверить логин/пароль |
8 | Учетная запись не найдена | Нужно проверить логин/пароль |
16 | Неверный пароль или имя пользователя | Нужно проверить логин/пароль |
17 | Ошибка при смене пароля | Вводят неверный текущий пароль, либо ошибка в работе протокола |
19 | Ошибка CHAP аутентификации | Этот тип аутентификации используется только для устройств без поддержки 802.1X Нужно установить атрибут “Store password using reversible encryption” в TRUE |
22 | Ошибка при согласовании типа аутентификации | Обычно пользователи Mac OS или Linux |
23 | Ошибка в работе протокола аутентификации | Обычно пользователи Mac OS или Linux |
34 | Учетная запись отключена | Учетная запись отключена |
36 | Учетная запись заблокирована | Учетная запись заблокирована |
49 | Нет подходящей политики подключения | Обычно пользователи Mac OS или Linux |
265 | Сертификат подписан неизвестным издателем | Отсутствует сертификат корневого центра сетификации |
Полный список кодов информации о состоянии
0 – 37: http://technet.microsoft.com/ru-ru/library/dd197464(v=ws.10).aspx
38 – 257: http://technet.microsoft.com/ru-ru/library/dd197521(v=ws.10).aspx
258 – 282: http://technet.microsoft.com/ru-ru/library/dd197582(v=ws.10).aspx
283 – 303: http://technet.microsoft.com/ru-ru/library/dd197508(v=ws.10).aspx