laffytaffy 84 Опубликовано: 2009-01-19 23:38:12 Share Опубликовано: 2009-01-19 23:38:12 Подскажите в чем бок. при авторизации не изменяются правила файервола, пайпы создаются, но весь трафик блочится, спасает только - allow all any to any в чем может быть проблема? ось FREEBSD 7.0 сервер Ссылка на сообщение Поделиться на других сайтах
egor2fsys 5 Опубліковано: 2009-01-20 05:23:00 Share Опубліковано: 2009-01-20 05:23:00 Покажи полное содержание файлов - скриптов подключения и отключения. Прописан ли интерпретатор в начало каждого файла ? Ссылка на сообщение Поделиться на других сайтах
laffytaffy 84 Опубліковано: 2009-01-20 16:25:39 Автор Share Опубліковано: 2009-01-20 16:25:39 Покажи полное содержание файлов - скриптов подключения и отключения. Прописан ли интерпретатор в начало каждого файла ? FREEBitgw1# cat OnConnect #!/usr/local/bin/php <?php $fwcmd="/sbin/ipfw "; //Путь к фаерволлу $login=$argv[1]; $ID=$argv[4]; $id1=($ID*5+10001); $id2=($ID*5+10002); $id3=($ID*5+10003); $id4=($ID*5+10004); $id5=($ID*5+10005); mysql_connect('localhost', ); //Настройки БД mysql_select_db('stargazer'); $q=mysql_query("SELECT `Note`, `IP`, `Tariff` FROM `users` WHERE `login`='$login'"); $arr=mysql_fetch_array($q, MYSQL_ASSOC); $IP=$arr[IP]; $tariffspeed=explode("-", $arr[Tariff]); $downstream="$tariffspeed[1]Kbit/s"; $upstream = $tariffspeed[2]; $upst=explode(".", $upstream); $upstream="$upst[0]Kbit/s"; shell_exec("$fwcmd pipe $id1 config bw $downstream"); shell_exec("$fwcmd pipe $id2 config bw $upstream "); shell_exec("$fwcmd add $id3 pipe $id2 all from $IP to any > /dev/null &"); shell_exec("$fwcmd add $id4 pipe $id1 all from any to $IP > /dev/null &"); ?> FREEBitgw1# cat OnDisconnect #!/usr/local/bin/php <?php $fwcmd="/sbin/ipfw "; //Путь к фаерволлу $login=$argv[1]; $ID=$argv[4]; $id1=($ID*5+10001); $id2=($ID*5+10002); $id3=($ID*5+10003); $id4=($ID*5+10004); mysql_connect('localhost', ); //Настройки БД mysql_select_db('stargazer'); $q=mysql_query("SELECT `Note`, `IP`, `Tariff` FROM `users` WHERE `login`='$login'"); $arr=mysql_fetch_array($q, MYSQL_ASSOC); $IP=$arr[IP]; shell_exec("$fwcmd pipe del $id1 >> /dev/null"); shell_exec("$fwcmd pipe del $id2 >> /dev/null"); shell_exec("$fwcmd del $id3 >> /dev/null"); shell_exec("$fwcmd del $id4 >> /dev/null"); ?> Ссылка на сообщение Поделиться на других сайтах
Колян 2 Опубліковано: 2009-01-20 16:32:57 Share Опубліковано: 2009-01-20 16:32:57 ну молодец. ану быстро убери пароль! Ссылка на сообщение Поделиться на других сайтах
laffytaffy 84 Опубліковано: 2009-01-20 16:38:10 Автор Share Опубліковано: 2009-01-20 16:38:10 ну молодец. ану быстро убери пароль! упс.... Ссылка на сообщение Поделиться на других сайтах
egor2fsys 5 Опубліковано: 2009-01-20 17:51:27 Share Опубліковано: 2009-01-20 17:51:27 Если в консоли руками выполнить скрипт, он будет выполняться ? Ссылка на сообщение Поделиться на других сайтах
laffytaffy 84 Опубліковано: 2009-01-20 18:06:49 Автор Share Опубліковано: 2009-01-20 18:06:49 Если в консоли руками выполнить скрипт, он будет выполняться ? подскажите, а с какими параметрами скрипт пускать? а то... FREEBitgw1# /etc/stargazer/OnConnect ipfw: missing dst address FREEBitgw1# ipfw: hostname ``to'' unknown Ссылка на сообщение Поделиться на других сайтах
laffytaffy 84 Опубліковано: 2009-01-22 14:05:17 Автор Share Опубліковано: 2009-01-22 14:05:17 никто не поможет? Ссылка на сообщение Поделиться на других сайтах
muff 115 Опубліковано: 2009-01-22 14:22:37 Share Опубліковано: 2009-01-22 14:22:37 Если пайпы создаются, а трафик перестает бегать - значит смотри на пайпы. Должно быть какая-то ошибка в командах создания пайпа. Можешь бросить вывод ipfw show | less ? Ссылка на сообщение Поделиться на других сайтах
laffytaffy 84 Опубліковано: 2009-01-22 17:14:21 Автор Share Опубліковано: 2009-01-22 17:14:21 Если пайпы создаются, а трафик перестает бегать - значит смотри на пайпы. Должно быть какая-то ошибка в командах создания пайпа. Можешь бросить вывод ipfw show | less ? не совсем так.... до пайпов не доходит правила с 200 по 300 уже вручную добавлял... ибо без разрешения allow any to any, инет ни у кого не пашет, добавил его, а потом вручную пайпы, чтобы канал совсем не упал при авторизации inetaccess-ом, скрипт не создает правила для пользователя разрешающие, хотя авторизатор светится зелененьким FREEBitgw1# ipfw show | less 00010 124037966 126384433417 allow ip from any to me via tun0 00011 0 0 allow tcp from any to me dst-port 22 in recv tun0 00012 0 0 allow tcp from any to me dst-port 5555 in recv tun0 00020 116869 7356754 allow udp from any to me dst-port 53 in recv msk0 00021 114057 25575132 allow udp from me 53 to any out xmit msk0 00200 4879689 4647474230 pipe 200 ip from any to 10.10.2.1 00201 16129804 18044040246 pipe 201 ip from any to 10.10.2.2 00202 3852364 4955163305 pipe 202 ip from any to 10.10.2.4 00203 16665419 17016295772 pipe 203 ip from any to 10.10.2.5 00204 4804241 5431572283 pipe 204 ip from any to 10.10.2.7 00205 6098930 6714038709 pipe 205 ip from any to 10.10.2.11 00206 7063311 6926588620 pipe 206 ip from any to 10.10.2.17 00207 5457481 4723337643 pipe 207 ip from any to 10.10.4.8 00208 4218377 5491142463 pipe 208 ip from any to 10.10.3.10 00209 0 0 pipe 209 ip from any to 10.10.2.7 00210 1034653 822036257 pipe 210 ip from any to 10.10.2.30 00211 660153 723164097 pipe 211 ip from any to 10.10.2.26 00212 76529 46227039 pipe 212 ip from any to 10.10.2.12 00213 627046 845929252 pipe 213 ip from any to 10.10.2.14 00214 9827753 6109352122 pipe 214 ip from any to 10.10.2.8 00215 0 0 pipe 215 ip from any to 10.10.2.6 00216 541318 583915946 pipe 216 ip from any to 10.10.2.13 00217 3792974 3475291422 pipe 217 ip from any to 10.10.2.9 00218 1296126 1573434577 pipe 218 ip from any to 10.10.2.35 00219 406312 552556178 pipe 219 ip from any to 10.10.2.21 00220 1769491 1960539370 pipe 220 ip from any to 10.10.2.37 00231 3083583 4484706480 pipe 231 ip from any to 10.10.3.1 00232 103283 87266801 pipe 232 ip from any to 10.10.3.2 00233 684116 897777063 pipe 233 ip from any to 10.10.3.3 00234 1392902 1913216612 pipe 234 ip from any to 10.10.3.4 00235 111404 122349741 pipe 235 ip from any to 10.10.3.5 00236 775332 1088362335 pipe 236 ip from any to 10.10.3.6 00237 24654 32661458 pipe 237 ip from any to 10.10.3.7 00238 0 0 pipe 238 ip from any to 10.10.3.8 00300 223746852 83503396729 allow ip from any to any 00306 743 58094 allow ip from 10.10.4.4,10.10.3.10 to any 00307 531 164103 allow ip from any to 10.10.4.4,10.10.3.10 00308 313 28796 allow udp from any to 10.10.1.1 dst-port 5555 via msk0 00309 336 136584 allow udp from 10.10.1.1 to any via msk0 05566 24 19212 allow ip from any to any via lo0 05570 0 0 allow ip from any 5555 to any 05570 0 0 allow ip from any to any dst-port 5555 10003 0 0 pipe 10002 ip from 10.10.3.10 to any 10004 0 0 pipe 10001 ip from any to 10.10.3.10 10008 0 0 pipe 10007 ip from 10.10.2.1 to any 10009 0 0 pipe 10006 ip from any to 10.10.2.1 10013 0 0 pipe 10012 ip from 10.10.2.2 to any 10014 0 0 pipe 10011 ip from any to 10.10.2.2 10028 0 0 pipe 10027 ip from 10.10.2.5 to any Ссылка на сообщение Поделиться на других сайтах
egor2fsys 5 Опубліковано: 2009-01-22 17:23:11 Share Опубліковано: 2009-01-22 17:23:11 Читаем документацию в комплекте с сервером: Скрипт OnConnect исполняется в тот момент, когда система произвела аутентификацию клиента и проверила остаток средств на его счете. В данном скрипте должны (могут) быть написаны правила фаервола для разрешения клиенту доступа в сеть. В скрипт передаются следующие параметры (по порядку): 1) логин клиента, 2) IP адрес клиента, 3) количество денег на счету, 4) уникальный целочисленный идентификатор пользователя, 5) список направлений, которые выбрал пользователь при подключении. Скрипт OnDisconnect исполняется в момент, когда клиент производит отключение от сервера (т. е. нажимает кнопку «Отключиться» в авторизаторе) или же сервер сам отключает клиента в связи с тайм аутом или иными причинами. В данном скрипте должны (могут) быть написаны правила фаервола для запрещения клиенту доступа в сеть. В скрипт передаются следующие параметры (по порядку): 1) логин клиента, 2) IP адрес клиента, 3) количество денег на счету, 4) уникальный целочисленный идентификатор пользователя, 5) список направлений, которые выбрал пользователь при подключении. Т.е. выполняем примерно так: ./OnConnect user_login 192.168.1.20 49.6954969 102 1111111111 Ссылка на сообщение Поделиться на других сайтах
nightfly 1 239 Опубліковано: 2009-02-01 09:58:59 Share Опубліковано: 2009-02-01 09:58:59 А где в OnConnect нечто вида ipfw add xxx allow ip from $user_ip to any? В пайпах кстати тоже кошерно указывать "queue сколько" и "via кудой" что ибо будут артефакты в будущем. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас