Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Mam taki problem z firewallem:
Posiadam takie interfejsy:
eth0 80.80.80.80 (wyjście w świat)
eth1 192.168.16.1
eth1:1 192.168.1.1
eth1.2 192.168.2.1
eth1:3 200.200.200.10
No i tu jest problem jak napisze reguły na jeden interfejs wszystko pięknie chodzi ładnie blokuje co mi potrzeba ale jak już dokładam kolejne z aliasów zaczyna sie walić. I nie wiem jak to rozgryźć.
Owe błędy wyglądają tak:
Warning: weird character in interface `192.168.16.1/24' (No aliases, :, ! or *).
Warning: weird character in interface `192.168.1.1/24' (No aliases, :, ! or *).
Warning: weird character in interface `192.168.2.1/24' (No aliases, :, ! or *).
iptables v1.2.11: interface name `200.200.200.10/24' must be shorter than IFNAMSIZ (15)
Może ktoś już to robił.
Nie chce mi się dokładać kart do routera bo to napewno można jakoś rozwiązać.
Offline
Tak też czynie tylko owe sieci nie łapią neta. No lae faktycznie może coś źle zrobiłem. Przeanalizuję to jeszcze dzisiaj jak nie pomoże to wkleje mojego skrypta.
Ale dzięki za zainteresowanie i podpowiedź
Offline
kombinuję i nic z tego. Wkońcu wziąłęm napisałem według pdf-a z duga "IPTABLES by Atom_zero"
I jak ma chodzić tylko jeden interfejs eth1 to wsio OK ale jak już eth1:1 eth1:2 eth1:3 to już kicha. Co mam tu dopisać?
A jeszcze te wszystkie interfejsymają iść przez port 8080 squida.
#!/bin/bash
if [ "$1" = "start" ]; then
echo " Stratuje Firewall"
#internet
INET_IP="80.80.80.80"
INET_IFACE="eth0"
INET_BROADCAST="80.80.80.91"
#siec LAN
LAN_IP="192.168.16.1"
LAN_IP_RANGE="192.168.16.0/24"
LAN_IFACE="eth1"
#pentla zwrotna
LO_IFACE="lo"
LO_IP="127.0.0.1"
#iptables
IPTABLES="/sbin/iptables"
#moduly
/sbin/depmod -a
#moduly wymagane
/sbin/modprobe ip_tables
/sbin/modprobe ip_conntrack
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_mangle
/sbin/modprobe iptable_nat
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_limit
/sbin/modprobe ipt_state
/sbin/modprobe ipt_REJECT
#konfiguracja proc
echo 1 > /proc/sys/net/ipv4/ip_forward
#polityka domyslna
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP
#lancuch na bledne pakiety TCP
$IPTABLES -N bledne_pakiety_TCP
#oddzielne lancuchy dla ICMP,TCP,UDP
$IPTABLES -N dozwolone
$IPTABLES -N tcp_pakiety
$IPTABLES -N udp_pakiety
$IPTABLES -N icmp_pakiety
#lancuch blednych pakietow TCP
$IPTABLES -A bledne_pakiety_TCP -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
$IPTABLES -A bledne_pakiety_TCP -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "Nowy bez flagi syn:"
$IPTABLES -A bledne_pakiety_TCP -p tcp ! --syn -m state --state NEW -j DROP
#lancuchy dozwolone
$IPTABLES -A dozwolone -p TCP --syn -j ACCEPT
$IPTABLES -A dozwolone -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A dozwolone -p TCP -j DROP
#porty TCP
$IPTABLES -A tcp_pakiety -p TCP -s 0/0 --dport 22 -j dozwolone
#reguly ICMP
$IPTABLES -A icmp_pakiety -p ICMP -s 0/0 --icmp-type 8 -j ACCEPT
$IPTABLES -A icmp_pakiety -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT
#pakiety icmp ktore odwalam
$IPTABLES -A INPUT -p tcp -j bledne_pakiety_TCP
#reguly dla sieci nie bedocel w internecie czyli LAN
$IPTABLES -A INPUT -p ALL -i $LAN_IFACE -s $LAN_IP_RANGE -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LO_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $LAN_IP -j ACCEPT
$IPTABLES -A INPUT -p ALL -i $LO_IFACE -s $INET_IP -j ACCEPT
#reguly dla sieci przychodzocych z neta czyli od eth0
$IPTABLES -A INPUT -p ALL -d $INET_IP -m state --state ESTABLISHED,RELATED -j ACCEPT
$IPTABLES -A INPUT -p TCP -i $INET_IFACE -j tcp_pakiety
$IPTABLES -A INPUT -p UDP -i $INET_IFACE -j udp_pakiety
$IPTABLES -A INPUT -p ICMP -i $INET_IFACE -j icmp_pakiety
#logi nie pasujace do zadnych powyzszych
$IPTABLES -A INPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT INPUT pakiet polegl: "
#Forwardowanie
#Blendne pakiety TCP ktorych nie chcemy
$IPTABLES -A FORWARD -p tcp -j bledne_pakiety_TCP
#Akceptowane pakiety TCP
$IPTABLES -A FORWARD -i $LAN_IFACE -j ACCEPT
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
#Logowanie dziwnych pakietow nie pasujacych do regul
$IPTABLES -A FORWARD -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT FORWARD pakiet polegl: "
#Lancuch output
#Bledne pakiety TCP ktorych nie chce
$IPTABLES -A OUTPUT -p tcp -j bledne_pakiety_TCP
#Regulu OUTPUT ktorym ip zezwolic na polaczenie
$IPTABLES -A OUTPUT -p ALL -s $LO_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $LAN_IP -j ACCEPT
$IPTABLES -A OUTPUT -p ALL -s $INET_IP -j ACCEPT
#Logowanie dziwacznych pakietow
$IPTABLES -A OUTPUT -m limit --limit 3/minute --limit-burst 3 -j LOG --log-level DEBUG --log-prefix "IPT OUTPUT pakiet polegl: "
#do squida
$IPTABLES -t nat -A PREROUTING -p tcp -i $LAN_IFACE --dport 80 -j REDIRECT --to-port 8080
#Zezwolenie na forwardowanie pakietow do naszej sieci LAN
$IPTABLES -t nat -A POSTROUTING -o $INET_IFACE -j SNAT --to-source $INET_IP
elif [ "$1" = "stop" ]; then
echo "Zatrzymanie firewalla"
iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
Offline
Time (s) | Query |
---|---|
0.00012 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00110 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.15.218.243' WHERE u.id=1 |
0.00074 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.15.218.243', 1738501519) |
0.00064 | SELECT * FROM punbb_online WHERE logged<1738501219 |
0.00072 | DELETE FROM punbb_online WHERE ident='18.225.209.76' |
0.00061 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=7312 AND t.moved_to IS NULL |
0.00006 | SELECT search_for, replace_with FROM punbb_censoring |
0.00160 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=7312 ORDER BY p.id LIMIT 0,25 |
0.00079 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=7312 |
Total query time: 0.00642 s |