Wykład 3 Filtracja i modyfikacja pakietów za pomocą iptables.

Podobne dokumenty
iptables/netfilter co to takiego?

Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

Instalacja i konfiguracja pakietu iptables

Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska

Co to jest iptables?

Pakiet Iptables. Filtrowanie pakietów i filtrowanie stanowe

Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska

Na podstawie: Kirch O., Dawson T. 2000: LINUX podręcznik administratora sieci. Wydawnictwo RM, Warszawa. FILTROWANIE IP

Sieci Komputerowe Translacja adresów sieciowych

Pakiet Iptables. Filtrowanie pakietów i filtrowanie stanowe

Iptables informacje ogólne

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat zapory sieciowej (firewall) oraz oprogramowania iptables.

Tomasz Greszata - Koszalin

Iptables. Krzysztof Rykaczewski. 15/11/06 1

Sieci komputerowe. Zajęcia 4 Bezpieczeństwo w sieciach komputerowych

Systemy programowych zapór sieciowych (iptables)

Linux. iptables, nmap, DMZ

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat zapory sieciowej.

Router programowy z firewallem oparty o iptables

Zapory sieciowe i techniki filtrowania danych

Wdrażanie i zarządzanie serwerami zabezpieczającymi Koncepcja ochrony sieci komputerowej

Warsztaty z Sieci komputerowych Lista 9

CONFidence 13/05/2006. Jarosław Sajko, PCSS

Najprostsza odpowiedź, jaka przychodzi mi do głowy to, z powodu bezpieczeństwa.

Teletransmisja i sieci komputerowe 2

iptables -F -t nat iptables -X -t nat iptables -F -t filter iptables -X -t filter echo "1" > /proc/sys/net/ipv4/ip_forward

Tomasz Greszata - Koszalin

Zarządzanie bezpieczeństwem w sieciach

Ściana ogniowa w systemie operacyjnym LINUX. Autor: Gładysz Krystian IVFDS

Zarządzanie ruchem w sieci małego ISP Michał Prokopiuk

Bezpieczeństwo w M875

Warsztaty z Sieci komputerowych Lista 8

Konfiguracja zapory sieciowej na routerze MikroTik

Oryginał tego dokumentu znajduje się pod adresem: HOWTO/index.html

Firewalle do zastosowań domowych

Warstwa sieciowa. Model OSI Model TCP/IP. Aplikacji. Aplikacji. Prezentacji. Sesji. Transportowa. Transportowa

Filtrowanie pakietów w Linuksie 2.4

Zadania do wykonania Firewall skrypt iptables

Przesyłania danych przez protokół TCP/IP

7. Konfiguracja zapory (firewall)

Gniazda surowe. Bartłomiej Świercz. Łódź,9maja2006. Katedra Mikroelektroniki i Technik Informatycznych. Bartłomiej Świercz Gniazda surowe

Ochrona sieci lokalnej za pomocą zapory sieciowej

Puk, puk! Kto tam? Eeeee... Spadaj!

Zabezpieczenia w systemach Linux. Autorzy: Krzysztof Majka, Mirosław Mika IVFDS

Zadanie1: Odszukaj w Wolnej Encyklopedii Wikipedii informacje na temat NAT (ang. Network Address Translation).

Załącznik D. Iproute2 i Wireless Tools

eth /30 eth1 eth /30 eth /30 Serwer IPERF

Filtrowanie pakietów IP minihowto

1. Zapora sieciowa stateless. Nie śledzi nawiązanych połączeń? Jest wrażliwa na spoofing?

Sieci komputerowe. Kompendium. Wydanie II

Unicast jeden nadawca i jeden odbiorca Broadcast jeden nadawca przesyła do wszystkich Multicast jeden nadawca i wielu (podzbiór wszystkich) odbiorców

ZiMSK NAT, PAT, ACL 1

Instrukcja obsługi urządzenia RW1NET

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Opracowany na podstawie

Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska

Jak blada twarz psuje serwer HTTP? Kamil Porembiński thecamels.org

Wstęp Rozdział 1. Sieci komputerowe Rozdział 2. Rodzaje nośników Rozdział 3. Warstwa dostępu do sieci standard Ethernet...

Listy dostępu systemu Cisco IOS

Filtrowanie stateful inspection w Linuksie i BSD

