3 #Этот скрипт вызывается в момент, когда пользователь
4 #успешно прошел авторизацию на сервере. Задача скрипта - перестроить
5 #файрвол так, что бы пользователь получил доступ в интернет
19 #Selected dirs to connect
22 iptables -A INPUT -s $IP -j QUEUE
23 iptables -A OUTPUT -d $IP -j QUEUE
24 iptables -A FORWARD -s $IP -j QUEUE
25 iptables -A FORWARD -d $IP -j QUEUE
31 speedR=$(grep -i "^Userdata0=" /var/stargazer/users/$LOGIN/conf | cut -f 2 -d"=")
32 #echo "speedR=$speedR" >> /var/stargazer/users/$LOGIN/connect.log
33 speed=$(echo $speedR | grep "^[0-9]*[0-9]$")
40 speedkbit=$speed"kbit"
42 #echo "speed=$speedkbit" >> /var/stargazer/users/$LOGIN/connect.log
45 iptables -t mangle -A FORWARD -d $IP -j MARK --set-mark $mark
49 if [ -f "/var/stargazer/ifaces/$IP" ]
51 #echo "1" >> /var/stargazer/users/$LOGIN/connect.log
52 ppp_iface=$(cat /var/stargazer/ifaces/$IP)
54 #echo "2" >> /var/stargazer/users/$LOGIN/connect.log
58 tc qdisc add dev $ppp_iface root handle 1: htb
59 tc class add dev $ppp_iface parent 1: classid 1:1 htb rate 100mbit ceil 100mbit burst 200k
60 tc class add dev $ppp_iface parent 1:1 classid 1:10 htb rate $speedkbit burst 20k
61 tc filter add dev $ppp_iface parent 1: protocol ip prio 3 handle $mark fw classid 1:10
63 #echo "C `date +%Y.%m.%d-%H.%M.%S` $IP $CASH $ID $mark $speed $ppp_iface" >> /var/stargazer/users/$LOGIN/connect.log