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

Freeradius, Simultaneous-Use Не работает ограничение количества сессий

Здравствуйте!

Система работает такая - Freeradius-1 , Mikrotik в качестве PPtP, PPPoE, L2TP сервера.

Авторизация и пользователей проходит на радиусе, учетные данные пользователей хранятся в файле.

xxxxxx  Cleartext-Password := "zz", Simultaneous-Use := 1, Pool-Name := "private_ip_pool"
       Mikrotik-Rate-Limit := "512k/512k"

rs# radtest xxxxxx zz 127.0.0.1 0 whoiswho
Sending Access-Request of id 109 to 127.0.0.1 port 1812
       User-Name = "xxxxxx"
       User-Password = "zz"
       NAS-IP-Address = 255.255.255.255
       NAS-Port = 0
rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=109, length=88
       Service-Type = Framed-User
       Framed-Protocol = PPP
       Framed-Routing = Broadcast-Listen
       Filter-Id = "std.ppp"
       Framed-MTU = 1460
       Framed-Compression = Van-Jacobson-TCP-IP
       Mikrotik-Rate-Limit = "512k/512k"
       Framed-IP-Address = 192.168.22.206
       Framed-IP-Netmask = 255.255.255.255

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

В логах ошибок нет, radiusd -X тоже без ошибок, radutmp удаляю и пересоздаю 1 раз в сутки, пересмотрел конфиг много раз - вроде бы все в норме, но возможно глаз уже замылился

Куда еще смотреть, чтобы восстановить отработку Simultaneous-Use ?

Edited by dm765

Share this post


Link to post
Share on other sites

Запускал в режиме отладки, никаких ошибок и варнингов нет. При регистрации пользователя Simultaneous-Use не проскакивает...

Что смотреть в отладке?

У меня причем работает 2 радиус-сервера, т.е. если один падает, то начинает работать второй. На одном freeradius версии 1 , на другом freeradius версии 2... ни там ни там Simultaneous-Use не работает, хотя при настройке все успешно работало на обоих серверах..(((

Share this post


Link to post
Share on other sites

Если Simultaneous-Use := 0 то пользователь подключиться не может, при отладке пишет Multiple logins (max 0) - т.е. все правильно..

Edited by dm765

Share this post


Link to post
Share on other sites

смотритте авторизацию, особенно на радиус2, в EAP, апример, по дефолту стоит -- return=OK, убирите...

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

Что смотреть в отладке?

смотрите зпросы к БД, проверку на дубли...

Я уже не помню точно, надо нстройки sql.conf и mysql.conf глянуть..., в выходные попробую посмотреть у себя...

 

хотя при настройке все успешно работало на обоих серверах..

вспоминйте, что меняли, особенно в конфигурции БД и её схеме?

Edited by NewUse

Share this post


Link to post
Share on other sites

смотрите в radiusd -X

Simultaneous-Use дожно вызываться в секции session ...

Ready to process requests.
rad_recv: Access-Request packet from host 127.0.0.1 port 22909, id=192, length=243
...
+- entering group authorize {...}
...
++[mschap] returns ok
# Executing section session from file /usr/local/etc/raddb/sites-enabled/test
+- entering group session {...}
[sql] 	expand: %{User-Name} -> cstrike
[sql] sql_set_user escaped user --> 'cstrike'
[sql] 	expand: SELECT COUNT(*)                              FROM radacct                              WHERE username = '%{SQL-User-Name}'                              AND acctstoptime IS NULL -> SELECT COUNT(*)                              FROM radacct                              WHERE username = 'cstrike'                              AND acctstoptime IS NULL
rlm_sql (sql): Reserving sql socket id: 13
[sql] 	expand: SELECT radacctid, acctsessionid, username,                                nasipaddress, nasportid, framedipaddress,                                callingstationid, framedprotocol                                FROM radacct                                WHERE username = '%{SQL-User-Name}'                                AND acctstoptime IS NULL -> SELECT radacctid, acctsessionid, username,                                nasipaddress, nasportid, framedipaddress,                                callingstationid, framedprotocol                                FROM radacct                                WHERE username = 'cstrike'                                AND acctstoptime IS NULL
rlm_sql (sql): Released sql socket id: 13
++[sql] returns ok
Using Post-Auth-Type Reject

 

тут sql вернул ок, checkrad не выполнялся, потому, что так сконфигурено, и дальше Post-Auth-Type Reject

Share this post


Link to post
Share on other sites

Ребята, у меня пользователи хранятся в файле, работает связка радиус + микротик!!

В радиусе конфиги могли менять еще 2 человека, но они уволились и ничего не помнят ))

В радиусе работают все атрибуты, кроме Simultaneous-Use

Спасибо за внимание к вопросу!!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.