Jump to content
Калькуляторы

C7206+freeradius+хитрая mac авторизация = счастливый я :-)

Доброго времени суток. Имеется Cisco 7206VXR NPE-G2 IOS 12.2(31)SB12 и freeradius 2.1.6. Как можно реализовать следующее:

  1. При авторизации абонента сверяем логин пароль и если совпало пускаем.
  2. Далее сверяем mac адрес и при несовпадении вешаем l4redirect на страничку, где сообщаем об этом клиенту.

Share this post


Link to post
Share on other sites

Пока тупо в radcheck Calling-Station-Id и отлуп при несовпадении. Дальше сижу и думаю как от этого "правильно" избавиться.

Share this post


Link to post
Share on other sites

Если у вас тариф устанавливается по authorize_group_reply_query, то туда можно добавить мак-адрес абонента, в случае несовпадения (мак не найден) вешаем определённые для этого параметры политик, отсылаемые на BRAS.

 

Пока тупо в radcheck Calling-Station-Id и отлуп при несовпадении. Дальше сижу и думаю как от этого "правильно" избавиться.

Приведите примеры дебага правильной и неправильной авторизации, интересую SQL запросы в основном.

Ну и эти самые SQL запросы тоже нужны в девственном состоянии (с конфигов).

Share this post


Link to post
Share on other sites

Да, "тариф" устанавливается по группам. Запрос не менялся.

authorize_group_reply_query = "SELECT id, GroupName, Attribute, Value, op
 FROM ${groupreply_table} WHERE GroupName = '%{Sql-Group}'
 ORDER BY id"

 

Как вы предлагаете изменить запрос, чтобы повесить полиси?

Share this post


Link to post
Share on other sites

мак-адрес абонента в какой таблице прописан?

какая политика должна устаналиваться на авторизованного абонента с неправильным маком?

по каким полям она отличается от политик обычных тарифов?

Share this post


Link to post
Share on other sites
мак-адрес абонента в какой таблице прописан?

какая политика должна устаналиваться на авторизованного абонента с неправильным маком?

по каким полям она отличается от политик обычных тарифов?

  1. Хочу создать новую табличку в которой будет username,mac
  2. Вешается l4redirect на портал

Share this post


Link to post
Share on other sites

group_membership_query = "SELECT ${usergroup_table}.groupname \

FROM ${usergroup_table},${authcheck_table} \

WHERE (${authcheck_table}.username =${usergroup_table}.username AND ${usergroup_table}.username = '%{SQL-User-Name}' AND ${authcheck_table}.mac = '%{client-mac-address}') OR (${usergroup_table}.username = '%{SQL-User-Name}' AND groupname = 'ia_nevernii_mac') ORDER BY priority"

 

Ну вот как-то так, тариф, группа которого называется ia_nevernii_mac имеет атрибуты l4redirect

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this