Перейти до

MPD5 + FreeRadius


Рекомендованные сообщения

Опубліковано: (відредаговано)

 

Жахливо змучився, так і не зміг зрозуміти, як привчити радіус перевіряти і логін, і пароль, і calling-station-id.

Є в когось думки з цього приводу?

простота роботи білінгу з радіусом вражає.... видно що писався для того щоб можна було легко інтегрувати з будь-яким софтом або желізом будь-якого виробника

хоча і нічого дивного судячи з того що радіус напряму через модуль sql в бд лазить. з іншого боку - простота - частина успіху..

 

Да просто то я від незнаяння :)

Не надто розумію радіус і ці вибоки з sql.

 

Я вже зрозумів, що мені потрібно щось на зразок

id | username | attribute                   | value                          | op |

> +----+----------+--------------------+-------------------+----+

> | 1 | user01 | Cleartext-Password |pass01                        |:= |

> | 2 | user01 | Calling-Station-Id     |98-4B-4A-F5-BF-40    | == |

> +----+----------+--------------------+-------------------+----+

 

Тепер зрозуміти як це зробити  залишилось.

Відредаговано L1ght
Ссылка на сообщение
Поделиться на других сайтах

 

 

Жахливо змучився, так і не зміг зрозуміти, як привчити радіус перевіряти і логін, і пароль, і calling-station-id.

Є в когось думки з цього приводу?

простота роботи білінгу з радіусом вражає.... видно що писався для того щоб можна було легко інтегрувати з будь-яким софтом або желізом будь-якого виробника

хоча і нічого дивного судячи з того що радіус напряму через модуль sql в бд лазить. з іншого боку - простота - частина успіху..

 

Да просто то я від незнаяння :)

Не надто розумію радіус і ці вибоки з sql.

 

насправді я приглядався до цього білінгу, але в мене всі браси автентифікуються на радіусі на даний момент.  Глянувши на те як організована робота з радіусом - стало зрозуміло що цей функціонал йому  приліпили аби було (хоча можу і помилятися) ...  але якщо напрягтися то все можна підпиляти. Одним словом бажання відпало його пиляти ... буду пиляти те що маю.... хоча там свої блохи

 

буду мати час вільний то можливо попилю для експерименту (на віртуалці уже стоїть але особливо ще не розкурював) ... харить що підтримки аккаунтінгу з радіусу толком нема - прийдеться теж пиляти, хоча думаю що там не складно має бути

Відредаговано Lynx100
Ссылка на сообщение
Поделиться на других сайтах

 

 

 

Жахливо змучився, так і не зміг зрозуміти, як привчити радіус перевіряти і логін, і пароль, і calling-station-id.

Є в когось думки з цього приводу?

простота роботи білінгу з радіусом вражає.... видно що писався для того щоб можна було легко інтегрувати з будь-яким софтом або желізом будь-якого виробника

хоча і нічого дивного судячи з того що радіус напряму через модуль sql в бд лазить. з іншого боку - простота - частина успіху..

 

Да просто то я від незнаяння :)

Не надто розумію радіус і ці вибоки з sql.

 

насправді я приглядався до цього білінгу, але в мене всі браси автентифікуються на радіусі на даний момент.  Глянувши на те як організована робота з радіусом - стало зрозуміло що цей функціонал йому  приліпили аби було (хоча можу і помилятися) ...  але якщо напрягтися то все можна підпиляти. Одним словом бажання відпало його пиляти ... буду пиляти те що маю.... хоча там свої блохи

 

буду мати час вільний то можливо попилю для експерименту (на віртуалці уже стоїть але особливо ще не розкурював) ... харить що підтримки аккаунтінгу з радіусу толком нема - прийдеться теж пиляти, хоча думаю що там не складно має бути

 

Ну nightfly з jcomm грозяться переробити взаємодію з радіусом.

Ссылка на сообщение
Поделиться на других сайтах

То як, хтось може що сказати з приводу перевірки login,password, calling station id?

CREATE OR REPLACE VIEW `radius_check` (`UserName`, `Attribute`, `op`, `Value`) AS
SELECT `users`.`login`, 'Cleartext-Password', ':=', `users`.`Password` FROM `users`
UNION
SELECT `users`.`login`, 'Calling-Station-Id', '==', `nethosts`.`mac` FROM `users`
JOIN `nethosts` ON `users`.`IP` = `nethosts`.`ip`
JOIN `networks` ON `nethosts`.`netid` = `networks`.`id` AND `networks`.`use_radius` = 1
ORDER BY `UserName`, `Attribute`;

