Netfilter. Csomagszűrés. Összeállította: Sallai András

Hasonló dokumentumok
Tűzfal építés az alapoktól. Kadlecsik József KFKI RMKI

IPTABLES. Forrás: Gregor N. Purdy: Linux iptables zsebkönyv

A netfilter csomagszűrő tűzfal

Alap tűzfal otthoni PC-re (iptables I)

Javaslat egy Iptables tűzfal konfigurációjára Számítógép hálózatok esszé Készítette : Veress Krisztián

T?zfalak elméletben és gyakorlatban. Kadlecsik József KFKI RMKI

Hálózatok építése és üzemeltetése

Számítógépes Hálózatok. 8. gyakorlat

IPTABLES II. Jelenlegi tűzfalunk így néz ki (IPTABLES I. rész):

nftables Kadlecsik József MTA Wigner FK

Netfilter: a jó, a rossz és a csúf. Kadlecsik József KFKI RMKI <kadlec@mail.kfki.hu>

Számítógépes hálózatok

Adatbiztonság a gazdaságinformatikában ZH december 7. Név: Neptun kód:

Készítette: Sallai András Terjesztés csak engedéllyel sallaia_kukac_fre _pont_hu

Számítógépes Hálózatok GY 8.hét

Számítógépes Hálózatok

Linux hálózati adminisztráció

Hálózati architektúrák laborgyakorlat

Számítógépes Hálózatok GY 9.hét

Számítógépes Hálózatok GY 8.hét

Témák. Betörés megelőző rendszerek. Mire használhatjuk az IDS-t? Mi az IDS? (Intruding Detection System)

Hálózatok építése és üzemeltetése

Foglalkozási napló. Informatikai rendszergazda 14. évfolyam

Fábián Zoltán Hálózatok elmélet

Tűzfalak működése és összehasonlításuk

Hálózatvédelem, biztonság

2019/02/12 12:45 1/13 ACL

Alap protokollok. NetBT: NetBIOS over TCP/IP: Name, Datagram és Session szolgáltatás.

URL-LEL ADOTT OBJEKTUM LETÖLTÉSE (1) URL-LEL ADOTT OBJEKTUM LETÖLTÉSE

Internet ROUTER. Motiváció

Tűzfal megoldások. ComNETWORX nap, I. 30. ComNETWORX Rt.

13. gyakorlat Deák Kristóf

A 35/2016. (VIII. 31.) NFM rendelet szakmai és vizsgakövetelménye alapján.

1/13. RL osztály Hálózati alapismeretek I. gyakorlat c. tantárgy Osztályozóvizsga tematika

Hálózati architektúrák és Protokollok GI 8. Kocsis Gergely

Számítógépek és hálózatok biztonsága laboratórium (BMEVIHI4401) SEC-2 mérés. v1.0. Számítógépes rendszerek sebezhetőségi vizsgálata

CISCO gyakorlati segédlet. Összeállította: Balogh Zoltán

Alkalmazásszintû proxyzás a Zorp segítségével (2. rész)

Fábián Zoltán Hálózatok elmélet

Általános rendszergazda Általános rendszergazda

applikációs protokollok

Sávszélesség szabályozás kezdőknek és haladóknak. Mátó Péter

Hálózati sávszélesség-menedzsment Linux rendszeren. Mátó Péter Zámbó Marcell

Hálózatok építése és üzemeltetése

Windows rendszeradminisztráció és Microsoft szerveralkalmazások támogatása. Kocsis Gergely, Supák Zoltán

Csomagsz rés Linux-Netlter környezetben


IPv6 alapok, az első lépések. Kunszt Árpád Andrews IT Engineering Kft.

* Rendelje a PPP protokollt az TCP/IP rétegmodell megfelelő rétegéhez. Kapcsolati réteg

Hálózati architektúrák és Protokollok GI - 9. Kocsis Gergely

HBONE rendszergazdák tanácsa

Hálózatkezelés. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Hálózatkezelés / 20

Az iptables a Linux rendszerek Netfilter rendszermagjának beállítására szolgáló eszköz.

Mérési útmutató a Hálózati protokollok vizsgálata proxy technológiával (Zorp) című méréshez

Hálózati rendszerek adminisztrációja JunOS OS alapokon

[SZÁMÍTÓGÉP-HÁLÓZATOK]

20. Tétel 1.0 Internet felépítése, OSI modell, TCP/IP modell szintjenek bemutatása, protokollok Pozsonyi ; Szemenyei

