BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 26 апр 2024, 16:44

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 16 ] 
Автор Сообщение
 Заголовок сообщения: Реализация скриптового шлюза!
СообщениеДобавлено: 04 янв 2009, 02:41 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 08 мар 2007, 20:44
Сообщения: 1570
Откуда: Челябинск
Карма: 18
Как и обещал выкладываю статью по настройке всего этого хозяйства!
http://wiki.bgbilling.ru/index.php/%D0% ... 0%B7%D0%B0

Обсуждать можно тут.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 05 янв 2009, 00:53 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
критику позволите? если да, то:

Код:
username LOGIN privilege 15 secret PASS

не особо работоспособно без указания:
Код:
aaa new-model
aaa authentication login default local-case
aaa authorization exec default local



Код:
route-map ACCESS-CLIENTS permit 1
 match ip address 100
 set interface Loopback0 Null0

а где конфигурация лупбека?


max писал(а):
Так как последним правилом в данном листе стоит permit ip any any

на самом деле в конце всегда стоит:
Код:
access-list 100 deny ip any any

просто оно не явное, но идеологически об этом указать, IMHO, стоит ;)


указать:
Код:
<source lang="java">
</source>

и
Код:
<source lang="perl">
</source>

в нужных местах думаю стоит, дабы вики читабельнее отображало синтаксис ;)


типизация a-la:
Код:
int pow

ЕМНИМС, в биншеле не нужна ...

впрочем это так, даже не критика, а мелкие придирки, в остальном же - ОГРОМНОЕ Вам СПАСИБО! есть интересные моменты, которые я, хотя и не использую ipn, для себя почерпнул :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 янв 2009, 01:51 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 08 мар 2007, 20:44
Сообщения: 1570
Откуда: Челябинск
Карма: 18
такс по порядку
Цитата:
aaa new-model
aaa authentication login default local-case
aaa authorization exec default local

согласен тока на aaa new-model про это действительно забыл, других комманд у себя в конфиге не наблюдаю ;)
спасибо, конфигурацию лупбека забубеню щас в статью.

Цитата:
access-list 100 deny ip any any

просто оно не явное, но идеологически об этом указать, IMHO, стоит Wink
НЕТ там как раз стоит permit ip any any, приведу текст из статьи сюда:
Код:
Небольшие пояснения к логике работы цыски:
Существует роут-мап ACCESS-CLIENTS который вешается на IP интерфейс клиента (в примере vlan11), в данном роут-мапе сказано что любой трафик который попадает в акцесс-лист 100 стоит уничтожать (кстати тут можно прописать редирект на страницу, где сказано что доступ отсутствует из-за блокировки - пока не реализовано).
В акцесс-листе 100 мы прописываем всех кому нужен инет как DENY (этим как раз и занимается мой скрипт), тем самым их трафик не попадёт в роут-мап ACCESS-CLIENTS.
Так как последним правилом в данном листе стоит permit ip any any, то любой тарфик который не DENY будет уничтожен.
Необходимо обязательно в ручную прописать все ваши сервера ДНС и хосты которые должны быть доступны клиентам до подключения как DENY!!!

Цитата:
указать:
Код:
<source lang="java">
</source>

и
Код:
<source lang="perl">
</source>

в нужных местах думаю стоит, дабы вики читабельнее отображало синтаксис Wink

учту спасибо
Цитата:
типизация a-la:
Код:
int pow

ЕМНИМС, в биншеле не нужна ...
я сам в яве не шарю, этот скрипт писал разработчик, поэтому промолчу! :)
Цитата:
остальном же - ОГРОМНОЕ Вам СПАСИБО! есть интересные моменты, которые я, хотя и не использую ipn, для себя почерпнул Smile
Пожалуйста, приятно слышать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 янв 2009, 15:19 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
max писал(а):
Цитата:
access-list 100 deny ip any anyпросто оно не явное, но идеологически об этом указать, IMHO, стоит Wink
НЕТ там как раз стоит permit ip any any, приведу текст из статьи сюда:
Код:
Небольшие пояснения к логике работы цыски:
Существует роут-мап ACCESS-CLIENTS который вешается на IP интерфейс клиента (в примере vlan11), в данном роут-мапе сказано что любой трафик который попадает в акцесс-лист 100 стоит уничтожать (кстати тут можно прописать редирект на страницу, где сказано что доступ отсутствует из-за блокировки - пока не реализовано).
В акцесс-листе 100 мы прописываем всех кому нужен инет как DENY (этим как раз и занимается мой скрипт), тем самым их трафик не попадёт в роут-мап ACCESS-CLIENTS.
Так как последним правилом в данном листе стоит permit ip any any, то любой тарфик который не DENY будет уничтожен.
Необходимо обязательно в ручную прописать все ваши сервера ДНС и хосты которые должны быть доступны клиентам до подключения как DENY!!!

