Перейти до

Hertan

Маглы
  • Всього повідомлень

    10
  • Приєднався

  • Останній візит

Сообщения додав Hertan

  1. По долбанутой медленной аутентификации FreeRADIUS с длительными запросами sql и загрузкой всех процов Майскулем(cм чуть выше)

    Так как у нас чисто пппое разрешили правкой вьюх, если понадобиться ipoe надо будет делать отдельно вьюхи для ipoe и писать  скрипт для радиуса шоб он свитчил между ними. вьюхи прикладываю, загрузка проца 4%  вмето 400%. 

    по все видимости для работы из коробки  с радиус авторизацией убилс необходимо ставить на x3755 M3 (7164)  с 4х AMD Opteron Processor Model 6380 16C 2.5Ghz 

    radius_ckeck.txt

    radius_reply.txt

     

     

    Осталось разобраться почему старгайзер  периодически  то 150.ХХХХХ рублей  вместо 650 снимет, 311.ххххх вместо 850 то наоборот на чуть больше по тарифу снимет

    stargargazer используется только для снятия денег и запуска скриптов On*,удаления пользоваетелей, запуска удаленных скриптов или чего то еще?

  2. Добрый день, беда с ubillingom, вот периодически надо оборудование перезагрузить.

    настраивал все вот прям по статье, на фряху.

    абонов не овердофига, скажем 800.

    когда они одновременно пытаются подключиться в радиус логе начинают появляться такие надписи

    Error: Discarding duplicate request from client,

    Или вообще  массово пишет что логин инвалид, 

    или говорит что логин Ок но клиенту, уже неважно он переподключается.

    вообщем пол часа расхлебывается, конфиг 4 ядра 4 гига

    собрал mysqlslow log

    # User@Host: root[root] @ localhost []
    # Query_time: 2.569102  Lock_time: 2.026974 Rows_sent: 10  Rows_examined: 16523
    SET timestamp=1433135362;
    SELECT (@cnt := @cnt + 1) AS `id`, `UserName`, `Attribute`, `Value`, `op`           FROM `radius_check`           CROSS JOIN (SELECT @cnt := 0) AS `dummy`           WHERE `UserName` = 'e10161$
    # User@Host: root[root] @ localhost []
    # Query_time: 1.096175  Lock_time: 0.541870 Rows_sent: 10  Rows_examined: 16523
    SET timestamp=1433135362;
    SELECT (@cnt := @cnt + 1) AS `id`, `UserName`, `Attribute`, `Value`, `op`  FROM `radius_check`   CROSS JOIN (SELECT @cnt := 0) AS `dummy`           WHERE `UserName` = 'e10620'
    # User@Host: root[root] @ localhost []
    # Query_time: 1.102362  Lock_time: 0.542214 Rows_sent: 10  Rows_examined: 16523
    SET timestamp=1433135362;
    SELECT (@cnt := @cnt + 1) AS `id`, `UserName`, `Attribute`, `Value`, `op`  FROM `radius_check`  CROSS JOIN (SELECT @cnt := 0) AS `dummy`           WHERE `UserName` = 'e1016'
    # User@Host: root[root] @ localhost []
    # Query_time: 2.593109  Lock_time: 2.025207 Rows_sent: 10  Rows_examined: 16523
    SET timestamp=1433135362;
    SELECT (@cnt := @cnt + 1) AS `id`, `UserName`, `Attribute`, `Value`, `op`   FROM `radius_check` CROSS JOIN (SELECT @cnt := 0) AS `dummy`           WHERE `UserName` = 'e10172'
    # Time: 150601 10:09:23
    

    Это так из коробки задумано или куда то посмотреть можно?

  3. так как топик проиндексирован гуглом я опишусь

    Добавил атрибут в убиллинге 

    reply Filter-Id = {user[state]}

     

    атрибут Filter-id  описан в RFC 2865 и присутствует во втором радиусе, кушается микротиком.

    {user[state]} возвращает 4 статуса: 1) если включен = ON-LINE, 2) если выключен администратором DOWN, 3)если заморожен PASSIVE 4) Если отключен биллингом то OFF-LINE

     

    accel я использую в связке со штатным линуксовым tc.

    создаю таблицу BLOCKED /usr/sbin/ipset -N BLOCKED iphash

    тем, самы, получаю возможность в Iptables манипулировать данной таблицей

    в скрипт запуска где я ограничиваю скорости /etc/ppp/ip-ip.local дописываю что то наподобие такого.

    варнинг! синтаксис для баша для некоторых махровых версий sh не подойдет.

     

     

    IP=`/usr/bin/awk '/Framed-IP-Address/ {print $2}' /var/run/radattr.$1`
    STATE=`/usr/bin/awk '/Filter-Id/ {print $2}' /var/run/radattr.$1`
    if [[ "$STATE" == "PASSIVE" ||  "$STATE" == "DOWN"  || "$STATE" == "OFF-LINE" ]] ;
    then /usr/sbin/ipset -A BLOCKED $IP
    else
    /usr/sbin/ipset -D BLOCKED $IP
    fi
    Далее как будет время, попробую настроить CoA/PoD функционал и если получится дополню ответ
  4. Да документацию я смотрел вот именно что там ничего не описано про реализацию схемы:

    Пользователи которые проплатили и используют интернет имеют  адреса подсети 10.0.0.0/8 или белые и пользуются интернетом

    Пользователи которые не проплатили получают адрес  вида 172.16.Х.Х и не получают доступ ко всем интернетам, а только к определенным адресам

    И в файрволе я пишу что то

    iptables -t nat -A POSTROUTING -s 10.0.0.0 -o ${ВНЕШНИЙ_ИНТЕРФЕЙС} -j MASQUERADE

    iptables -t nat -A POSTROUTING -s 172.16.0.0/16 -d ${АДРЕС ЛИЧНОГО КАБИНЕТА} -o ${ВНЕШНИЙ_ИНТЕРФЕЙС -j MASQUERADE

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

  5. Всяко у вас авторизация по радиусу? Не используете "Блокирование доступа должникам, отключенцам и отморозками"?

    Да по радиусу, Нет, не использую, как раз таки хотелось что бы они проходили авторизацию, но зайти могли только в личный кабинет для доступа к обещанному платежу и на киви. Запрещение авторизации не вариант.

  6. Добрый день, чес слово не хотел прибегать к помощи коллективного разума.

    Пытаюсь внедрить Ubilling для имеющейся сети, есть несколько NAS - accel, киска и тд.  Интернет предоставляется по PPPoE

    Читал документацию но не могу найти, как в случае с accel при блокировке пользователя, продолжать выдавать доступ к личному кабинету, qiwi и прочим ресурсам для оплаты.

    Можно ли настроить биллинг таким образом шоб для отключенных абонентов он выдавал айпи из какого то определенного пула к примеру 172.16....?

    И какие есть еще варианты?

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