HOGYAN Packet Shaping - Gentoo Linux Wiki

Linux iptables csomagszűrési gyorstalpaló, kezdőknek...

III. Felzárkóztató mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

Bevezető. Az informatikai biztonság alapjai II.

Hálózati beállítások Készítette: Jámbor Zoltán 2016

Számítógép hálózatok

A Wireshark program használata Capture Analyze Capture Analyze Capture Options Interface

az egyik helyes választ megjelölte, és egyéb hibás választ nem jelölt.

Tartalom. Hálózati kapcsolatok felépítése és tesztelése. Rétegek használata az adatok továbbításának leírására. OSI modell. Az OSI modell rétegei

Általános rendszergazda Általános rendszergazda

Hálózati architektúrák és Protokollok PTI 6. Kocsis Gergely

Segédlet a Hálózati architektúrák és protokollok laborgyakorlathoz v0.6

Mérési útmutató a Hálózati protokollok vizsgálata proxy technológiával (Zorp) című méréshez

Kiskapu Kft. Minden jog fenntartva

Windows hálózati adminisztráció segédlet a gyakorlati órákhoz

Távközlési informatika Firewall, NAT. Dr. Beinschróth József

Infokommunikációs alkalmazásfejlesztő. Informatikai alkalmazásfejlesztő

Tájékoztató. Használható segédeszköz: -

Samba. SMB/CIFS hálózat, heterogén hálózatok. Készítette: Sallai András

Department of Software Engineering

Hálózati eszközök biztonsága

OpenBSD hálózat és NAT64. Répás Sándor

MINISZTERELNÖKI HIVATAL. Szóbeli vizsgatevékenység

Tisztelt Telepítő! 2. Ellenőrizze, hogy a modul engedélyezve van-e: Szekció [382] Opció 5 (alternatív kommunikátor) BE.

Mérési útmutató a Tűzfal megoldások a gyakorlatban (iptables, Zorp) című méréshez

A 35/2016. (VIII. 31.) NFM rendelet szakmai és vizsgakövetelménye alapján.

[SZÁMÍTÓGÉP-HÁLÓZATOK]

DDoS támadások, detektálás, védekezés. Galajda József - Core Transport Network Planning Expert

Hálózati réteg, Internet

A 35/2016. (VIII. 31.) NFM rendelet szakmai és vizsgakövetelménye alapján.

HÁLÓZATBIZTONSÁG III. rész

A Sangoma Technologies Intelligens

KÉPZETT VILLANYSZERELŐ SZAKEMBER

IPv6 Biztonság: Ipv6 tűzfalak tesztelése és vizsgálata

SZÁMÍTÓGÉP HÁLÓZATOK BIZTONSÁGI KÉRDÉSEI

OpenBSD hálózat és NAT64. Répás Sándor

SAMBA. Forrás: Lajber Zoltán: SAMBA alapok dia, SZIE

Könnyû álom (6. rész)

Windows hálózatok. IP cím. Hálózati kapcsolatok nyomonkövetése. < Windows


3. előadás. A TCP/IP modell jelentősége

VIII. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

Felhasználói kézikönyv Bázis, Aktív, Portál és Portál+ csomagokhoz

Átírás:

Netfilter Csomagszűrés Összeállította: Sallai András

Tűzfalak Csomagszűrő tűzfalak TCP/IP protokollok szintjén szűrünk Alkalmazás szintű tűzfalak lehetőség a tartalom alapján való szűrésre

Csomagszűrés A csomagszűrés tulajdonképpen a TCP/IP protokoll rétegein végrehajtott korlátozások, szabálylisták meghatározása

Működés Szabálylistákat állítunk fel A kernel minden beérkező csomagot végig futtat a listákon Az első egyező szabálynál végrehajtja az ott beállított tevékenységet Tevékenységek lehetnek: elfogadás eldobás naplózás

Használt parancs 1.3 kernel pf 2.0 kernel ipfwadm 2.2 kernel ipchains 2.4 kernel iptables 2.6 kernel iptables

LÁNCOK PREROUTING ROUTING FORWARD POSTROUTING ROUTING INPUT OUTPUT

Láncok PREROUTING interfészről jön a csomag, még routing előtt FORWARD routing után, ha a csomag nem lokális csomagnak szól POSTROUTING routing után miután egy csomag elhagyja a vermet INPUT routing után, ha a csomag lokális processznek szól OUTPUT routing előtt, ahogy ahogy egy lokális processztől megkapja a verem a csomagot