Systemy operacyjne i sieci komputerowe Szymon Wilk Adresowanie w sieciach Klasy adresów IP a) klasa A

8. Konfiguracji translacji adresów (NAT)

Bezpieczeństwo Systemów Telekomunikacyjnych 2014 / 2015 Bezpieczeństwo aplikacji sieciowych, Ataki (D)DoS Prowadzący: Jarosław Białas

Firewall'e. Cele firewalli

Jak omijać filtrację IP stosowaną przez firewalle i rutery

Laboratorium Sieci Komputerowych - 2

ZADANIE.07 Różne (tryb tekstowy i graficzny) 2h

DR INŻ. ROBERT WÓJCIK DR INŻ. JERZY DOMŻAŁ ADRESACJA W SIECIACH IP. WSTĘP DO SIECI INTERNET Kraków, dn. 24 października 2016r.

Protokół IPsec. Patryk Czarnik

Oryginał tłumaczenia znajduje się pod adresem:

Sieci komputerowe - administracja

praktyczne zastosowania mechanizmów QoS, Linuxowe HTB paweł kudzia

ZADANIE.07 Różne (tryb tekstowy i graficzny) 2h

Firewall bez adresu IP

DHCP + udostępnienie Internetu

Linux -- u mnie działa!

Spoofing. Wprowadzenie teoretyczne

Firewalle, maskarady, proxy

PROFESJONALNE SYSTEMY BEZPIECZEŃSTWA

SIECI KOMPUTEROWE LABORATORIUM ĆWICZENIE 5. Analiza ruchu sieciowego z wykorzystaniem programu WIRESHARK Cz. I podstawy.

Zarządzanie bezpieczeństwem w sieciach dr inż. Robert Banasiak, mgr inż. Rafał Jachowicz, Instytut Informatyki Stosowanej PŁ, 2013

Adresy w sieciach komputerowych

Poniższe schematy przedstawiają dwa najpopularniejsze układy sieci w organizacjach (szkołach, firmach, itp.). Wyłączając specyficzne konfiguracje

Narzędzia diagnostyczne protokołów TCP/IP

Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych

Podstawy Transmisji Danych. Wykład IV. Protokół IPV4. Sieci WAN to połączenia pomiędzy sieciami LAN

Sieci komputerowe. Kompendium

netfilter/iptables FAQ

Aby lepiej zrozumieć działanie adresów przedstawmy uproszczony schemat pakietów IP podróżujących w sieci.

Serwer ISP Monitorowanie ruchu i parametrów systemu (załącznik) Serwer ISP Monitorowanie ruchu. 1. Statystyki graficzne

Narzędzia do diagnozowania sieci w systemie Windows

Laboratorium sieci komputerowych Firewall

Bezpieczeństwo sieci. Sieci komputerowe. Wykład 13. Marcin Bieńkowski

FreeBSD czyli nie taki diabeł straszny cz. 2 TLUG

ADRESY PRYWATNE W IPv4

2017/04/18 10:44 1/10 Proxmox. Instalujemy minimalną wersję Debiana - czyli: podstawowe narzędzia oraz SSH.

2 Wymagania dotyczące tworzenia pakietów protokołu RIP

Podstawy administracji systemu Linux

Zarządzanie Jakością Usług w Sieciach Teleinformatycznych

Instrukcja programu Wireshark (wersja 1.8.3) w zakresie TCP/IP

Transkrypt:

Wykład 3 Filtracja i modyfikacja pakietów za pomocą iptables. mechanizm trawersacji pakietów w jądrze Linux części składowe iptables: reguły, łańcuchy, tablice kryteria dopasowania (ang. matching) pakietu, operacje na łańcuchach, decyzje. przykłady działania iptables firewalling dobre praktyki

iptables/netfilter co to takiego? iptables Jądro Linuksa netfilter Netfilter ogólny szkielet operacji na pakietach zaimplementowany w jądrze Linuksa (od 2.4.x). Na podstawie wczytanych kryteriów sprawdza nagłówki (i ew. zawartość) pakietów decydując o ich dalszym losie (akceptacja, odrzucenie, modyfikacja). Iptables narzędzie do manipulacji regułami w mechanizmie filtracji pakietów (netfiltrze) w jądrze. Dodaje reguły do netfiltra w oparciu o poprawną składnię przekazaną z linii poleceń.

