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,
Możecie mi podpowiedzieć jak z pomocą iptables logować ruch łańcucha FORWARD na portach 80 i 443 z wyłączeniem sieci 172.16.0.0/12 i 192.168.0.0/16
Próbowałem czegoś takiego ale nie działa
iptables -t filter -I FORWARD ! -d 172.16.0.0/12 -p tcp --dport 80 -j LOG iptables -t filter -I FORWARD ! -d 192.168.0.0/16 -p tcp --dport 80 -j LOG iptables -t filter -I FORWARD ! -d 172.16.0.0/12 -p tcp --dport 443 -j LOG iptables -t filter -I FORWARD ! -d 192.168.0.0/16 -p tcp --dport 443 -j LOG
Pomożecie ? :)
Offline
iptables -t filter -I FORWARD ! -d 172.16.0.0/12 -p tcp --dport 80 -j LOG --log-prefix "DOOOOOPA "
Po jakimś czasie:
grep DOOOOOPA /var/log/kern.log
SOA#1
Offline
Log:
Feb 11 12:12:12 router kernel: (FORWARD-443): IN=eth0 OUT=eth0 SRC=172.19.1.230 DST=192.168.249.4 LEN=40 TOS=0x00 PREC=0x00 TTL=127 ID=33696 DF PROTO=TCP SPT=4345 DPT=443 WINDOW=64070 RES=0x00 ACK URGP=0 Feb 11 12:12:12 router kernel: (FORWARD-443): IN=eth0 OUT=eth0 SRC=172.19.1.230 DST=192.168.249.4 LEN=40 TOS=0x00 PREC=0x00 TTL=127 ID=33704 DF PROTO=TCP SPT=4345 DPT=443 WINDOW=64070 RES=0x00 ACK FIN URGP=0 Feb 11 12:12:13 router kernel: (FORWARD-443): IN=eth0 OUT=eth0 SRC=172.19.2.77 DST=192.168.192.48 LEN=733 TOS=0x00 PREC=0x00 TTL=127 ID=15972 DF PROTO=TCP SPT=1875 DPT=443 WINDOW=65535 RES=0x00 ACK PSH URGP=0 Feb 11 12:12:13 router kernel: (FORWARD-443): IN=eth0 OUT=eth0 SRC=172.19.2.77 DST=192.168.192.48 LEN=40 TOS=0x00 PREC=0x00 TTL=127 ID=15977 DF PROTO=TCP SPT=1875 DPT=443 WINDOW=65018 RES=0x00 ACK URGP=0 Feb 11 12:22:59 router kernel: (FORWARD-443): IN=eth0 OUT=eth0 SRC=172.19.2.196 DST=172.19.12.6 LEN=52 TOS=0x00 PREC=0x00 TTL=127 ID=25599 DF PROTO=TCP SPT=54454 DPT=443 WINDOW=8192 RES=0x00 SYN URGP=0 Feb 11 12:23:02 router kernel: (FORWARD-443): IN=eth0 OUT=eth0 SRC=172.19.2.196 DST=172.19.12.6 LEN=52 TOS=0x00 PREC=0x00 TTL=127 ID=25600 DF PROTO=TCP SPT=54454 DPT=443 WINDOW=8192 RES=0x00 SYN URGP=0
iptables:
iptables -t filter -I FORWARD ! -d 172.19.0.0/12 -p tcp --dport 80 -j LOG --log-prefix "(FORWARD-80): " iptables -t filter -I FORWARD ! -d 192.168.0.0/16 -p tcp --dport 80 -j LOG --log-prefix "(FORWARD-80): " iptables -t filter -I FORWARD ! -d 172.19.0.0/12 -p tcp --dport 443 -j LOG --log-prefix "(FORWARD-443): " iptables -t filter -I FORWARD ! -d 192.168.0.0/16 -p tcp --dport 443 -j LOG --log-prefix "(FORWARD-443): "
Wygląda to tak jakby tylko pierwsza reguła działała a reszta już nie byłaby przetwarzana.
Ostatnio edytowany przez trzcionek (2015-02-11 12:35:24)
Offline
1595
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:10:20)
Offline
Przy takiej konfiguracji zawsze wszytsko bedzie zapisywane do logu gdyż jak nie pierwsza reguła to druga będzie prawidłowa. tak jak napisał @uzytkownikubunt dla LOG analizowane są dalsze reguły.
Zmień nazwę dla każdej z reguł na inną i zobaczysz dokładnie o czym pisze, czyli np. na coś takiego:
iptables -t filter -I FORWARD ! -d 172.19.0.0/12 -p tcp --dport 80 -j LOG --log-prefix "(FORWARD-180): " iptables -t filter -I FORWARD ! -d 192.168.0.0/16 -p tcp --dport 80 -j LOG --log-prefix "(FORWARD-280): " iptables -t filter -I FORWARD ! -d 172.19.0.0/12 -p tcp --dport 443 -j LOG --log-prefix "(FORWARD-1443): " iptables -t filter -I FORWARD ! -d 192.168.0.0/16 -p tcp --dport 443 -j LOG --log-prefix "(FORWARD-2443): "
Ostatnio edytowany przez djjanek (2015-02-11 12:59:49)
Offline
djjanek rozumiem, ale w jaki sposób to rozwiązać żeby funkcjonowało że loguje wszystko w FORWARD na portach 80 i 443 ale bez sieci 192.168.0.0./16 i 172.19.0.0/12.
Offline
-A FORWARD -p tcp -m multiport --dports 80,443 -d 172.19.0.0/12 -j ACCEPT -A FORWARD -p tcp -m multiport --dports 80,443 -d 192.168.0.0/16 -j ACCEPT -A FORWARD -p tcp -m multiport --sports 80,443 -s 172.19.0.0/12 -j ACCEPT -A FORWARD -p tcp -m multiport --sports 80,443 -s 192.168.0.0/16 -j ACCEPT -A FORWARD -j LOG --log-level 4 --log-prefix "* IPTABLES: FORWARD * "
O takie coś ci chodzi?
Offline
morfik sprawdzę jutro, bo jeżeli dobrze to czytam i to co napisał @uzytkownikubunt, to oto mi chdodziło.
Offline
iptables -t filter -I FORWARD ! -d 172.19.0.0/12 -p tcp --dport 80 -j LOG --log-prefix "(FORWARD-80): "
iptables -t filter -I FORWARD ! -d 192.168.0.0/16 -p tcp --dport 80 -j LOG --log-prefix "(FORWARD-80): "
Wygląda to tak jakby tylko pierwsza reguła działała a reszta już nie byłaby przetwarzana.[/quote]
to dziala ok :) sieć druga(192.168.0.0/16) wpada do logowania w pierwszej regule a sieć pierwsza(172.19.0.0/12) wpada do logowania w drugiej regule - czyli logule wszystko :D każde ip :)
Panowie może tak:Kod:
iptables -t filter -N TMP iptables -t filter -F TMP iptables -t filter -I FORWARD -d 0/0 -p tcp --dport 80 -j TMP iptables -t filter -A TMP -s 0/0 -p tcp --dport 80 -d 172.16.0.0/12 -j RETURN iptables -t filter -A TMP -s 0/0 -p tcp --dport 80 -d 192.168.0.0/16 -j RETURN iptables -t filter -A TMP -d 0/0 -p tcp --dport 80 -j LOG --log-prefix "LOG_PORT_80 "i analogicznie dla 443
Ostatnio edytowany przez qlemik (2015-02-13 00:08:52)
Offline
@qlemik dokładnie o to mi chodziło, dziękuję.
Pozostałym, dziękuję za wkład i wyjaśnienia.
Offline
Time (s) | Query |
---|---|
0.00013 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00163 | 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.128.31.89' WHERE u.id=1 |
0.00144 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.128.31.89', 1715908126) |
0.00057 | SELECT * FROM punbb_online WHERE logged<1715907826 |
0.00346 | DELETE FROM punbb_online WHERE ident='47.128.126.112' |
0.00075 | SELECT topic_id FROM punbb_posts WHERE id=283298 |
0.00172 | SELECT id FROM punbb_posts WHERE topic_id=27014 ORDER BY posted |
0.00083 | 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=27014 AND t.moved_to IS NULL |
0.00007 | SELECT search_for, replace_with FROM punbb_censoring |
0.00196 | 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=27014 ORDER BY p.id LIMIT 0,25 |
0.00126 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=27014 |
Total query time: 0.01386 s |