если позволите, я тоже приведу одну цитату, только из мануала:
Cisco писал(а):
The Implied "Deny All Traffic" Criteria Statement
At the end of every access list is an implied "deny all traffic" criteria statement. Therefore, if a packet does not match any of your criteria statements, the packet will be blocked.

т.е. в конце каждого ACL, как я и писал существует не явное deny ;)
просто я думаю что об этом стоит упомянуть, дабы внести ясность в процесс работы, т.к. очень многие будут тупо копи-пастить Ваши скрипты, а потом кричать "не работает!"
кстати, а разве без роутмапа никак? роутмапы все же более ресурсоемкая процедура нежели использование ACL (в каталистах они вообще хардварные, ЕМНИМС) либо исправление таблиц роутинга ...

Цитата:
Цитата:
типизация a-la:
Код:
int pow
ЕМНИМС, в биншеле не нужна ...
я сам в яве не шарю, этот скрипт писал разработчик, поэтому промолчу! :)

об этом они сами где-то тут, на форуме писали ...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 янв 2009, 15:34 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 08 мар 2007, 20:44
Сообщения: 1570
Откуда: Челябинск
Карма: 18
snark писал(а):
max писал(а):
Цитата:
access-list 100 deny ip any anyпросто оно не явное, но идеологически об этом указать, IMHO, стоит Wink
НЕТ там как раз стоит permit ip any any, приведу текст из статьи сюда:
Код:
Небольшие пояснения к логике работы цыски:
Существует роут-мап ACCESS-CLIENTS который вешается на IP интерфейс клиента (в примере vlan11), в данном роут-мапе сказано что любой трафик который попадает в акцесс-лист 100 стоит уничтожать (кстати тут можно прописать редирект на страницу, где сказано что доступ отсутствует из-за блокировки - пока не реализовано).
В акцесс-листе 100 мы прописываем всех кому нужен инет как DENY (этим как раз и занимается мой скрипт), тем самым их трафик не попадёт в роут-мап ACCESS-CLIENTS.
Так как последним правилом в данном листе стоит permit ip any any, то любой тарфик который не DENY будет уничтожен.
Необходимо обязательно в ручную прописать все ваши сервера ДНС и хосты которые должны быть доступны клиентам до подключения как DENY!!!

если позволите, я тоже приведу одну цитату, только из мануала:
Cisco писал(а):
The Implied "Deny All Traffic" Criteria Statement
At the end of every access list is an implied "deny all traffic" criteria statement. Therefore, if a packet does not match any of your criteria statements, the packet will be blocked.

т.е. в конце каждого ACL, как я и писал существует не явное deny ;)
просто я думаю что об этом стоит упомянуть, дабы внести ясность в процесс работы, т.к. очень многие будут тупо копи-пастить Ваши скрипты, а потом кричать "не работает!"
кстати, а разве без роутмапа никак? роутмапы все же более ресурсоемкая процедура нежели использование ACL (в каталистах они вообще хардварные, ЕМНИМС) либо исправление таблиц роутинга ...

Цитата:
Цитата:
типизация a-la:
Код:
int pow
ЕМНИМС, в биншеле не нужна ...
я сам в яве не шарю, этот скрипт писал разработчик, поэтому промолчу! :)

об этом они сами где-то тут, на форуме писали ...

хм, про неявное не знал если честно, однако перед ним же стоит явное permit!
на счёт ресурсоёмкости не знаю, у меня нагрузка на свитч гдето процентов 10 это при полных двух таблицах бгп...
а на счёт тупого копирования... ну я брал с живого, думаю должно работать....


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 янв 2009, 15:57 
Не в сети
Клиент

