LINUX.ORG.RU
ФорумAdmin

Помогите с FreeRadius ом


0

0

Привет всем!

Решаю нестандартную задачу с использованием FreeRadius столкнулся с двумя небольшими проблемами, которые наверняка можно побороть, но не соображу как.

Проблема 1. У меня настроена авторизация через модуль rlm_sql в БД Oracle. Все работает как надо, но специфика оборудования с которым работает мой сервер требует, чтобы радиус отвечал ACCEPT на авторизацию без логина и без пароля. При условии, что в БД найдется соответствующий пользователь по номеру телефона в параметре Calling-ID. При этом если поле User-Name не пустое то должен дополнительно проверяться еще и логин пароль ? Не соображу как это сделать. Пароли он у меня на ура проверяет но если User-Name пустой или отсутствует, то радиус говорит однозначно REJECT.

Проблема 2. Мне нужно чтобы аккаунтинг приходящий на радиус обрабатывался самим мной и копия аккаунтинга пересылалась на другой радиус сервер. Ка это сделать?

Ответ на: комментарий от ponch

А проксирование как сделать с локальной обработкой?

А если вообще забить на эти логины пароли и авторизовать как-то по другому то есть по наличию чего либо ну или еще как. Просто сами логины и пароли это все вторично, то есть по большому счету можно вообще любые принимать и не заморачиваться лишь бы проверка по базу данных была по Calling-ID.

VladimirGusev
() автор топика
Ответ на: комментарий от VladimirGusev

>А проксирование как сделать с локальной обработкой?

Долго курить доки по rlm_attr_rewrite, rlm_preprocess,возможно и по rlm_proxy.

>Просто сами логины и пароли это все вторично, то есть по большому счету можно вообще любые принимать и не заморачиваться лишь бы проверка по базу данных была по Calling-ID.

Перепиши запрос авторизации, делов то.

anonymous
()
Ответ на: комментарий от anonymous

Первую проблему поборол. Как оказалось все элементарно суть сводится к тому, чтобы убрать из настроек аутентификации и авторизации все кроме самого необходимого. Я убрал вообще все кроме модуля sql а в его настройках я написал селект который выбирает введенный логин и пароль либо не выбирает если что-то не то. В итоге автоизация работает как надо.

SELECT 0,'%{SQL-User-Name}','Cleartext-Password','%{User-Password}',':=' from dual where IsServiceActive('%{Calling-Station-Id}')>0

Теперь осталось разобраться с проксированием аккаунтинга.

VladimirGusev
() автор топика
Ответ на: комментарий от VladimirGusev

Уточни, что конкретно требуется от прокси, завтра на трезвую голову решим ;)

anonymous
()

щас тут вам насоветуют еще и перл подключать, и питон, и еще пару своих либ подключать (и это все доп. тормоза).
Оракл напичкан просто донельзя. Что вам мешает написать процедуру, которая будет вызываться фрирадиусом? В этой проце вы уже будете сами решать что отдавать фрирадиусу и как

Jaizer
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.