Firewalling po co? Kontrola i bezpieczeństwo Modyfikacja danych na poziomie IP i TCP/UDP Optymalizacja ruchu

Iptables podstawowe pojęcia Reguła zestaw warunków determinujący dalszy los pakietu. Łańcuch zbiór reguł pod kątem których sprawdzany jest pakiet. Tablica zestaw łańcuchów zapewniający konkretną funkcjonalność systemu (filter, nat, mangle)

Reguły, łańcuchy, tablice - przykład Chain INPUT (policy DROP 301K packets, 24M bytes) pkts bytes target prot opt in out source destination 7951 607K ACCEPT icmp -- * * 0.0.0.0/0 0.0.0.0/0 4 196 ACCEPT all -- lo * 0.0.0.0/0 0.0.0.0/0 reguła Chain FORWARD (policy DROP 143K packets, 9024K bytes) pkts bytes target prot opt in out source destination 3850K 727M DROP all -- eth0 * 192.168.0.0/24 0.0.0.0/0 4389K 3334M ACCEPT all -- ppp0 * 0.0.0.0/0 0.0.0.0/0 łańcuch Chain OUTPUT (policy ACCEPT 45M packets, 43G bytes) pkts bytes target prot opt in out source destination 221K 31M DROP all -- * ppp0 0.0.0.0/0 0.0.0.0/0 2825K 3655M DROP all -- * * 0.0.0.0/0 10.0.0.0/8 tablica

Trawersacja pakietu przez mechanizm netfiltra PREROUTING mangle nat (DNAT) POSTROUTING mangle nat (SNAT) FORWARD DECYZJA RUTINGU filter mangle INPUT filter mangle PROCES LOKALNY OUTPUT filter mangle nat

iptables ogólna składnia iptables komenda łańcuch kryteria -j cel,decyzja Przykłady: iptables -A INPUT -i eth0 -j DROP iptables -I FORWARD -s 192.168.0.1 -p tcp -j ACCEPT

iptables - Operacje na łańcuchach, spis komend (fragment) Komenda Opis Przykład -A, --append -D, --delete -I, --instert -L, --list -F, --flush Dodanie reguły do łańcucha (na końcu) Usunięcie podanej reguły z łańcucha Wstawienie reguły do łańcucha (na początek) Wypisanie wszystkich reguł w łańcuchu Opróżnienie łańcucha ze wszystkich reguł -A INPUT -i eth0 -j DROP -D INPUT -i eth0 -j DROP -D INPUT 1 -I INPUT -i eth0 -j DROP -L INPUT -F INPUT -P INPUT DROP -P, --policy Ustawienie polityki dla łańcucha -P OUTPUT ACCEPT -Z, --zero Zerowanie licznika łańcucha -Z FORWARD -N, --new Tworzenie nowego łańcucha -N test

iptables - Kryteria dopasowania pakietu (fragment) Kryterium Opis Przykład -p protokół -p tcp -p! icmp -s Adres źródłowy -s 192.168.0.5 -s! 10.0.0.0/8 -d Adres docelowy -d 192.168.14.1 -i Interfejs przychodzący -i eth0 -i! ppp0 -o Interfejsc wychodzący -o wlan0 --dport Port docelowy --dport 80 --dport! 22 --sport Port źródłowy --sport 5555 --syn Pakiet rozpoczynający sesje TCP --tcp-flags Rodzaj flag tcp --tcp-flags SYN,ACK --icmp-type Rodzaj komunikatu ICMP --icmp-type echo-reply --fragment Pakiet fragmentu

iptables - Kryteria rozszerzone (-m moduł) Kryterium Opis Przykład --mac-source Adres sprzetowy MAC --mac-source 00:60:08:91:cc:b7 --limit Limit predkości przesyłania --limit 1/s pakietów --limit 30/m --ttl-eq Wartość pola TTL --ttl-eq 64 --uid-owner UID procesu do którego należy gniazdo --uid-owner 1001 --days Dzień tygodnia --days mon,tue --src-cc Kraj z którego pochodzi pakiet (baza GEOIP) --src-cc pl,uk --average Średnie prawdopodobieństwo --average 33