Зарегистрирован: 12 фев 2008, 18:10
Сообщения: 3951
Карма: 249
max писал(а):
хм, про неявное не знал если честно, однако перед ним же стоит явное permit!

вот если этого permit случайно не окажется - народ будет доолго голову ломать почему же трафик не ходит :)

max писал(а):
на счёт ресурсоёмкости не знаю, у меня нагрузка на свитч гдето процентов 10 это при полных двух таблицах бгп...

2 полных, не кастированных, фулвью влезли в каталиста?

max писал(а):
а на счёт тупого копирования... ну я брал с живого, думаю должно работать....

почему-то люди предпочитают просто копипастить не вдаваясь в подробности, а потом выясняется что у них не работает по разным причинам :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 янв 2009, 19:20 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 08 мар 2007, 20:44
Сообщения: 1570
Откуда: Челябинск
Карма: 18
snark писал(а):
max писал(а):
хм, про неявное не знал если честно, однако перед ним же стоит явное permit!

вот если этого permit случайно не окажется - народ будет доолго голову ломать почему же трафик не ходит :)

max писал(а):
на счёт ресурсоёмкости не знаю, у меня нагрузка на свитч гдето процентов 10 это при полных двух таблицах бгп...

2 полных, не кастированных, фулвью влезли в каталиста?

max писал(а):
а на счёт тупого копирования... ну я брал с живого, думаю должно работать....