P.S. Работу с радиусом не проверял, но должно работать...

 

Ну nightfly з jcomm грозяться переробити взаємодію з радіусом.

Как только будет видно, что это действительно нужно...  ;)

Відредаговано jcomm
Ссылка на сообщение
Поделиться на других сайтах

 

 

Как только будет видно, что это действительно нужно... 
 

То linux ISG та аксель через радіус працюють, доволі цікаві речі.

Ще хотілось би акаунтінг щоб нормально працював, а то без нетфлоу нема статистики.

Ссылка на сообщение
Поделиться на других сайтах

 

 

Как только будет видно, что это действительно нужно... ;)

а я вообще нипричем, у меня другая, правильная религия - "во имя rscriptd" :P

Ссылка на сообщение
Поделиться на других сайтах
Опубліковано: (відредаговано)
P.S. Работу с радиусом не проверял, но должно работать...
CREATE OR REPLACE VIEW `radius_check` (`UserName`, `Attribute`, `op`, `Value`) AS
SELECT `users`.`login`, 'Cleartext-Password', ':=', `users`.`Password` FROM `users`
UNION
SELECT `users`.`login`, 'Calling-Station-Id', '==', `nethosts`.`mac` FROM `users`
JOIN `nethosts` ON `users`.`IP` = `nethosts`.`ip`
JOIN `networks` ON `nethosts`.`netid` = `networks`.`id` AND `networks`.`use_radius` = 1
ORDER BY `UserName`, `Attribute`;

Дійсно працює, з додаванням у атрибути мережі Calling-Station-Id == {MAC}

root@bsd:/usr/local/etc/raddb/sql/mysql # echo "User-Name=citystr1ap1_ldeg,User-Password=7ypr0apk,Calling-Station-Id=08:00:27:79:89:53" | radclient -x 127.0.0.1 auth 123
Sending Access-Request of id 156 to 127.0.0.1 port 1812
	User-Name = "citystr1ap1_ldeg"
	User-Password = "7ypr0apk"
	Calling-Station-Id = "08:00:27:79:89:53"
rad_recv: Access-Reject packet from host 127.0.0.1 port 1812, id=156, length=20
root@bsd:/usr/local/etc/raddb/sql/mysql # echo "User-Name=citystr1ap1_ldeg,User-Password=7ypr0apk,Calling-Station-Id=08:00:27:79:89:54" | radclient -x 127.0.0.1 auth 123
Sending Access-Request of id 75 to 127.0.0.1 port 1812
	User-Name = "citystr1ap1_ldeg"
	User-Password = "7ypr0apk"
	Calling-Station-Id = "08:00:27:79:89:54"
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=75, length=51
	Calling-Station-Id = "08:00:27:79:89:54"
	Framed-IP-Address = 10.0.0.2
	Framed-IP-Netmask = 255.255.255.255

Ось таке виходить. При валідному маку віддає акцес-акцепт, при невалідному акцес-режект.

Відредаговано L1ght
Ссылка на сообщение
Поделиться на других сайтах

Ще хотілось би акаунтінг щоб нормально працював, а то без нетфлоу нема статистики.

Экспортом netflow занимался mpd5. И последний замечательно справлялся с этой задачей. А вот что там с accel-ppp и Linux ISG не знаю... 

Відредаговано jcomm
Ссылка на сообщение
Поделиться на других сайтах

 

 

Экспортом netflow занимался mpd5. И последний замечательно справлялся с этой задачей. А вот что там с accel-ppp и Linux ISG не знаю.

Не добре він з цим справляється.

В мене була велика тема щодо глюків системи. Після відключення нетфлоу на мпд - в НАСа пішли аптайми нормальні, а не неділья, або ще гірше 2-5 днів. 

Ссылка на сообщение
Поделиться на других сайтах

 

 

А вот что там с accel-ppp и Linux ISG не знаю...

Сколько помню у них там есть свой ядерный модуль експорта - типа ng_flow. Вроде ок.

 

 

 

Ось таке виходить. При валідному маку віддає акцес-акцепт, при невалідному акцес-режект.

Правда ніфіга не розумію яка практична цінність в авторизації юзера по login+password+mac. Нє, ну ясно - додаткове секуріті і всьо таке.

Але блін... зручність такого рішення для фінального юзера це ж жесть. Тобто поверху в кращому разі UHW, додається ще "ой у мене 691 помилка" і інший букет чисто РРР проблем.

