hiot 0 Опубликовано: 2005-09-15 08:24:09 Share Опубликовано: 2005-09-15 08:24:09 Такая трабла: при запуске stargeizer из rc.local командой /sbin/stargeizer, не пускает пользователей в интернет. У меня такое подозрение, что не выполнянтся OnConnect и OnDisconnect, т.к. ping в интернет с клиентских машин проходит, сам сервер работает. Если теперь после загрузки сделать killall stargazer и запустить заново, все начинает работать. Пробовал запускать через /etc/init.d/stargazer - вообще ни как, не из автозагрузки не из консоли. В логах все нормально - сервер запускается, пользователь подключается. Релиз stargazer последний. ОС: Fedora Core 3 NEED HELP. Ссылка на сообщение Поделиться на других сайтах
нечто 0 Опубліковано: 2005-09-15 12:13:17 Share Опубліковано: 2005-09-15 12:13:17 проверь правильно ли у тебя написына твои OnConnect и OnDisconnect... если там ошибка то они и не будут пускать пользователей .... запуси их или отдель с консоли с параметрами ... или добавь в самый конец запись "echo User $1 Connected >> /var/log/stg_conn.log" типа такого ... если лог не появится то в скриптах ошибка .. Ссылка на сообщение Поделиться на других сайтах
hiot 0 Опубліковано: 2005-09-15 14:18:25 Автор Share Опубліковано: 2005-09-15 14:18:25 Попробовал запустить OnConnect вручную. У юзера которого запустил инет заработал, причем если в клиенте нажать отключиться инет продолжает работать, т.е. 100% не выполнябться скрипты OnConnect и OnDisconnect. Причем если сделать: killall stargazer /sbin/stargazer Все встает на свои места. Т.е. как я писал ранее эта проблема появляеться только при автозагрузке из rc.local. Ссылка на сообщение Поделиться на других сайтах
нечто 0 Опубліковано: 2005-09-15 14:27:50 Share Опубліковано: 2005-09-15 14:27:50 если ты его запускаешЪ просто "/sbin/stargazer" он и не будет работать ... пропиши там "/etc/init.d/stargazer start" или "/sbin/stargazer /etc/stargazer" а вообще для этихЪ целей есть /etc/rc.d/rc3.d Ссылка на сообщение Поделиться на других сайтах
hiot 0 Опубліковано: 2005-09-15 15:06:34 Автор Share Опубліковано: 2005-09-15 15:06:34 Это все пробовал, не работает. Работает только если запустить /sbin/stargazer из консоли. Кстати как пожелание разработчику (если будет читать эту тему), добавить в /etc/init.d/stargazer поддержку chkconfig и добавить скрипт OnRun, который запускался бы перед запуском демона stargazer. Что бы туда можно было внести предварительные настройки firewall (в примере конфигурирования linux это /etc/stargazer/fw). Ссылка на сообщение Поделиться на других сайтах
нечто 0 Опубліковано: 2005-09-15 15:16:11 Share Опубліковано: 2005-09-15 15:16:11 а ты чито не можешЪ сам подправить скрипт запуска ? покажи свои скрипты.. OnConnect OnDiskonnect fw и stargazer.conf Ссылка на сообщение Поделиться на других сайтах
нечто 0 Опубліковано: 2005-09-15 15:20:57 Share Опубліковано: 2005-09-15 15:20:57 да кстати ... добавь всетаки строчку "echo User $1 Connected >> /var/log/stg_conn.log" в конец OnConnect ... и когда не пускает пользователя в инет проверь появляется ли запись... Ссылка на сообщение Поделиться на других сайтах
hiot 0 Опубліковано: 2005-09-15 16:07:14 Автор Share Опубліковано: 2005-09-15 16:07:14 Добавил. Как я и говорил при автозагрузке в /var/log/stg_conn.log не пишется. Убиваю демон в консоли, запускаю заново - пишется. Вот файлы, но они стандартные из примеров: OnConnect ip=$2 iptables -t filter -A INPUT -s $ip -j ACCEPT iptables -t filter -A FORWARD -s $ip -j ACCEPT iptables -t filter -A FORWARD -d $ip -j ACCEPT iptables -t filter -A OUTPUT -d $ip -j ACCEPT OnDisconnect ip=$2 iptables -t filter -D INPUT -s $ip -j ACCEPT while [ $? -eq 0 ] do iptables -t filter -D INPUT -s $ip -j ACCEPT done ################################## iptables -t filter -D FORWARD -s $ip -j ACCEPT while [ $? -eq 0 ] do iptables -t filter -D FORWARD -s $ip -j ACCEPT done ################################## iptables -t filter -D FORWARD -d $ip -j ACCEPT while [ $? -eq 0 ] do iptables -t filter -D FORWARD -d $ip -j ACCEPT done ################################## iptables -t filter -D OUTPUT -d $ip -j ACCEPT while [ $? -eq 0 ] do iptables -t filter -D OUTPUT -d $ip -j ACCEPT done fw #!/bin/bash #Машина администратора admin=10.10.0.2 #Адреса роутера server0=10.10.0.1 # Интерфейс смотрящий на клиентов iface_cli=eth0 # Интерфейс смотрящий во внешний мир iface_world=ppp0 #Порты, на которых работает конфигуратор и авторизатор conf_port=4444 user_port1=4444 user_port2=4443 # Разрешаем форвардинг пакетов между интерфейсами # Эта штука необязательна, просто в некоторых дистрибутивах # по умолчанию форвардинг разрешен, а в некоторых - запрещен # Если мы подстрахуемся, хуже не бкдет echo "1" > /proc/sys/net/ipv4/ip_forward # Очищаем правила файрвола iptables -t filter -F iptables -t filter -X iptables -t nat -F iptables -t nat -X # Политика по умолчанию DROP: всем всё запрещено iptables -t filter -P INPUT DROP iptables -t filter -P FORWARD DROP iptables -t filter -P OUTPUT DROP # Разрешаем пингам ходить всюду и всегда iptables -t filter -A INPUT -p icmp -j ACCEPT iptables -t filter -A FORWARD -p icmp -j ACCEPT iptables -t filter -A OUTPUT -p icmp -j ACCEPT # Разрешаем всё на локальном интерфейсе iptables -t filter -A INPUT -d 127.0.0.1 -j ACCEPT iptables -t filter -A OUTPUT -s 127.0.0.1 -j ACCEPT # Разрешить серверу общаться со внешним миром iptables -t filter -A INPUT -i $iface_world -j ACCEPT iptables -t filter -A OUTPUT -o $iface_world -j ACCEPT # DNS. Замечу, ДНС работает и по TCP и по UDP iptables -t filter -A INPUT -p tcp --sport 53 -j ACCEPT iptables -t filter -A FORWARD -p tcp --sport 53 -j ACCEPT iptables -t filter -A FORWARD -p tcp --dport 53 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT iptables -t filter -A INPUT -p udp --sport 53 -j ACCEPT iptables -t filter -A FORWARD -p udp --sport 53 -j ACCEPT iptables -t filter -A FORWARD -p udp --dport 53 -j ACCEPT iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT # SSH iptables -t filter -A INPUT -p tcp -s $admin -d $server0 --dport 22 -j ACCEPT iptables -t filter -A OUTPUT -p tcp -d $admin -s $server0 --sport 22 -j ACCEPT # Stargazer configurator iptables -t filter -A INPUT -p tcp -s 10.10.0.0/24 -d $server0 --dport $conf_port -j ACCEPT iptables -t filter -A OUTPUT -p tcp -d 10.10.0.0/24 -s $server0 --sport $conf_port -j ACCEPT # UDP stargazer InetAccess iptables -t filter -A INPUT -p udp -s 10.10.0.0/24 --sport $user_port2 -d $server0 --dport $user_port1 -j ACCEPT iptables -t filter -A OUTPUT -p udp -d 10.10.0.0/24 --dport $user_port1 -s $server0 -j ACCEPT #Маскарад iptables -t nat -A POSTROUTING -d 0.0.0.0/0 -j MASQUERADE stargazer.conf # Файл настроек сервера stargazer # Имя файла в котором определяются правила подсчета трафика rules=/etc/stargazer/rules # Рабочая директория сервере, тут содержатся данный о тарифах, изерах и админах WorkDir=/var/stargazer/ # Имя лог файла куда пушутся события LogFile=/var/log/stargazer.log # Если юзер в течение UserTimeout секунд не подает признаков жизни, сервер отключит его # (естественно, если клиент был подключен до этого) UserTimeout=90 # Время через которое сервер повторяет проверку того, жив ли клиент. Также это время # через которое у клиента обновляется его статитстика. UserDelay должно быть в # 3...10 раз меньше чем UserTimeout UserDelay=10 # Эта опция действительна только для сервера работающего со вторым типом тарифных планов # Она определяет что будет передаватся программе InetAccess от сервера # FreeMb = 0 - кол-во бесплатных мегабайт в пресчете на цену нулевого направления # FreeMb = 1 - кол-во бесплатных мегабайт в пресчете на цену первого направления # FreeMb = 2 - кол-во бесплатных мегабайт в пресчете на цену второго направления # FreeMb = 3 - кол-во бесплатных мегабайт в пресчете на цену третьего направления # FreeMb = cash - кол-во денег на которые юзер может бесплатно качать # FreeMb = none - ничего не передавать FreeMb=0 # Время через которое пишется детальная статистика # возможные значения 3, 2, 1, 1/2, 1/4, 1/6 # 3 - раз в три часа, 1 - раз в чаc, 1/2 - раз в пол часа, 1/6 - раз в 10 мин StatTime=1/6 # Номер порта по которому сервер слушает обращения конфигуратора adminPort=4444 # Номер порта по которому сервер ожидает обращения авторизатора userPort=4444 # Максимальное кол-во юзеров. Эта величина влияет на кол-во памяти необходимой серверу MaxUsers=100 # for FreeBSD only # Имя интерфейсов на которых нужно вести подсчет трафика # iface=ed0,ed1,rl0 # Опция определяющая менять ли местами upload и download TurnTraff=no # День снятия DayFee=1 DayResetTraff=1 DirName0=Local DirName1=Internet DirName2= DirName3= DirName4= DirName5= DirName6= DirName7= DirName8= DirName9= SpreadFee=no StatOwner=root StatGroup=root StatMode=640 ConfOwner=root ConfGroup=root ConfMode=600 UserLogOwner=root UserLogGroup=root UserLogMode=640 AdminOrder=allow,deny AdminAllowFrom=all UserOrder=allow,deny UserAllowFrom=all FloodControl=yes #FreeMbAllowInet=yes #BigDB=no Ссылка на сообщение Поделиться на других сайтах
нечто 0 Опубліковано: 2005-09-15 16:39:02 Share Опубліковано: 2005-09-15 16:39:02 # Разрешить серверу общаться со внешним миромiptables -t filter -A INPUT -i $iface_world -j ACCEPT iptables -t filter -A OUTPUT -o $iface_world -j ACCEPT зря конечно с такой доверчивостью открывать доступ миру )) ну да ладно ... попробуй сделать немного по другому ... удали все касательно старгейзера из rc.local.. cd /etc/rc.d/rc3.d cp -s /etc/rc.d/init.d/stargazer ./S99stargazer есть ли у тебя пользователи постоянно онлайн ? если нет сделай одного перегрузи машину.. и проверь работает ли пользователь который постоянно в онлайн... ну и другие тоже Ссылка на сообщение Поделиться на других сайтах
hiot 0 Опубліковано: 2005-09-15 17:09:50 Автор Share Опубліковано: 2005-09-15 17:09:50 Только вчера инет по нашей локалке начал раздавать, скоро и до firewall доберусь. Сделал, только естественно в /etc/init.d/stargazer в секцию start прописал /etc/stargazer/fw Короче тоже самое, перезагружаю - не работает. Убиваю демона в консоли, запускаю /sbin/stargazer, все начинает работать. Мне кажется это ошибка. Ссылка на сообщение Поделиться на других сайтах
нечто 0 Опубліковано: 2005-09-15 17:17:31 Share Опубліковано: 2005-09-15 17:17:31 читай ПМ Ссылка на сообщение Поделиться на других сайтах
hiot 0 Опубліковано: 2005-09-15 17:23:06 Автор Share Опубліковано: 2005-09-15 17:23:06 Чего читать? Я честно говоря не знаю как расшифровывается ПМ. Ссылка на сообщение Поделиться на других сайтах
нечто 0 Опубліковано: 2005-09-15 17:28:55 Share Опубліковано: 2005-09-15 17:28:55 это приватное сообщение ... вверху есть надпись Добро пожаловать, hiot ( Выход ) Мои настройки · 1 New Messages · Просмотреть новые сообщения · Мой помощник вот нажми на "1 New Messages" ! Ссылка на сообщение Поделиться на других сайтах
hiot 0 Опубліковано: 2005-09-16 06:30:33 Автор Share Опубліковано: 2005-09-16 06:30:33 Спасибо. Кажется сам разобрался. Видаимо в скриптах используются какието переменные окружения, нужно добавить в начало: #!/bin/bash И все заработало как надо. Ссылка на сообщение Поделиться на других сайтах
Dank 0 Опубліковано: 2005-09-16 19:52:48 Share Опубліковано: 2005-09-16 19:52:48 Спасибо.Кажется сам разобрался. Видаимо в скриптах используются какието переменные окружения, нужно добавить в начало: #!/bin/bash И все заработало как надо. Сколько я с этим воевал, http://local.com.ua/forum/index.php?showtopic=2699 пока решение не нашел. он тупо нормально пашет когда запустишь именно сам. ты в OnConect , OnDisconect вписал #!/bin/bash ?? завтро проверю ))) Ссылка на сообщение Поделиться на других сайтах
hiot 0 Опубліковано: 2005-09-16 23:07:14 Автор Share Опубліковано: 2005-09-16 23:07:14 Да в OnConnect, OnDisconnect, ну и в остальные на всякий случай. Теперь все как по маслу. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас