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,
Caly czas gryzie mnie dylemat rozwiazan routerowo/firewallowych. Probuje znalezc na necie jakies informacje, porwnania tych powiedzmy firewall'i. Niestety nic ciekawego nie znalazlem. Na codzien korzystam z PF, dziala wysmienicie, bardzo szybko, lecz brakuje mi tej hmm szczegolowosci co w iptables. Stad moje pytania. Czy skutecznosc w zwalczaniu i mozliwosc konfiguracji w PF jest taka sama jak w IPtables ? Jak wyglada sprawa z radzeniem sobie podczas ddos'ow, spoofingu, roznych innych technik falszowania pakietow i tym podobne. Nie zapytam co jest lepsze bo nigdy nie dojdziemy do konsensusu (co jest oczywiste).
Czy ktos sie interesowal nftables ? Jak wyglada sprawa z przyszloscia, czytalem tu na forum, ze ponoc ma powstac jakis translator z iptables na nftables, cos ktos wie ?
Za kazda dyskusje bede wdzieczny,
Z gory dziekuje,
Pozdrawiam,
Ostatnio edytowany przez bryn1u (2014-05-05 11:19:09)
Offline
To pewnie widziałeś:
http://en.wikipedia.org/wiki/Nftables
https://wiki.archlinux.org/index.php/Nftables
Ma zastąpić Iptables, wynika to ze zmiany konstrukcyjnej, netfilter ma teraz działać nie bezpośrednio w przestrzeni kernela, ale jako maszyna wirtualna, co ma poprawić bezpieczeństwo.
Kiedy będzie gotowy? kiedy wszystkie istotne funkcje z iptables, arptables, ebtables zostaną zaimplementowane w nowym interfejsie.
Ale to pewnie nastąpi nieprędko.
Jest trochę wzorowany na PF, także dla Ciebie będzie chyba łatwiejszy.
Iptables vs PF?
PF integruje w sobie firewalla, kontrolę pasma, nat i pasywną identyfikację systemu operacyjnego.
W netfilterze iproute zarządza routingiem i pasmem, iptables firewallem, a cześć funkcji i tak jest dostępna przez sysctl, lub /proc/*.
Pod tym względem PF jest prostszy w obsłudze.
Skuteczność jest praktycznie jednakowa, w typowych zastosowaniach, przy czym konfiguracja jest totalnie inna, nawet nie jest za bardzo podobna.
Ostatnio edytowany przez Jacekalex (2014-05-05 11:21:06)
Offline
Ja w środowiskach produkcyjnych używam OpenBSD z PF i działa bardzo dobrze. Po wczytaniu się w manual, ma naprawdę sporo możliwości.
Offline
[quote=jurgensen]Ja w środowiskach produkcyjnych używam OpenBSD z PF i działa bardzo dobrze. Po wczytaniu się w manual, ma naprawdę sporo możliwości.[/quote]
A cos w rodzaju timestart i timestop w iptables ? W sensie blokowanie torrentow w godzinach np od timestart 17:00 do timestop 20:00 ? Jest taka mozliwosc ?
Pozdrawiam,
Offline
Bezpośrednio w PF nie ma takiej możliwości, ale robię to inaczej. Tworzę tablicę, która domyślnie jest pusta. Następnie do crona dodaję zadanie, które przez pfctl zapełnia tablicę lub oczyszcza ją w określonych godzinach.
Offline
[quote=bryn1u][quote=jurgensen]Ja w środowiskach produkcyjnych używam OpenBSD z PF i działa bardzo dobrze. Po wczytaniu się w manual, ma naprawdę sporo możliwości.[/quote]
A cos w rodzaju timestart i timestop w iptables ? W sensie blokowanie torrentow w godzinach np od timestart 17:00 do timestop 20:00 ? Jest taka mozliwosc ?
Pozdrawiam,[/quote]
W nftables jeszcze nie wiem, ale jakbyś kiedyś zajrzał do mana iptables, to zobaczysz taki fragment dotyczący modułu time.
Skrócona pomoc pojawi się tak na konsoli po wpisaniu:
iptables -m time --help
Tu masz dokumentację po polsku:
http://pl.wikibooks.org/wiki/Sieci_w_Linuksie/Netfilter
Jeśli w tych swoich ebookach ze stopki nie znalazłeś, to może się przydać. ;)
Pozdro
;-)
Offline
@Jacekalex
Dokladnie chodzilo mi o ten przyklad:
iptables -I FORWARD -s 192.168.0.11 -m time --timestart 17:00 --timestop 22:00 -m ipp2p --ipp2p -j DROP
@jurgensen
tak wlasnie myslalem, ze jest to zrobione, za pomoca cron. Jeszcze takie pytanie do Ciebie czy uzywasz jakis odpowiednik typu psad, snort do detekcji, albo czy moze znasz, polecasz jakis pod pf'a.
Ostatnio edytowany przez bryn1u (2014-05-05 13:39:41)
Offline
Osobiście nie używam, ale z tego, co się orientuję, snorta można całkiem ładnie zintegrować z PF. Sam snort może słuchać na interfejsie pflog. Natomiast wybrany ruch ze snorta może być blokowany przy użyciu tablic/kotwic (jest np. skrypt snort2pf).
Offline
Psad to jest proteza z czasów chyba Ipchains, podobnie jak Portsentry.
O wiele lepsze i stabilniejsze rezultaty osiągniesz w samym iptables modułami CONNLIMIT, hashlimit i recent, PF też ma możliwości podobnego limitowania połączeń, podobnie jak serwery np Lighttpd, Nginx czy Apache.
Snort ma teoretycznie bardzo fajne reguły, ale te najnowsze są płatne.
Może np wykrywać przy serwerze SSH zbyt dużą porcję nieszyfrowanych danych przesłanych przy inicjowaniu połączenia, ale jakoś nie ma podobnej opcji dla protokołu SSL, i między innymi dlatego najważniejsza dziura w Openssl - tls-heartbeat spokojnie sobie wisiała przez dwa lata, przez nikogo nie odkryta, choć w Snorcie są mechanizmy, pozwalające teoretycznie na wykrywanie podobnych anomalii.
Dlatego Snorta nie brałbym do zabezpieczania usług internetowych,
bo tu się w ogóle nie nadaje, daje tylko iluzję zabezpieczenia i tony fałszywych alarmów, natomiast nieźle się sprawdza przy wykrywaniu nietypowej i podejrzanej aktywności w sieci LAN, odgrodzonej od internetu firewallem.
Z modułem ipp2p bym nie przesadzał, jego skuteczność przy większości protokołów jest raczej mierna, przy szyfrowanym torrencie w ogóle nie występuje.
Offline
Czy jest moze jakas tabelka/porownanie jakie zmiany zaszly. Co nie przeczytam w internecie to wszystko opiera sie na starym np: state jak @jaceklex wspomnial w poprzednim moim temacie lub moduly, ktore zostaly zastapione innymi. A stare dokumentacje opisuja stare rozwiazania :(
Offline
Tabelka, żeby zobaczyć?
Każdą tabelę możesz sobie obejrzeć z osobna:
Tabele Netfiltera mają nazwy:
filter raw nat mangle security
Wyświetlenie zawartości tabeli zrobisz przez:
iptables -t {tabela} -S
Bez oznaczenia tabeli domyślnie pokaże tabelę filter.
Tabelą security się na razie nie zajmuj, na niej się przypisuje pakietom konteksty selinuxa, jak będziesz miał roczek wolnego czasu,
i będzie Ci się bardzo nudziło, to możesz się SElinuxem pobawić gruntownie. :D.
Offline
Time (s) | Query |
---|---|
0.00010 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00138 | 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.138.32.53' WHERE u.id=1 |
0.00094 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.138.32.53', 1733052462) |
0.00020 | SELECT * FROM punbb_online WHERE logged<1733052162 |
0.00039 | SELECT topic_id FROM punbb_posts WHERE id=265854 |
0.00111 | SELECT id FROM punbb_posts WHERE topic_id=25746 ORDER BY posted |
0.00029 | 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=25746 AND t.moved_to IS NULL |
0.00026 | SELECT search_for, replace_with FROM punbb_censoring |
0.00054 | 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=25746 ORDER BY p.id LIMIT 0,25 |
0.00085 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=25746 |
Total query time: 0.0061 s |