>i=0
>for i in "${badsite[@]}"
>do
>/sbin/iptables -A FORWARD -s $i -j DROP
>done
>for i in "${goodip[@]}"
>doот вашего рукоблудия хочется блевать. честное слово
осильте IPSET
осильте как правильно делать нат/маскарад. (у вас там даже "орфографические" ошибки есть - POST_P_OUTING, sour_S_e итп)
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o $wan_if -j SNAT --to-source $WAN_IP
ессно у вас при таком раскладе нефига работать не будет, курить -m state или -m conntrack --ctstate
пример чтоб разрешить выход только на "хорошие порты" с локальной сетки:
iptables -A FORWARD -m conntrack --ctstate INVALID -j DROP
iptables -A FORWARD -i $wan_if -o $lan_if -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -p tcp -s 192.168.0.0/24 -m multiport –-dports 80,53,25,110,5190,443 -m conntrack --ctstate NEW -j ACCEPT
короче курите lartc.org до посинения.