Перейти к содержимому

BECHA

Маглы
  • Публикации

    21
  • Зарегистрирован

  • Посещение

Все публикации пользователя BECHA

  1. BECHA

    Мысли про..

    мне кажется что субд старгейзеру не нужна - без нее он практически единственный биллинг под *nix способный работать на слабой машинке.
  2. практические испытания показали что точность с cap_ether все же не идеальна. к искажению показаний счетчиков приводит большие объемы трафика, прокачиваемого через маршрутизатор. установка же cap_ipq требует пеерсборки ядра, что проблематично на мелкой машинке с мелким винтом/флешкой. Может просто зарезать скорость работы с локалкой?
  3. rtrt именно так. тоесть качает, пользователь качает (ну или серфит) - вдруг хоп - инет как ножом отрезало, а иконка в трее как была зеленая, так зеленой и остается. ну или моргает в желтый если порог по деньгам выставлен был. если нулевой баланс не увидит - будет думать почему все пропало.
  4. меня немного поразило поведение авторизатора при окончании денег на счету пользователя. он не выводит никаких оповещений, что деньги кончились и доступ заблокирован, кроме того также без предупреждений отключается и подключается. это фича такая или я чего не так настроил?
  5. BECHA

    Скрипты onConnect/onDisconnect

    Выношу на суд общественности мои скрипты STG. Система Debian 4.0, STG 2.404.9.7. Требовалось обеспечить доступ в локальную сеть провадера и подсчет интерента, получаемого сервером с одного из компьютеров сети првайдера. Стартовый скрипт фаера: #!/bin/bash echo "IpTables Rules Loading" # diclamer int_if="eth0" int_adr="192.168.0.1" int_net="192.168.0.0/23" # ext_if="eth1" ext_adr="192.168.111.222" ext_net="192.168.111.0/24" # #$wan_if="ppp+" # lo_if="lo0" lo_adr="127.0.0.1" # cmd="/sbin/iptables -v" # # Clear old $cmd -F $cmd -t nat -F $cmd -t mangle -F $cmd -X # $cmd -A INPUT -i lo0 -j ACCEPT # # Setup polices $cmd -P INPUT DROP $cmd -P OUTPUT DROP $cmd -P FORWARD DROP # # Create additional chais $cmd -N bad_tcp_p $cmd -N allowed $cmd -N tcp_p $cmd -N udp_p $cmd -N icmp_p # ################### # bad_tcp_p chain # ################### $cmd -A bad_tcp_p -p tcp --tcp-flags SYN,ACK SYN,ACK \ -m state --state NEW -j REJECT --reject-with tcp-reset # $cmd -A bad_tcp_p -p tcp ! --syn -m state --state NEW -j LOG \ --log-prefix "New not syn:" # ################# # allowes chain # ################# $cmd -A allowed -p TCP --syn -j ACCEPT $cmd -A allowed -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT $cmd -A allowed -p TCP -j DROP # ############# # TCP rules # ############# $cmd -A tcp_p -p TCP -i $int_if -s $int_net --dport 22 -j allowed $cmd -A tcp_p -p TCP -i $ext_if -s $ext_net --dport 22 -j allowed $cmd -A tcp_p -p TCP -i $int_if -s $int_net --dport 5555 -j allowed $cmd -A tcp_p -p TCP -i $ext_if -s 192.168.111.1 --dport 5555 -j allowed # ############# # UDP rules # ############# $cmd -A udp_p -p UDP -i $int_if -s $int_net --dport 5555 -j ACCEPT $cmd -A udp_p -p UDP -i $ext_if -s $ext_net --dport 5555 -j ACCEPT # ############## # ICMP rules # ############## $cmd -A icmp_p -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT $cmd -A icmp_p -p ICMP -s 0/0 --icmp-type 0 -j ACCEPT # ############### # INPUT chain # ############### $cmd -A INPUT -p tcp -j bad_tcp_p $cmd -A INPUT -p tcp -d $ext_adr -m state --state ESTABLISHED,RELATED -j ACCEPT $cmd -A INPUT -p udp -d $ext_adr -m state --state ESTABLISHED,RELATED -j ACCEPT $cmd -A INPUT -p TCP -j tcp_p $cmd -A INPUT -p UDP -j udp_p $cmd -A INPUT -p ICMP -i $int_if -j icmp_p $cmd -A INPUT -p ICMP -i $ext_if -j icmp_p $cmd -A INPUT -d 224.0.0.0/8 -j DROP $cmd -A INPUT -p GRE -j ACCEPT # ################# # FORWARD chain # ################# $cmd -A FORWARD -p tcp -j bad_tcp_p $cmd -A FORWARD -i $int_if -s $int_net -o $ext_if -j ACCEPT $cmd -A FORWARD -m state -i eth+ -o eth+ --state ESTABLISHED,RELATED -j ACCEPT # ################ # OUTPUT chain # ################ $cmd -A OUTPUT -p TCP -j bad_tcp_p $cmd -A OUTPUT -p ALL -s $lo_adr -j ACCEPT $cmd -A OUTPUT -p ALL -s $int_adr -j ACCEPT $cmd -A OUTPUT -p ALL -s $ext_adr -j ACCEPT # # Modify TTL (speecially for greedy providers) $cmd -t mangle -A POSTROUTING -o $ext_if -j TTL --ttl-set 128 # # Masquerade. #$cmd -t nat -A POSTROUTING -o $ext_if -j MASQUERADE # # SNAT $cmd -t nat -A POSTROUTING -p ALL -s $int_net -o $ext_if -j SNAT --to-source $ext_adr # echo 1 > /proc/sys/net/ipv4/ip_forward # скрипт /etc/ppp/ip-up вызываемый при поднятии интерфейса ppp0 привожу только то, что я в него дописал. cmd="/sbin/iptables -v" # $cmd -A INPUT -p ALL -d $PPP_LOCAL -m state --state ESTABLISHED,RELATED -j ACCEPT $cmd -A INPUT -p ICMP -i $PPP_IFACE -j icmp_p $cmd -A OUTPUT -p ALL -o $PPP_IFACE -s $PPP_LOCAL -j ACCEPT $cmd -t mangle -A POSTROUTING -o $PPP_IFACE -j TTL --ttl-set 128 $cmd -t nat -A POSTROUTING -p ALL -o $PPP_IFACE -j SNAT --to-source $PPP_LOCAL аналогично ip-down cmd="/sbin/iptables -v" # $cmd -D INPUT -p ALL -d $PPP_LOCAL -m state --state ESTABLISHED,RELATED -j ACCEPT $cmd -D INPUT -p ICMP -i $PPP_IFACE -j icmp_p $cmd -D OUTPUT -p ALL -o $PPP_IFACE -s $PPP_LOCAL -j ACCEPT $cmd -t mangle -D POSTROUTING -o $PPP_IFACE -j TTL --ttl-set 128 $cmd -t nat -D POSTROUTING -p ALL -o $PPP_IFACE -j SNAT --to-source $PPP_LOCAL OnConnect cmd="/sbin/iptables -v" $cmd -A FORWARD -i eth0 -s $2 -j ACCEPT $cmd -A FORWARD -s $2 -m state --state ESTABLISHED,RELATED -j ACCEPT $cmd -A FORWARD -d $2 -m state --state ESTABLISHED,RELATED -j ACCEPT OnDisconnect cmd="/sbin/iptables -v" $cmd -D FORWARD -i eth0 -s $2 -j ACCEPT while [ $? -eq 0 ] do $cmd -D FORWARD -i eth0 -s $2 -j ACCEPT done ### $cmd -D FORWARD -s $2 -m state --state ESTABLISHED,RELATED -j ACCEPT while [ $? -eq 0 ] do $cmd -D FORWARD -s $2 -m state --state ESTABLISHED,RELATED -j ACCEPT done ### $cmd -D FORWARD -d $2 -m state --state ESTABLISHED,RELATED -j ACCEPT while [ $? -eq 0 ] do $cmd -D FORWARD -d $2 -m state --state ESTABLISHED,RELATED -j ACCEPT done # буду рад любой конструктивной критике :00:
  6. а прийти к этому пользователю с ноутом и воткнуться в его шнурочек не пробывали?
  7. так у меня в конфиге STG только ether и был. <Module cap_ether> # Модуль без параметров </Module> а чем одно от другого отличается и как переключаться между ними?
  8. собрал STG в Debian Etch - отлично работает - скорость как с pf, и считает точно!
  9. с настройкой ipfw,ipf,pf во фряхе никаких проблем никогда не было, а тут не могу NAT организовать. смотрите конфиг - eth0 - внутренняя сеть, eth1 внешняя. после выполнения нижеприведенного скрипта внешняя сеть не пингуется из внутренней. #!/bin/bash echo "IpTables Rules Loading" # diclamer int_if="eth0" int_adr="192.168.0.1" int_net="192.168.0.0/24" # ext_if="eth1" ext_adr="192.168.111.222" ext_net="192.168.111.0/24" # lo_if="lo0" lo_adr="127.0.0.1" # cmd="/sbin/iptables -v" # $cmd -F $cmd -t nat -F $cmd -t mangle -F $cmd -X # $cmd -A INPUT -i lo0 -j ACCEPT # $cmd -A INPUT -j ACCEPT $cmd -A OUTPUT -j ACCEPT $cmd -A FORWARD -j ACCEPT # Masquerade. $cmd -t nat -A POSTROUTING -o eth1 -j MASQUERADE # # NAT #$cmd -t nat -A POSTROUTING -p ALL -o $ext_if -j SNAT --to-source $ext_adr # echo 1 > /proc/sys/net/ipv4/ip_forward
  10. ясно. значит буду пытаться собрать STG в дебиане.
  11. а какой кстати linux лучше для такого применения? у меня если честно от многообразия дистрибутивов глаза разбегаются.
  12. ясно. буду проверять. правда у меня пока не получается собрать STG на Debian, ну и iptables для меня в новинку. А слабенькая машинка это AMDK6-300 128М памяти и винт 850Мб. Этим хозяйством хочется поделить инет и городскую локалку на 5 человек. На более мощной машине (P3 celeron например) с легкостью заработал бы и Abills, но его "перловые" процессы, Apache+PHP, mysql и freeradius слишком тяжелы для К6.
  13. а в линуксе с его iptables как будет на слабенькой машинке? P.S. у меня еще вопросик по iptables - как сделать два NAT ? один с внутренней локалки на локалку провайдера, а другой с внутренней локалки на ng0, который может пропадать при потери связи с провайдером. В случае с PF это решалось просто - якорными (anchor) правилами фильтра и nat.
  14. тоесть с pf перебраться на ipfw ? может улучшить ситуацию переход на "Device polling" ? P.S. с ipfw считает точнее, но сокрость прокачки упала вдвое, а нагрузка на процессор вдвое возросла что получится в таком разе на слабенькой машинке, даже думать не хочется.
  15. STG занижает показания счетчиков локального трафика! Софт: STG 2.404.9.7 FreeBSD6.3+PF Схема сети: Пользователь test с компа 192.168.0.2 пытается скачать файл с файлового сервера 192.168.111.222 После выкачивания образа CD диска размером 630Мб счетчик локального принятого трафика STG показывает 226Мб, хотя >pfctl -t users -vT show No ALTQ support in kernel ALTQ related functions disabled 192.168.0.2 Cleared: Mon Feb 25 19:41:40 2008 In/Block: [ Packets: 0 Bytes: 0 ] In/Pass: [ Packets: 150038 Bytes: 7209979 ] Out/Block: [ Packets: 0 Bytes: 0 ] Out/Pass: [ Packets: 436324 Bytes: 640075611 ] Вот настройки которые менял: minGazer~>cat /etc/stargazer/rules ALL 192.168.0.0/16 DIR1 ALL 0.0.0.0/0 DIR0 cat /etc/stargazer/stargazer.conf ....................................................... <DirNames> DirName0 = Инет DirName1 = локалка DirName2 = DirName3 = DirName4 = DirName5 = DirName6 = DirName7 = DirName8 = DirName9 = </DirNames> ....................................................... <Module cap_bpf> # Интерфейс(ы) на котором нужно производить подсчет трафика iface = rl0 ### iface = rl1 ### iface = dc0 </Module> ....................................................... Во время перекачки файла, нагрузка на процессор не более 7%. В чем может быть проблема? Если надо показать еще какие конфиги - пишите.
  16. BECHA

    Скрипты onConnect/onDisconnect

    в случае FreeBSD, PF и использования правил с ключами "keep state" следует при отключении пользователя не только удалять его адрес из таблицы, но и удалять запись с его адресом из таблицы состояний. Вот так: /sbin/pfctl -t users -T delete $IP /sbin/pfctl -k $IP
  17. BECHA

    зацикливается ./build

    Спасибо! в документации не нашел про gmake install и не сообразил сам.
  18. BECHA

    зацикливается ./build

    Спасибо! Помогло! Год был 2002! фряха 6.2 теперь новая трабла >make install "Makefile", line 29: Missing dependency operator "Makefile", line 33: Need an operator "Makefile", line 35: Missing dependency operator "Makefile", line 39: Need an operator "Makefile", line 41: Missing dependency operator "Makefile", line 45: Need an operator "Makefile", line 55: Need an operator Error expanding embedded variable.
  19. BECHA

    Vypress Chat Vs Irc

    если есть виндовый сервер, то можно поюзать commfort
  20. BECHA

    зацикливается ./build

    STG взят вот этот http://stg.dp.ua/download/server/2.404.9.7...404.9.7.src.tgz никаких патчей. просто распаковал (tar -zxvf stg-2.404.9.7.src.tgz) и выполнил ./build
  21. Минимальная инсталяция FreeBSD работаю из-под рута. Дополнительно из пакетов поставлены: bash-3.1.17 The GNU Project's Bourne Again SHell freeradius-1.1.2_1 A free RADIUS server implementation gdbm-1.8.3_2 The GNU database manager gettext-0.14.5_2 GNU gettext package gmake-3.81_1 GNU version of 'make' utility libiconv-1.9.2_2 A character set conversion library libltdl-1.5.22 System independent dlopen wrapper mysql-client-5.1.11 Multithreaded SQL database (client) mysql-server-5.1.11 Multithreaded SQL database (server) perl-5.8.8 Practical Extraction and Report Language expat скачан с sourceforge и установлен в /usr/lib на libmysqlclient.so сделана ссылка в /usr/lib после распаковки дистрибутива и выполнения ./build скрипт зацикливается на строчках: gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/dotconfpp.lib' cp dotconfpp.h mempool.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/dotconfpp.lib' gmake[1]: Leaving directory `/root/stg-2.404.9.7/stglibs' gmake -C /root/stg-2.404.9.7/projects/stargazer/../../stglibs includes gmake[1]: Entering directory `/root/stg-2.404.9.7/stglibs' gmake includes -C stg_logger.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/stg_logger.lib' cp stg_logger.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/stg_logger.lib' gmake includes -C stg_locker.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/stg_locker.lib' cp stg_locker.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/stg_locker.lib' gmake includes -C crypto.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/crypto.lib' cp ag_md5.h blowfish.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/crypto.lib' gmake includes -C common.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/common.lib' cp debug.h stg_error.h common.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/common.lib' gmake includes -C script_executer.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/script_executer.lib' cp script_executer.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/script_executer.lib' gmake includes -C conffiles.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/conffiles.lib' cp conffiles.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/conffiles.lib' gmake includes -C hostallow.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/hostallow.lib' cp hostallow.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/hostallow.lib' gmake includes -C pinger.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/pinger.lib' cp pinger.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/pinger.lib' gmake includes -C dotconfpp.lib gmake[2]: Entering directory `/root/stg-2.404.9.7/stglibs/dotconfpp.lib' cp dotconfpp.h mempool.h /root/stg-2.404.9.7/projects/stargazer/../../include gmake[2]: Leaving directory `/root/stg-2.404.9.7/stglibs/dotconfpp.lib' gmake[1]: Leaving directory `/root/stg-2.404.9.7/stglibs' как можно решить сию траблу?
×
×
  • Создать...