почему-то люди предпочитают просто копипастить не вдаваясь в подробности, а потом выясняется что у них не работает по разным причинам :(

два обрезаных по /24, влезает потому что памяти на SUP-2 512 МБ....
в остальном согласен


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 06 янв 2009, 19:31 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 08 мар 2007, 20:44
Сообщения: 1570
Откуда: Челябинск
Карма: 18
поправил статью, там закралось пару незаметных ошибок, и поправил немного скрипты.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 11 янв 2009, 15:39 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
snark писал(а):

типизация a-la:
Код:
int pow

ЕМНИМС, в биншеле не нужна ...



Ну вообще да . Я тестировал этот кусок как обычный явовский код и типизацию не убрал . Кстати лучше ее убирать, т.к beanshell иногда не работает с типизацией, он может обнулить перемнную в середине кода, если она объявлена .Примчем один и тот же сркрипт при этом будет работать на одной машине, но не будет работать на другой, вот такая вот странная логика


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 13 янв 2009, 23:38 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 08 мар 2007, 20:44
Сообщения: 1570
Откуда: Челябинск
Карма: 18
stark писал(а):
snark писал(а):

типизация a-la:
Код:
int pow

ЕМНИМС, в биншеле не нужна ...



Ну вообще да . Я тестировал этот кусок как обычный явовский код и типизацию не убрал . Кстати лучше ее убирать, т.к beanshell иногда не работает с типизацией, он может обнулить перемнную в середине кода, если она объявлена .Примчем один и тот же сркрипт при этом будет работать на одной машине, но не будет работать на другой, вот такая вот странная логика

сами поправите скрипт в статье? а то я нифига не шарю в яве!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 14 янв 2009, 13:26 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
max писал(а):
stark писал(а):
snark писал(а):

типизация a-la:
Код:
int pow

ЕМНИМС, в биншеле не нужна ...



Ну вообще да . Я тестировал этот кусок как обычный явовский код и типизацию не убрал . Кстати лучше ее убирать, т.к beanshell иногда не работает с типизацией, он может обнулить перемнную в середине кода, если она объявлена .Примчем один и тот же сркрипт при этом будет работать на одной машине, но не будет работать на другой, вот такая вот странная логика

сами поправите скрипт в статье? а то я нифига не шарю в яве!


исправил


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Версия 4.6
СообщениеДобавлено: 10 апр 2009, 10:06 
Не в сети

Зарегистрирован: 06 июн 2008, 11:48
Сообщения: 28
Откуда: Магадан
Карма: 0
На версии 4,6 будет корректно работать...? Или необходимы изминения и какие?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Установил на версию 4,6
СообщениеДобавлено: 10 апр 2009, 10:46 
Не в сети

Зарегистрирован: 06 июн 2008, 11:48
Сообщения: 28
Откуда: Магадан
Карма: 0
scheduler 04-10/16:40:00 ERROR [Thread-82] ManadGateWorker - Gate unaccesible - Script-perl
scheduler 04-10/16:40:00 ERROR [Thread-82] ManadGateWorker - -------------------------
scheduler 04-10/16:40:00 ERROR [Thread-82] ManadGateWorker - error: Typed variable declaration : Method Invocation exec : at Line: 41 : in file: inline evaluation of: ``import bitel.billing.server.ipn.bean.AddressRange; import bitel.billing.server. . . . '' : .exec ( arguments )

Target exception: java.io.IOException: Cannot run program "/usr/local/BGBillingServer/ACC": java.io.IOException: error=13, Permission denied

java.lang.RuntimeException: Typed variable declaration : Method Invocation exec : at Line: 41 : in file: inline evaluation of: ``import bitel.billing.server.ipn.bean.AddressRange; import bitel.billing.server. . . . '' : .exec ( arguments )

Target exception: java.io.IOException: Cannot run program "/usr/local/BGBillingServer/ACC": java.io.IOException: error=13, Permission denied

at bitel.billing.server.ipn.GateWorker$Scripter.runScriptSync(GateWorker.java:227)
at bitel.billing.server.ipn.GateWorker.runSync(GateWorker.java:106)
at bitel.billing.server.ipn.GateWorker.run(GateWorker.java:85)
Caused by: Typed variable declaration : Method Invocation exec : at Line: 41 : in file: inline evaluation of: ``import bitel.billing.server.ipn.bean.AddressRange; import bitel.billing.server. . . . '' : .exec ( arguments )

Target exception: java.io.IOException: Cannot run program "/usr/local/BGBillingServer/ACC": java.io.IOException: error=13, Permission denied

at bsh.BSHPrimarySuffix.doName(Unknown Source)
at bsh.BSHPrimarySuffix.doSuffix(Unknown Source)
at bsh.BSHPrimaryExpression.eval(Unknown Source)
at bsh.BSHPrimaryExpression.eval(Unknown Source)
at bsh.BSHVariableDeclarator.eval(Unknown Source)
at bsh.BSHTypedVariableDeclaration.eval(Unknown Source)
at bsh.BSHBlock.evalBlock(Unknown Source)
at bsh.BSHBlock.eval(Unknown Source)
at bsh.BSHBlock.eval(Unknown Source)
at bsh.BSHEnhancedForStatement.eval(Unknown Source)
at bsh.BSHBlock.evalBlock(Unknown Source)
at bsh.BSHBlock.eval(Unknown Source)
at bsh.BSHBlock.eval(Unknown Source)
at bsh.BSHEnhancedForStatement.eval(Unknown Source)
at bsh.BSHBlock.evalBlock(Unknown Source)
at bsh.BSHBlock.eval(Unknown Source)
at bsh.BshMethod.invokeImpl(Unknown Source)
at bsh.BshMethod.invoke(Unknown Source)
at bsh.BshMethod.invoke(Unknown Source)
at bitel.billing.server.ipn.GateWorker$Scripter.invokeMethod(GateWorker.java:253)
at bitel.billing.server.ipn.GateWorker$Scripter.runScriptSync(GateWorker.java:214)
... 2 more
scheduler 04-10/16:45:00 ERROR [Thread-86] ManadGateWorker - Eval error2: Typed variable declaration : Method Invocation exec


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 10 апр 2009, 13:28 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Цитата:
java.io.IOException: Cannot run program "/usr/local/BGBillingServer/ACC": java.io.IOException: error=13, Permission denied

У процесса биллинга нет прав чтобы запустить /usr/local/BGBillingServer/ACC


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 13 авг 2009, 20:59 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
У данного решения есть серьезная проблемма.
Если клиенты закрыть ип адрес и выдать другой блок то в акксесс листе добавляются все блоки адресо которые присутствуют у клиента, и не важно есть ли у них закрытый период.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 15 авг 2009, 09:22 
Не в сети

Зарегистрирован: 19 дек 2008, 17:46
Сообщения: 749
Карма: 10
Я был не прав все отрабатывает как нужно. Только прежде чем что-либо добавлять в договор модуля ipn или изменять - нужно вначале удалить шлюз чтобы правила на циске отработали


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 16 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.451s | 50 Queries | GZIP : On ]