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/.
Strony: 1
Witam
Jak w temacie, jak zamknąć wszystkie połączenia (nie koniecznie za pomocą iptables).
Posiadam serwer na Debianie, oto mój firewall:
# wlaczenie w kernelu forwardowania echo 1 > /proc/sys/net/ipv4/ip_forward # czyszczenie starych regul iptables -F iptables -X iptables -t nat -X iptables -t nat -F iptables -t mangle -F iptables -t mangle -X # ustawienie domyslnej polityki iptables -P INPUT ACCEPT #iptables -P FORWARD DROP iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT # Utrzymanie polaczen nawiazanych iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED #Przekierowanie VNC iptables -A FORWARD -p tcp --dport 5900 -j ACCEPT iptables -t nat -A PREROUTING -p tcp --dport 5900 -j DNAT --to 10.0.0.3:5900 iptables -A FORWARD -p udp --dport 5900 -j ACCEPT iptables -t nat -A PREROUTING -p udp --dport 5900 -j DNAT --to 10.0.0.3:5900 # udostepniaie internetu w sieci lokalnej iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE iptables -I FORWARD -s 192.168.0.1 -m mac --mac-source 00:1E:8C:78:49:C8 -j ACCEPT #Host1 iptables -I FORWARD -s 192.168.0.2 -m mac --mac-source 70:5A:B6:2C:28:9B -j ACCEPT #Host2
Jak będę chciał odciąć np Host2, to przewalam jeszcze raz tego Firewall'a tylko z zahaszowana ostatnią linijką , o tak :
# wlaczenie w kernelu forwardowania echo 1 > /proc/sys/net/ipv4/ip_forward # czyszczenie starych regul iptables -F iptables -X iptables -t nat -X iptables -t nat -F iptables -t mangle -F iptables -t mangle -X # ustawienie domyslnej polityki iptables -P INPUT ACCEPT #iptables -P FORWARD DROP iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT # Utrzymanie polaczen nawiazanych iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED #Przekierowanie VNC iptables -A FORWARD -p tcp --dport 5900 -j ACCEPT iptables -t nat -A PREROUTING -p tcp --dport 5900 -j DNAT --to 10.0.0.3:5900 iptables -A FORWARD -p udp --dport 5900 -j ACCEPT iptables -t nat -A PREROUTING -p udp --dport 5900 -j DNAT --to 10.0.0.3:5900 # udostepniaie internetu w sieci lokalnej iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -j MASQUERADE iptables -I FORWARD -s 192.168.0.1 -m mac --mac-source 00:1E:8C:78:49:C8 -j ACCEPT #Host1 #iptables -I FORWARD -s 192.168.0.2 -m mac --mac-source 70:5A:B6:2C:28:9B -j ACCEPT #Host2
Teraz Host2 nie może nawiązać nowych połączeń, ale jak zamknąć te które ma aktualnie otwarte ???
Offline
Bzdurnie odcinasz drugiego kompa.
Poczytaj sobie o iptables, a przede wszystkim o kolejności reguł i tym, czy dany cel kończy lub nie kończy przetwarzania pakietu w kernelu.
Podejrzewam, że regułka:
iptables -I FORWARD -s 192.168.0.2 -j DROP
działa,
podobnie jak:
iptables -I FORWARD -m mac --mac-source 70:5A:B6:2C:28:9B -j DROP
[b][url=http://pl.wikibooks.org/wiki/Sieci_w_Linuksie/Netfilter/iptables]RTFM[/url][/b]
Bo w chwili obecniej po przeładowaniu skryptu, jego polączenia wiszą tutaj:
# Utrzymanie polaczen nawiazanych iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
I nie musisz żadnych skryptów przeładowywać, haszować, itp.
Iptables służy do interaktywnego sterowania regułami firewalla.
To by było na tyle
;-)
Ostatnio edytowany przez Jacekalex (2012-01-05 19:37:04)
Offline
Strony: 1
Time (s) | Query |
---|---|
0.00009 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00093 | 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.145.106.7' WHERE u.id=1 |
0.00172 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.145.106.7', 1732598217) |
0.00052 | SELECT * FROM punbb_online WHERE logged<1732597917 |
0.00075 | SELECT topic_id FROM punbb_posts WHERE id=189432 |
0.00052 | SELECT id FROM punbb_posts WHERE topic_id=20336 ORDER BY posted |
0.00058 | 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=20336 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.00074 | 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=20336 ORDER BY p.id LIMIT 0,25 |
0.00083 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=20336 |
Total query time: 0.00677 s |