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/.
Witam
Chcial bym poprosic o pomoc poniewaz moj firewall nie forwarduje portow do lanu :(:(
oto moj maly i skromny firewall:
#! /bin/sh echo 1 > /proc/sys/net/ipv4/ip_forward ip=/sbin/iptables $ip -F -t nat $ip -F -t filter $ip -X -t nat $ip -X -t filter $ip -P INPUT DROP $ip -P FORWARD DROP $ip -P OUTPUT DROP $ip -A INPUT -i lo -j ACCEPT $ip -A FORWARD -o lo -j ACCEPT $ip -A OUTPUT -p icmp -j ACCEPT $ip -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT $ip -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT $ip -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #################################################################################################### # eth0 - 192.168.0.1 INT # eth1 - 192.168.1.33 EXT #MASQUERADE, FORWARD #################################################################################################### $ip -t filter -A FORWARD -i eth0 -s 192.168.0.0/24 -o eth1 -d 0.0.0.0/0 -j ACCEPT $ip -t nat -A POSTROUTING -s 192.168.0.0/24 -d 0.0.0.0/0 -j MASQUERADE #################################################################################################### #INPUT Rulres directly to the SERVER 192.168.1.33 #################################################################################################### $ip -A INPUT -i eth1 -p icmp -j DROP $ip -A INPUT -i eth1 -p tcp --dport 4899 -d 192.168.1.33 -j ACCEPT #Glowny port utorrent $ip -A INPUT -i eth1 -p tcp --dport 8000 -d 192.168.1.33 -j ACCEPT #Shoutcast $ip -A INPUT -i eth0 -s 192.168.0.2 -p icmp -j ACCEPT $ip -A INPUT -i eth0 -s 192.168.0.0/24 -p tcp -j ACCEPT $ip -A INPUT -s 192.168.0.0/255.255.255.0 -p tcp --dport 22 -j ACCEPT #################################################################################################### #OUTPUT from server #################################################################################################### $ip -A OUTPUT -p tcp --sport 4899 -j ACCEPT $ip -A OUTPUT -p tcp --sport 8000 -j ACCEPT $ip -A OUTPUT -p tcp --sport 21 -j ACCEPT #################################################################################################### #Port Mapping ####################################### ############################################################ $ip -t nat -A PREROUTING -i eth1 -p tcp --dport 4899 -j DNAT --to 192.168.1.33:4899 $ip -t nat -A PREROUTING -i eth1 -p tcp --dport 8000 -j DNAT --to 192.168.1.33:8000 $ip -t nat -A PREROUTING -i eth1 -p tcp --dport 22 -j DNAT --to 192.168.1.33:22 $ip -t nat -A PREROUTING -i eth1 -p tcp --dport 6881 -j DNAT --to 192.168.0.11:6881 $ip -t nat -A PREROUTING -i eth1 -p udp --dport 6881 -j DNAT --to 192.168.0.11:6881 #################################################################################################### #DENY ########################################## ######################################################### $ip -I FORWARD -s 193.17.41.4 -p udp -d 192.168.0.11 --dport 4569 -j DROP $ip -I FORWARD -s 192.168.0.11 -p udp -d 193.17.41.4 --dport 4569 -j DROP
Czy ktos moze widzi jakies usterki ktorych ja nie widze?
Pozdrawiam
Luke
Offline
Nie było by chyba głupim pomysłem przepuszczenie tych połączeń jeszcze w łancuchu FORWARD, bo póki co przepuszczasz tylko takie które mają źródłowy adres LANu.
A tak swoją drogą, skrypt byłby jednak czytelniejszy bez tych "#########" ;-)
Ostatnio edytowany przez urug (2008-07-02 21:48:10)
Offline
Spróbuj puścić parę pakietów, by się złapały na ten DNAT i wklej
iptables -t nat -L PREROUTING -vn
Nie zaszkodzi jak ustawisz testowo politykę iptables -P FORWARD ACCEPT
Ostatnio edytowany przez urug (2008-07-02 22:17:10)
Offline
iptables -t nat -L PREROUTING -vn Chain PREROUTING (policy ACCEPT 8096 packets, 756K bytes) pkts bytes target prot opt in out source destination 15 740 DNAT tcp -- eth1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:4899 to:192.168.1.33:4899 0 0 DNAT tcp -- eth1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:8000 to:192.168.1.33:8000 0 0 DNAT tcp -- eth1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22 to:192.168.1.33:22 1 60 DNAT tcp -- eth1 * 0.0.0.0/0 0.0.0.0/0 tcp dpt:6881 to:192.168.0.2:6881 0 0 DNAT udp -- eth1 * 0.0.0.0/0 0.0.0.0/0 udp dpt:6881 to:192.168.0.2:6881
przy chwilowo wlaczonej polityce FORWARD
Dzieki
Offline
Wygląda OK, jeśli nic innego nie dropuje pakietów - to powinno IMO działać. Nie widzę błędu. Jeśli znajdziesz źródło problemu, to napisz - sam jestem ciekawy.
Ostatnio edytowany przez urug (2008-07-04 09:04:57)
Offline
To oznacza że 1 pakiet o takiej wielkości został dopasowany do tej regułki.
Możesz na tamtym hoscie odpalić tcpdump'a i sprawdzić czy dociera.
Ostatnio edytowany przez urug (2008-07-04 10:53:16)
Offline
[quote=urug]Spróbuj puścić parę pakietów, by się złapały na ten DNAT i wklej
iptables -t nat -L PREROUTING -vn
Nie zaszkodzi jak ustawisz testowo politykę iptables -P FORWARD ACCEPT[/quote]
No i stalo sie,
po ustawieniu polityki FORWARD na ACCEPT porty sa przekierowywane. Teraz tylko musze dojsc do tego co zrobic zeby bely przekierowane jak dam na DROP. Jakies sugestie ?
Offline
[quote=bercik]pokaz iptables -L FORWARD[/quote]
a moze wogole (zamiast tamtego) iptables -n -L ... to podpowiemy co poprawic ...
Ostatnio edytowany przez bercik (2008-07-05 00:53:15)
Offline
mqluke, nie wiem czy próbowałeś w ten sposób:
iptables -A FORWARD -d 192.168.0.0/24 -j ACCEPT
Wtedy po przepuszczeniu pakietów do forwardowania, mógłbyś wyświetlić
iptables -L -vn
(Jak to będzie działać, to możesz dodać bardziej precyzyjną regułkę do FORWARD)
Ostatnio edytowany przez urug (2008-07-05 08:47:55)
Offline
siema urug,
wlasnie dodalem te regulke
$ip -t filter -A FORWARD -i eth1 -s 0.0.0.0/0 -o eth0 -d 192.168.0.2 -j ACCEPT
i pakiety sa prawidlowo przkierowywane :)
moj aktualny firewall budowalem na przykladzie mojego starego firewala sprzed 5 lat gdzie nie bylo zadnej polityki i nie bylo zadnej zasady jw. tylko byla
-d 0.0.0.0/0
bede sie zastanawial nad ograniczeniem uslug w lancuchu FORWARD troche pozniej
dzieki wielkie stary za pomoc :) jestem wdzieczny
Offline
Time (s) | Query |
---|---|
0.00032 | SET CHARSET latin2 |
0.00014 | SET NAMES latin2 |
0.00115 | 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='18.221.12.61' WHERE u.id=1 |
0.00060 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.221.12.61', 1732334517) |
0.00056 | SELECT * FROM punbb_online WHERE logged<1732334217 |
0.00109 | 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=11782 AND t.moved_to IS NULL |
0.00007 | SELECT search_for, replace_with FROM punbb_censoring |
0.00222 | 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=11782 ORDER BY p.id LIMIT 0,25 |
0.00075 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=11782 |
Total query time: 0.0069 s |