Csomagok sorsai - Célpontok ACCEPT a csomag folytatja útját DROP a csomag eldobása REJECT mint a DROP csak visszajelez LOG a csomagról naplóbejegyzés készül RETURN beépített láncnál alapirányelv saját láncnál az előző láncra kerül, köv. szab. QUEUE a csomag a usertér felé

Státusz illeszkedés -m state --state NEW Új kapcsolatot létesítő csomag. Lehet egy csomag sima ACK jelzős, mégis NEW Tehát: NEW!= --syn ESTABLISHED Egy csomag, mely létező kapcsolatot jelez (egy visszajelző csomag, vagy egy visszajelzett kapcsolaton kimenő csomag). RELATED Egy létező kapcsolathoz tartozó, de annak részét nem képező csomag, mint például egy ICMP hibaüzenet, vagy (beépített FTP modullal) egy ftp adatkapcsolatot létesítő csomag. INVALID Egy valamilyen okból nem azonosítható csomag: ez magában foglalja a memória túlcsordulásokat és az ICMP hibaüzeneteket, melyek nem felelnek meg egyetlen ismert kapcsolatnak sem. Általában ezek a csomagok eldobandók.

A szabályokról Minden lánc rendelkezik egy alapszabállyal (más néven irányelvvel). Az alapszabály külön kapcsolóval állítható. Az alapszabályra újabb szabályok építhetők, ezekből fog összeállni a szabálylista

Aktuális szabályok listázása? iptables -L iptables --list iptables -L INPUT iptables -t nat -L

Láncok ürítése iptables -F láncok szabályainak törlése (az alapértelmezett szabály megmarad) iptables -X saját láncok törlése iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT

Láncok alapszabályai iptables -P INPUT ACCEPT iptables -P INPUT DROP iptables -L INPUT

Szabályokról Szokásos helyzet, hogy az alapértelmezett szabályt DROP-ra állítom, és mindent egyenként engedélyezek. Ha távolról dolgozunk (ssh), akkor első dolgunk legyen a 53 port mellett a 22 port engedélyezése mielőtt beállítom az alapértelmezett DROP-ot! (Különben kitiltjuk magunkat!)

Szabályok kezelése iptables -A INPUT -p udp --sport 53 -j ACCEPT A beszúrt szabály lesz a második. A eredeti harmadik lesz iptables -I INPUT -p TCP --dport 80 -j ACCEPT iptables -I INPUT 2 -p TCP --dport 80 -j ACCEPT iptables -R INPUT 2 -p TCP --dport 80 -j DROP iptables -D INPUT 2 második szabály törlése második szabály cseréje

Példák hálózat/ip megadására iptables -A INPUT -p tcp -s 192.168.1.0/24 --sport 80 -j ACCEPT iptables -A INPUT -p tcp -d 192.168.3.0/24 --dport 80 -j ACCEPT iptables -A INPUT -p tcp -s 192.168.1.0/24 --sport 80 -d 192.168.4.0/24 -j ACCEPT iptables -A INPUT -p tcp -d 192.168.1.5 --dport 80 -j ACCEPT Az összes forrás megadása: -s 0/0 De ez olyan mintha semmit nem írtunk volna

OUTPUT és FORWARD lánc példa iptables -A FORWARD -p tcp -s $BELSOHALO -i eth1 -m state --state NEW,ESTABLISHED --dport 80 -j ACCEPT iptables -A OUTPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT

Loopback interface iptables -A INPUT -p all -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT Erre mindig szükség van, mert néhány dolog e nélkül nem működik.

Portok, átviteli protokoll DNS UDP 53 (Zóna transfer tcp!) SSH TCP 22 HTTP TCP 80 https TCP 443 smtp TCP 25 pop3 TCP 110 pop3s TCP 995 proxy TCP 8080 vagy 3128 ftp TCP 21 [ és 20 ]

Portok 2 samba UDP 137,138, TCP 139, 445 dhcp UDP 67,68 icmp ICMP nincs portja

ICMP iptables -A INPUT -p ICMP -d 192.168.1.1 -j ACCEPT iptables -A INPUT -p icmp --icmp-type echoreply -j DROP Biztonság miatt ilyen szabályokat szoktak még megadni, de ez csak önmagunk életének megkeserítése!