iptables - Decyzja (cel, Cel 'target') Opis -j ACCEPT Akceptacja pakietu -j DROP Odrzucenie pakietu -j LOG Logowanie pakietu (bez podjęcia decyzji) -j REJECT Odrzucenie pakietu z wysłaniem informacji do nadawcy(icmp) -j RETURN Brak podjęcia decyzji (przydatne jako funkcja licznika pakietów) -j MASQUARADE Dokonanie operacji SNAT -j MIRROR Zamiana adresu źródłowego z docelowym -j QUEUE Kolejkowanie pakietu dla programu zewnętrznego

iptables Inne tablice (-t nat) Tablica NAT Używana gdy istnieje potrzeba skorzystania z mechanizmu sieciowej translacji adresów iptables t nat A POSTROUTING o ppp0 j SNAT to source 1.2.3.4 iptables t nat A POSTROUTING o ppp0 j MASQUERADE iptables t nat A PREROUTING i ppp0 p tcp dport 46629 j DNAT \ to 192.168.0.9:46629 iptables t nat A PREROUTING i eth0 p tcp dport 80 j REDIRECT\ to port 8192 Tablica Mangle Używana gdy istnieje potrzeba zaawansowanej modyfikacji pakietów (np. pola TTL, TOS, mark,flag TCP, itp.) iptables t mangle A POSTROUTING p icmp j ROUTE oif eth1 iptables t mangle A POSTROUTING p icmp j TTL ttl inc 1 iptables t mangle A POSTROUTING p icmp j TOS set tos 0x10

Trawersacja pakietu przez mechanizm netfiltra iptables N test iptables A INPUT <kryteria> j test iptables nl <-- tworzenie nowego łańcucha <-- skok do nowego łańcucha <-- wyświetlenie reguł we wszystkich łańcuchach Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT icmp 0.0.0.0/0 0.0.0.0/0 test tcp 0.0.0.0/0 0.0.0.0/0 ACCEPT udp 0.0.0.0/0 0.0.0.0/0 Chain test (1 references) target prot opt source destination DROP all 192.168.0.1 0.0.0.0/0 ACCEPT all 0.0.0.0/0 10.0.0.4 Koniec trawersacji! [1] [2] [3] Pakiet TCP SRC=192.168.0.1 DST=123.45.67.89

Trawersacja pakietu przez mechanizm netfiltra - c.d. iptables N test iptables A INPUT <kryteria> j test iptables nl <-- tworzenie nowego łańcucha <-- skok do nowego łańcucha <-- wyświetlenie reguł we wszystkich łańcuchach Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT icmp 0.0.0.0/0 0.0.0.0/0 test tcp 0.0.0.0/0 0.0.0.0/0 ACCEPT udp 0.0.0.0/0 0.0.0.0/0 Chain test (1 references) target prot opt source destination DROP all 192.168.0.1 0.0.0.0/0 ACCEPT all 0.0.0.0/0 10.0.0.4 Koniec trawersacji! [1] [2] [3] Pakiet UDP SRC=192.168.1.100 DST=10.1.13.4

Trawersacja pakietu przez mechanizm netfiltra - c.d. iptables N test iptables A INPUT <kryteria> j test iptables nl <-- tworzenie nowego łańcucha <-- skok do nowego łańcucha <-- wyświetlenie reguł we wszystkich łańcuchach Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT icmp 0.0.0.0/0 0.0.0.0/0 test tcp 0.0.0.0/0 0.0.0.0/0 ACCEPT udp 0.0.0.0/0 0.0.0.0/0 Chain test (1 references) target prot opt source destination DROP all 192.168.0.1 0.0.0.0/0 ACCEPT all 0.0.0.0/0 10.0.0.4 Koniec trawersacji! [6] [1] [2] [3] [4] Pakiet TCP SRC=192.168.1.100 DST=10.1.13.4

Firewalling dobre praktyki Utrzymuj możliwie jak najmniejszą liczbę reguł Nie dubluj kryteriów w kolejnych regułach Nastawiaj reguły na odp. komputerach Reguły o największym prawdopodobieństwie trafienia ustawiaj najwcześniej Używaj własnych łańcuchów dla przejrzystości zapisu

Tematyka wykładu 3 podsumowanie mechanizm trawersacji pakietów w jądrze Linux części składowe iptables: reguły, łańcuchy, tablice kryteria dopasowania (ang. matching) pakietu, operacje na łańcuchach, decyzje. przykłady działania iptables firewalling dobre praktyki