Cisco+FreeRADIUS – авторизация по MAC-адресу.

Казалось бы, все просто – нужно взять значение атрибута с МАС-адресом и сверить его с МАС-ом в БД пользователей. Но вся сложность в том, что Cisco, в отличие, например от MPD или MikroTik, присылает MAC-адрес не в отдельном атрибуте, а в Cisco-AVPair формате:

Cisco-AVPair = "client-mac-address=0000.0000.0000"

С таким форматом очень неудобно работать, поэтому выполним следующую настройку FreeRADIUS, благодаря которой мы получим MAC-адрес отдельным атрибутом.

В словарь FreeRADIUS (raddb/dictionary) добавляем следующую строку:

ATTRIBUTE  Client-MAC-Address  3100  string

Число 3100 может быть и другим. Это просто числовой идентификатор атрибута. Главное чтобы не было других атрибутов с таким же id. Для пользовательских атрибутов выделен диапазон от 3000 до 4000.

Затем в основном конфигурационном файле FreeRADIUS (raddb/radiusd.conf) в модуле preprocess прописываем следующее:

with_cisco_vsa_hack = yes

После рестарта в пакеты приходящие с Cisco FreeRADIUS будет дописывать атрибут Client-MAC-Address в таком формате:

Client-MAC-Address = "0000.0000.0000"
Поделиться в FacebookДобавить в TwitterДобавить в Telegram

Комментарии

  1. (#)   cutter:

    Hi,

    Спасибо, это помогло с вытаскиванием isakmp-initator-ip из Cisco-AVPair.

Оставить комментарий

Ответ на Cisco+FreeRADIUS – авторизация по MAC-адресу.