Samba portok netbios-ns 137/udp # NetBIOS Name Service netbios-dgm 138/udp # NetBIOS Datagram Service netbios-ssn 139/tcp # NetBIOS Session Service microsoft-ds 445/tcp # Microsoft Directory Service

Samba iptables -A INPUT -p udp --dport 137 -j ACCEPT iptables -A INPUT -p udp -m udp --dport 138 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp -- dport 139 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp -- dport 445 -j ACCEPT

FTP kapcsolatkövető modul modprobe ip_conntrack_ftp! Nem töltödik be magától! /etc/modules-be vegyük fel! Alapból szükséges: iptables -A INPUT -p TCP dport 21 -j ACCEPT

Aktív mód iptables -A INPUT -p TCP dport 20 -m state --state ESTABLISHED, RELATED -j ACCEPT iptables -A OUTPUT -p tcp sport 20 -m state --state ESTABLISHED -j ACCEPT

Passzív mód iptables -A INPUT -p TCP sport 1024: -m state --state ESTABLISHED,RELATED -j ACCEPT (Mindkét esetben legyen engedélyezve a DNS lekérés, mert lassó lesz a FTP kapcsolódás: iptables -A INPUT -p UDP sport 53 -j ACCEPT) Ha az OUTPUT lánc is szűrve van (passzív módnál csak 21 port): iptables -A OUTPUT -p tcp -s "szerver_ip_cím" --sport 20:21 -j ACCEPT

Maszkolás echo 1 > /proc/sys/net/ipv4/ip_forward iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE (A 192.168.1.0/24 a maszkolandó háózat. Az eth0 az Inernet felőli interface) Maszkolás beállításának ellenőrzése iptables -t nat -L

Klasszikus támadások védése # Letapogatás elleni védelem iptables -A INPUT -p tcp! --syn -m state --state NEW -j DROP # Syn-flood vedelem iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT # Alattomos portscan iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT # Halal pingje iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

Naplózás -j LOG --log-level Egy szám vagy név követi. "debug", "info", "notice", "warning", "err", "crit", "alert" és "emerg" (kis- vagy nagybetűsek egyaránt): a számok a felsorolás számai 7-0. A naplózási szintek részletei man syslog.conf --log-prefix Egy maximum 29 karakter hosszú szöveg, amely a log üzenetek elejére kerül (egyedi azonosítás lehetősége)

Naplózás beállítása Állítsuk be azt a szabályt amit naplózni szeretnénk, majd a cél legyen LOG. A naplózó szabály előbb legyen mint maga a szabály!!! iptables -A INPUT -t icmp -j LOG --log-prefix ICMP bárhonnan iptables -A INPUT -t icmp -j ACCEPT tail /var/log/syslog

Transzparens proxy iptables -A PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.1.2:3128 squid.conf (Squid 2.4-hez): http_port 3128 httpd_accel_host virtual httpd_accel_port 80 httpd_accel_with_proxy on httpd_accel_uses_host_header on httpd_accel_single_host off

Szabályok mentése, visszatöltése, automatizálása iptables-save > /etc/network/iptables iptables-restore < /etc/network/iptables cat > /etc/init.d/iptables #!/bin/sh echo Starting iptables... iptables-restore < /etc/network/iptables ln -s /etc/init.d/iptables /etc/rcs.d/s20iptables Az S39ifupdown előtt szokás indítani

Egy egyszerű script egy szerver esetén mejnek IP címe 195.199.8.20 iptables -F iptables -X iptables -P INPUT DROP Szerver: Apache, Postfix, MySQL,SSH iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT iptables -A INPUT -p udp -d 195.199.8.20 --dport 53 -j ACCEPT iptables -A INPUT -p tcp -d 195.199.8.20 --dport 80 -j ACCEPT iptables -A INPUT -p tcp -d 195.199.8.20 --dport 25 -j ACCEPT iptables -A INPUT -p tcp -d 195.199.8.20 --dport 110 -j ACCEPT iptables -A INPUT -p tcp --dport -d 195.199.8.20 3306 -j ACCEPT iptables -A INPUT -p tcp -d 195.199.8.20 --dport 22 -j ACCEPT

Irodalom http://www.netfilter.org http://www.szabilinux.hu/iptables http://troy.jdmz.net/samba/fw/ http://linuxbazar.uw.hu/lapok/iptables.html http://logi.cc/linux/netfilter-log-format.php3