Firewall w Linuksie cz2

styczeń 30th, 2010

Jak działa zapora?
Poprzez zaporę ogniowa rozumiemy program który filtruje pakiety, wychwytuje te niepożądane. Dzieje się to wszystko na zasadzie reguł które musimy wprowadzić do zapory. Zapora może też być dedykowanym sprzętem. Najbardziej popularną zaporą jest iptables. Mechanizm ten posiadają jądra Linuksa począwszy od wersji 2.4. Program ten działa między stosem sieciowym a warstwą gniazdek. To jej bezpośrednio używają programy użytkowe. Filtruje on pakiety wychodzące i przychodzące do serwera. Za pomocą polecenia netstat –t zobaczymy aktywne połączenia typu TCP. Do używania tej zapory potrzebujemy narzędzi userspace.. Przystępujemy do instalacji będzie to polecenie: apitude install iptables. Firewall ten działa na zasadzie łańcuchów, sa ich trzy rodzaje INPUT, OUTPUT, FORWARD. Pierwsze dwa filtrują pakiety przychodzące, wchodzące i wychodzące a ostatni analizuje pakiety które nie są do niego adresowane tylko na przykład przesyłane do innej podsieci. Konfigurację iptables można przeprowadzić za pomocą odpowiednich komend z linni poleceń. Przykładowa reguła:

sudo iptables –A OUTPUT –d 207.46.197.32 –j DROP

Polecenie to zabrania dostępu do komputera 207.46.197.32
Iptables może usuwać pakiety ale i logować je do LOG. Oprócz rozpoznawania pakietów iptables posiada wiele dodatkowych modułów używa się je w następujący sposób:

Iptables … –m moduł –moduł-parametry_modułu …

Liczba modółow jest bardzo duża postaram się przedstawić kilka najbardziej przydatnych. Pierwszym niech będzie addrtype rozpoznaje on pakiet po typie adresu może to być np. LOCAL. Kolejny moduł to connbytes, rozpoznaje on pakiet po ilości danych przesłanych w jednej sesji protokołu TCP. Można w ten sposób określić reguły dla pobierania dużych plików. Moduł odpowiadający za rozpoznanie pakietów tego samego typu a właściwie ich ilości to connlimit. Jeśli moduł wykryje za dużo połączeń to może je przekserować.
NAT czyli Network Address Translation jest technologią powszechnie używaną a odpowiada za to brak możliwości połączenia z komputerem (który jest w wewnętrznej sieci) oraz ograniczenie malejącej póli adresów Ipv4. Można użyć tej technologii posługując się iptables. Kolejnym sposobem na ochronę jest port knocking. Każdy serwer ma uruchomiony kilka portów, minimum jeden który służy do jego administracji np. SSh czy telnet. Aby zminimalizować ryzyko ataku można zastosować właśnie port knocking