Раз вже знаєте маки юзерів - не простіше роздати пачкою їм айпішок і забути?

Ссылка на сообщение
Поделиться на других сайтах

 

 

Правда ніфіга не розумію яка практична цінність в авторизації юзера по login+password+mac. Нє, ну ясно - додаткове секуріті і всьо таке. Але блін... зручність такого рішення для фінального юзера це ж жесть. Тобто поверху в кращому разі UHW, додається ще "ой у мене 691 помилка" і інший букет чисто РРР проблем. Раз вже знаєте маки юзерів - не простіше роздати пачкою їм айпішок і забути?
 

 

Не простіше. Є одна організація - в них через іншого прова л2 канал до внутрішніх ресурсів.

Їм простіше підіймати тунель і вікдючати його, коли інтернет не потрібен.

Для звичайних юзерів є дхцп, і там усе простіше.

Ссылка на сообщение
Поделиться на других сайтах

 

Ще хотілось би акаунтінг щоб нормально працював, а то без нетфлоу нема статистики.

Экспортом netflow занимался mpd5. И последний замечательно справлялся с этой задачей. А вот что там с accel-ppp и Linux ISG не знаю... 

 

там без нетфлов

Radius Accounting Start Stop ALive

Ссылка на сообщение
Поделиться на других сайтах

 

 

А вот что там с accel-ppp и Linux ISG не знаю...

Сколько помню у них там есть свой ядерный модуль експорта - типа ng_flow. Вроде ок.

 

В лінуксі є модуль ядрений до фаєрвола який нетфлов експортує. Працює непогано.

Відредаговано Lynx100
Ссылка на сообщение
Поделиться на других сайтах

 

 

Не простіше. Є одна організація - в них через іншого прова л2 канал до внутрішніх ресурсів. Їм простіше підіймати тунель і вікдючати його, коли інтернет не потрібен.

как всьо сложно <_<

Ссылка на сообщение
Поделиться на других сайтах

 

Не простіше. Є одна організація - в них через іншого прова л2 канал до внутрішніх ресурсів. Їм простіше підіймати тунель і вікдючати його, коли інтернет не потрібен.

как всьо сложно <_<

 

Я тут ніпрічьом, шо сказали зробити - те зробив. Вони просто нахабні, сидять під чужими логінами і грошенята не платять, тому потрібні такі збочення  :mellow:

Ссылка на сообщение
Поделиться на других сайтах

 

 

Не простіше. Є одна організація - в них через іншого прова л2 канал до внутрішніх ресурсів. Їм простіше підіймати тунель і вікдючати його, коли інтернет не потрібен.

как всьо сложно <_<

 

Я тут ніпрічьом, шо сказали зробити - те зробив. Вони просто нахабні, сидять під чужими логінами і грошенята не платять, тому потрібні такі збочення  :mellow:

 

В котрий раз переконуюсь, що мені пора заминати з розвитком біллінгу та починати барижити монтіровками. :D

Ссылка на сообщение
Поделиться на других сайтах

 

 

 

Не простіше. Є одна організація - в них через іншого прова л2 канал до внутрішніх ресурсів. Їм простіше підіймати тунель і вікдючати його, коли інтернет не потрібен.

как всьо сложно <_<

 

Я тут ніпрічьом, шо сказали зробити - те зробив. Вони просто нахабні, сидять під чужими логінами і грошенята не платять, тому потрібні такі збочення  :mellow:

 

В котрий раз переконуюсь, що мені пора заминати з розвитком біллінгу та починати барижити монтіровками. :D

 

Непогана думка, мені з десяток треба, на конкурентів і "особливих" юзерів ;)

Ссылка на сообщение
Поделиться на других сайтах

Не добре він з цим справляється.

В мене була велика тема щодо глюків системи. Після відключення нетфлоу на мпд - в НАСа пішли аптайми нормальні, а не неділья, або ще гірше 2-5 днів. 

Может мне еще и о вашем аптайме переживать? Нет уж, разбирайтесь в чем проблема сами: моя задача связать биллинг, мпд и радиус, а все косяки, которые вылезают в процессе работы этой связки - ваши проблемы...

Відредаговано jcomm
Ссылка на сообщение
Поделиться на других сайтах

 

 

Может мне еще и о вашем аптайме переживать? Нет уж, разбирайтесь в чем проблема сами: моя задача связать биллинг, мпд и радиус, а все косяки, которые вылезают в процессе работы этой связки - ваши проблемы...
 

Шановний, я вам дуже вдячний за вирішення мого питання з приводу calling-station-id, і ніяк не хочу жалітися, просто кажу, що нетфлоу в мпд не так добре працює, як того хотілося б.

В мене все вирішилося відключенням нетфлоу у мпд, та хай йому грець, мені не критично :)

Ссылка на сообщение
Поделиться на других сайтах

Дєвачкі - нє сорьтєсь ;)

 

Можу навіть з великою долею ймовірності навангувати, що ваша проблема падучого mpd повязана насправді з flowtable в ядрі.

Ссылка на сообщение
Поделиться на других сайтах
  • 2 months later...

Так, значится обновив убіллінг, до 0.6.1, там же змінилася логіка роботи радіуса, чому я радий.

Тілько вилізла одна неприємна річ, замість 691 помилки, він пропонує ще 2 рази ввести правильний логін і пароль і якщо данні знову не вірні - то віддає 619 помилку.

Можно якось виправити?

Бо радіус колупав, але не знайшов як ото відбувається.

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

  • Схожий контент

    • Від camchatix
      Добрий день,
      створили запасний NAS із зайвою хромосомою, все працює але коли треба вбити сесію користувача - то у списку NAS серверів лише один (той що основний)
      переназначити швидкість теж не можу
      я так розумію пакети CoA Disconnect, CoA connect, PoD - ідуть на IP адресу старого NAS ?
    • Від grach_witch_cheese
      Вітаю, колеги!
      Маю наступну схему:
      DHCP-сервер: Accel-PPP (IPoE) DHCP-Relay: MikroTik RADIUS: Запущений безпосередньо на сервері uBilling Зараз авторизація абонентів здійснюється за MAC-адресою, але планується перехід на авторизацію через Option 82.
      У документації uBilling наведені приклади конфігурацій, коли DHCP-сервер працює локально (на самому uBilling) і містить відповідні шаблони для обробки Option 82.
      Однак немає чіткої інформації про використання Option 82 при віддаленому DHCP-сервері, зокрема, коли Accel-PPP використовується як DHCP-сервер у режимі remote та налаштований через Купаген.
      Питання:
      Чи можливо використовувати Accel-PPP як віддалений DHCP-сервер з авторизацією через Option 82? Якщо так, то де відбувається парсинг значень Remote-ID і Circuit-ID? Де в цьому випадку мають зберігатися шаблони для Option 82? Буду вдячний за роз'яснення або посилання на відповідні приклади.
    • Від nightfly
      Ubilling 1.5.2 rev 9302 Book of Endings
       
      Зміни в структурі БД. alter.ini: нова опція FASTPROFITCALC_ENABLED, що вмикає швидкий підрахунок прибутку. alter.ini: нова необов'язкова опція KARMA_IN_PROFILE що вмикає показ карми в профілі користувача. alter.ini: нова опція SWITCHES_AUTH_ENABLED, що вмикає довідник даних авторизації пристроїв. alter.ini: нова опція PON_SCRIPTS_ENABLED, що вмикає підтримку скриптів OLT в ПОНізаторі. alter.ini: нова опція PON_ONU_FDB_SELFFILTER, що вмикає фільтр MAC-ів при відображенні FDB за ONU. alter.ini: нова опція USERBYIP_ENABLED, що вмикає виклик userbyip в RemoteAPI. alter.ini: пачка нових опцій PB_FASTURL_*, що керують поведінкою модулю відсилання коротких посилань на оплату. Модуль PONizer: виправлена помилка зникнення PON інтерфейсів при опиті BDCOM GP3600 Модуль “Профіль користувача”: для опису плагінів профілю та оверлеїв на кшталт “чорної магії” тепер опційно можливо вказувати link_target. Модуль “Панель задач”: для опису елементів панелі задач, тепер опційно можна вказувати LINK_TARGET. Модуль Записи телефонних розмов: вирішено проблеми швидкодії, при перегляді списку записів дзвінків. Модуль “Записи телефонних розмов”: більше не призводить до вичерпання пам'яті процесу, при перегляді великих архівів дзвінків. Модуль “Записи телефонних розмов”: новий аудіо-плеєр для прослуховування записів з візуалізацією аудіо-хвилі. Модуль “Пошук оплат”: реалізовано можливість швиденького підрахунку прибутку по обраних чекбоксами платежах. Модуль УКВ: реалізовано можливість швиденького підрахунку прибутку по обраних чекбоксами платежах. Модулі Мапа обладнання та користувачів: трішки вичищено код. Ліпше не стало. Модуль “Мапа будинків”: поле пошуку при розташуванні будинку, тепер попередньо заповнено локацією, при переході за посиланням “розташувати на мапі”. Модуль “Панель задач”: опція TB_QUICKSEARCH_INLINE змінила свою поведінку, та може тепер приймати значення 0|1|2. Модуль “Звіт по трафіку”: виправлено проблему відображення графіків OphanimFlow для NAS на роздільних здатностях менше ніж FullHD. Кабінет користувача: в модулі “Відеоспостереження” відображення попереднього перегляду каналів користувача, стало трішки притомнішим. Сховище зображень: трішки покращено поведінку форми завантаження. RemoteAPI: новий виклик onusigcompressor, що радикально стискає розпухаючі дані історії сигналів ONU. RemoteAPI: новий виклик pbxmonrefill, що оновлює кеш записів телефонних розмов. RemoteAPI: новий виклик userbyip, що повертає дані про користувача за його IP. OpenPayz: в бекенді та фронтенді platon виправлено проблему диких заокруглень, при вказанні зовнішньої комісії.  
      Повний чейнджлог
      Оновлена демка
       

    • Від ppv
      Після оновлення до 1.5.1 не відображаються сигнали на
      OLT BDCOM P3310B (Device version10.1.0B)

      та
      P3608-2TE (Firmware Version10.1.0E). 

      3310C та P3608B ніяких проблем немає, знімає все добре. 
      З GPON3600-8 все зрозуміло будуть виправлення в Ubilling: 1.5.2.
       
      Може в когось було щось подібне? Хочу знати куди копати.
    • Від mac
      Глюк в тому, що один (так - тільки один) mac адрес onu існує в білінгу у вигляді строки. Це трохи заважає.
      olt - bdcom gepon.
      Наскільки зрозумів, це виключно проблема реалізації snmpwalk у freebsd, де snmpwalk може на свій розсуд віддати mac адресу не як hex-string, а як звичайний string.
      Можливо snmpwalk тригериться на якомусь символі, мені невідомо.
       
      # tcpdump -vv -i em0 udp port 161 and host olt and host ub | grep "3320.101.10.4.1.1.241 ... olt.snmp > ub.47940: [udp sum ok] { SNMPv2c C="*****" { GetResponse(44) R=93278354 E:3320.101.10.4.1.1.241="8LO"W*" } } ub.47940 > olt.snmp: [udp sum ok] { SNMPv2c C="*****" { GetNextRequest(34) R=93278355 E:3320.101.10.4.1.1.241 } } snmpwalk -c***** -v2c -t5 olt .1.3.6.1.4.1.3320.101.10.4.1.1 SNMPv2-SMI::enterprises.3320.101.10.4.1.1.241 = STRING: "8LO\"W*" snmpwalk -Ox -c***** -v2c -t5 olt .1.3.6.1.4.1.3320.101.10.4.1.1 SNMPv2-SMI::enterprises.3320.101.10.4.1.1.241 = Hex-STRING: 38 4C 4F 22 57 2A  
      Це стосується таких параметрів у snmp конфізі bdcom
       
      [signal] MACINDEX=".1.3.6.1.4.1.3320.101.10.4.1.1" [misc] ONUINDEX=".1.3.6.1.4.1.3320.101.11.1.1.3"  
      За для усунення глюку спробував трошки змінити код і завдати тип snmp параметру явно у ./api/libs/api.ponbdcom.php у function collect()
      Це працює. Мабуть станеться у нагоді:
       
      # diff api.ponbdcom.php{.new,.bak} 37c37 < $onuIndex = $this->snmp->walk('-Ox ' . $oltIp . ':' . self::SNMPPORT, $oltCommunity, $onuIndexOid, self::SNMPCACHE); --- > $onuIndex = $this->snmp->walk($oltIp . ':' . self::SNMPPORT, $oltCommunity, $onuIndexOid, self::SNMPCACHE); 91c91 < $macIndex = $this->snmp->walk('-Ox ' . $oltIp . ':' . self::SNMPPORT, $oltCommunity, $macIndexOID, self::SNMPCACHE); --- > $macIndex = $this->snmp->walk($oltIp . ':' . self::SNMPPORT, $oltCommunity, $macIndexOID, self::SNMPCACHE);  
      P.S. Створив тему, а зараз міркую: а може це глюк у ПЗ olt. Оновлю фірмваре olt та перевірю...
       

×
×
  • Створити нове...