Ethernet lokalna mreža - zemris.fer.hr. Mehanizmi... · Mreže računala Sadržaj •Sigurnosne...
Transcript of Ethernet lokalna mreža - zemris.fer.hr. Mehanizmi... · Mreže računala Sadržaj •Sigurnosne...
222Mreže računala
Sadržaj
• Sigurnosne stijene (Firewall)
• Implementacija sigurnosne stijene u Linux OS-u
• Tuneliranje
• Virtualne privatne mreže
333Mreže računala
Sigurnosne stijene (1)
• Stavljaju se na granicu privatne i javne mreže• Štite privatnu mrežu od vanjskih prijetnji
• Unutarnje prijetnje se ne rješavaju!
• Također služe za nadzor izlaznog prometa• iz privatne u javnu mrežu
• Kontroliraju promet na mrežnom sloju• Uređaji mrežnog sloja
444Mreže računala
Sigurnosne stijene (2)
• Tipovi sigurnosnih zaštitnih stijena• Bez stanja (Stateless)
• Nikakvo stanje se ne čuva niti mijenja bez obzira što prošlo kroz sigurnosnu stijenu
• Sa stanjem (Statefull)
• Danas dominantni, ili isključivo korišteni
• Prolazak paketa kroz sigurnosnu stijenu može stvariti stanje koje će utjecati na neki drugi paket
• Ne mogu raditi samo na temelju informacije iz 3. i nižih slojeva!
555Mreže računala
Sigurnosne stijene (3)
• Sigurnosne stijene na tržištu imaju daleko više funkcionalnosti
• Koriste informacije iz prijenosnog sloja
• Sadrže podršku za NAT
• Aplikacijski posrednici
• Svi moderni operacijski sustavi imaju ugrađenu određenu funkcionalnost sigurnosne stijene
• Linux, FreeBSD, OpenBSD, Windows, ...
• Bitniji proizvođači i proizvodi• CheckPoint FW-1, Cisco PIX
666Mreže računala
Arhitektura korištenja (1)
• Zaštita interne mreže• Moguć izlazak klijenata unutar Intraneta na Internet
• S Interneta nije moguć pristup računalima unutar Intraneta
777Mreže računala
Arhitektura korištenja (2)
• U određenim situacijama imamo poslužitelje• Njima mora biti moguće pristupiti s Interneta
• Kako ne bi dozvolili pristup Intranetu uvodimo posebnu zonu – Demilitarizirana Zona (DMZ)
888Mreže računala
Arhitektura korištenja (3)
• Za dodatnu sigurnost možemo koristiti dva Firewall-a
• Korištenje proizvoda različitih proizvođača
• Izloženiji Internetu bez stanja radi otpornosti na DoS napade
999Mreže računala
Sigurnosna stijena u Linux OS-u (1)
• Linux sigurnosna stijena temelji se na sustavu NETFILTER
• Točke u jezgri operacijskog sustava gdje se donosi odluka o paketima
• IPtables je sustav koji implementira sigurnosnu stijenu
• Temeljna komponenta je program iptables
101010Mreže računala
Sigurnosna stijena u Linux OS-u (2)
• Prikaz putovanja paketa kroz Linux jezgru• Slika prikazuje tri lanca: INPUT, FORWARD i OUTPUT
• Podrazumijevaju se filter tablice (fitrirajuće tablice)
FORWARDDOLAZNIPAKETI SMREŽE
PREGLEDAVANJETABLICE
PROSLIJEĐIVANJA
ODLAZAKPAKETA NAMREŽU
INPUT
APLIKACIJE
OUTPUT
APLIKACIJE
111111Mreže računala
Sigurnosna stijena u Linux OS-u (3)
• Kada paket stigne• Dobija oznaku na koje sučelje je stigao
• Prolazi odluku usmjeravanja• Ako je za lokalno računalo provjeravaju se pravila u lancu
INPUT
• Ako je za neko drugo računalo i šalje se na mrežu prolazi kroz lanac FORWARD
• Ako lokalne aplikacije generiraju promet• Paketi prolaze kroz OUTPUT lanac
121212Mreže računala
Sigurnosna stijena u Linux OS-u (4)
• U svakom lancu nalazi se niz pravila• Pravilo se sastoji od selektora i akcije
• Selektor svakog pravila se uspoređuje s paketom• Akcija prvog pravila čiji selektor odgovara paketu se izvršava
• Ako niti jedno pravilo ne odgovara primjenjuje se podrazumijevana akcija (POLICY)
• Dobra sigurnost podrazumijeva da se sve zabrani (podrazumjevana akcija sve brani)
• Potom se selektivno propušta željeni promet
131313Mreže računala
Upravljanje lancima
• Za upravljanje se koristi naredba iptablesiptables -P <lanac> <politika>
Promjena politike lanca (podrazumijevana akcija)
iptables -A <lanac> <pravilo>
Dodavanje pravila u lanac na kraj
iptables -I <lanac> <pravilo>
Dodavanje pravila u lanac na početak
iptables -D <lanac> <pravilo>
Brisanje pravila iz lanca
iptables -F <lanac>
Uklanjanje svih pravila iz lanca
141414Mreže računala
Pravila
• Svako pravilo se sastoji od• selektora
• Određuje što se u paketu uspoređuje i s čim
• Primjer selektora: odredišna adresa je 192.168.0.1
• Selektor se može sadržavati više parametara
• Primjer: odredište 192.168.0.1, izvorište 192.168.0.2
• Svi navedeni parametri moraju odgovarati!
• akcije• Određuje što će biti s paketom ako selektor odgovara
• Primjer akcije: odbaci paket
• Neke akcije imaju dodatne parametre
151515Mreže računala
Akcije
• Akcije određuju što se dešava s paketom• DROP
• Paket se odbacuje bez ikakve daljnje akcije
• ACCEPT
• Paket se prihvaća
• REJECT (rijetko se koristi)• Paket se odbacuje s ICMP porukom o grešci
• Kod dodavanja pravila akcije su argument opciji -j; Kod politike lanca navode se samostalno-j ACCEPT; -P ACCEPT
161616Mreže računala
Selektori (1)
• Prema ulaznom i/ili izlaznom sučelju• Primjerice, ako paket dolazi iz interne mreže i odlazi na
Internet
• Definira se opcijama -i (za ulazno sučelje) i/ili -o (za izlazno sučelje)-i eth0
• Informacije o ulaznom i izlaznom sučelju nisu uvijek dostupne!
171717Mreže računala
Selektori (2)
• Po podacima iz IP zaglavlja• Izvorišne i/ili odredišne IP adrese i mreže
• Paketi s odredištem 192.168.0.1: -d 192.168.0.1
• Paketi s izvorištem iz mreže 10.0.0.0/24: -s 10.0.0.0/24
• Po podacima iz zaglavlja prijenosnog sloja• Moramo odabrati protokol višeg sloja
-p tcp|udp|icmp
• Korištenje portova, izvorišnog (--sport) i odredišnog (--dport)
181818Mreže računala
Selektori (3)
• Selektore je moguće kombinirati• Jednostavno navođenje pojedinih selektora
• Svi su povezani s logičkom operacijom I
• Moguće je negirati vrijednost pojedinog selektora
-i \! eth0
Ulazno sučelje nije eth0
Znak \ zbog ljuske, jer uskličnik inače ima posebno značenje
• Ako nam treba ILI tada moramo pisati selektore u odvojenim pravilima!
191919Mreže računala
Propuštanje odgovora (1)
• Problem• Dodajemo pravilo koje pušta paket van
• Međutim, treba onda propustiti i odgovor
• Ako propuštamo odgovore može se pojaviti i propustiti paket koji nije odgovor niti na jedan zahtjev!
• Automatsko vođenje evidencije o očekivanim odgovorima
• Dodajemo pravilo koje propušta kroz OUTPUT lanac
• Dodajemo posebno pravilo u INPUT (ili FORWARD) lanac koje će puštati odgovore!
202020Mreže računala
Propuštanje odgovora (2)
• Pravilo se dodaje na sljedeći način
iptables -A INPUT \-m state \–-state RELATED,ESTABLISHED \-j ACCEPT
• To pravilo se može dodati u bilo koji lanac• Ovisno što nam treba!
• Stanje ESTABLISHED odnosi se na spojnu komunikaciju (TCP)
• Stanje RELATED odnosi se na bespojnu komunikaciju (UDP, ICMP)
212121Mreže računala
Problem javnih i privatnih adresa
• Problem izlaska privatnih adresa na Internet• Nisu rutabilne i neće stići do odredišta!
222222Mreže računala
Detaljan prikaz lanaca i tablica u Linuxu (1)
MANGLE
DOLAZNIPAKETI SMREŽE
FORWARDING
ODLAZAKPAKETA NAMREŽU
NAT MANGLE FILTER
MANGLE
FILTER
MANGLE NAT
NAT
FILTER
MANGLE
PREROUTING FILTER POSTROUTING
INPUT
OUTPUT
232323Mreže računala
Detaljan prikaz lanaca i tablica u Linuxu (2)
• Dodavanje pravila
• S opcijama -A, -D, -I biramo lanac
• S opcijom -t biramo tablicu
242424Mreže računala
SNAT
• Promjena izvorišne adrese• Source NAT
• Promjena adresa u IP paketima obavlja se neposredno prije izlaska paketa iz računala
• Cilj (target) SNAT
• Primjer
iptables -A POSTROUTING -t nat \-s 192.168.0.2 -o eth1 \-j SNAT –-to-source 10.0.0.1
252525Mreže računala
DNAT
• Promjena odredišne adrese• Source NAT
• Promjena adresa u IP paketima obavlja se neposredno nakon dolaska paketa u računala
• Cilj (target) DNAT
• Primjer
iptables -A PREROUTING -t nat \-s 192.168.0.2 -o eth1 \-j SNAT –-to-destination 10.0.0.1
262626Mreže računala
Tuneliranje
• Nije nužno mehanizam ostvarivanja sigurnosti
• Različite implementacije• IP u IP, GRE, L2TP
• Svi imaju problema s MTU-om
• Na labosima radimo isključivo IP u IP• Vrlo jednostavan protokol
• Na istom principu rade i svi ostale metode
• Notacija za zapisivanjeIP(DST1, SRC1, IP(DST2, SRC2))
• DST1, SRC1 vanjske adrese; DST2, SRC2 unutarnje adrese
272727Mreže računala
Virtualne privatne mreže (1)
• Ostvariti privatnu mrežu nad nekom postojećom mrežom.
• Virtualna budući da ne postoji kao zasebna mreža
• Privatna jer se isključivo koristi za vlastite potrebe
• Mnoštvo mogućih rješenja• Velika većina uključuje kriptiranje, ali ne sva
• Moguće ih je ostvariti na različitim slojevima, primjerice
• Aplikacijski sloj (SSL, SSH)
• Mrežni sloj (MPLS, IPsec)
282828Mreže računala
Virtualne privatne mreže (2)
• MPLS virtualne privatne mreže• Nema kriptiranja
• Upotrebljavaju stog labela
• IPsec virtualne privatne mreže• Arhitektura za ostvarivanje sigurnosti na Internetu
• Definira ponašanje čvorova i protokole koje čvorovi koriste
• Opcionalni protokoli u IPv4, obavezni u IPv6
• Trenutno aktualna druga verzija
• 12. mjesec 2005.
292929Mreže računala
IPsec arhitektura (1)
• Definira ponašanje čvorova i način na koji obrađuju IP pakete [RFC4301]
• Ponašanje definirano preko sljedećih baza
• SPD (Security Policy Database)• Definira što se štiti
• Sastoji se od zapisa
• (traffic selector, akcija)
• Selektori prometa biraju pakete na osnovu IP adresa, protokola prijenosnog sloja, pristupa, ...
• Akcija je BYPASS, DISCARD, PROTECT
303030Mreže računala
IPsec arhitektura (2)
• SAD (Security Association Database)• Definira kako se štiti
• Kripto algoritmi i ključevi
• PAD (Peer Authorization Database)• Definira tko smije čemu pristupati
313131Mreže računala
IPsec protokoli (1)
• Dva protokola mrežnog sloja• ESP (Encaspulated Security Policy)
• Obavezan protokol, služi za enkripciju
• AH (Authenticated Header)
• Neobavezan protokol, pruža dokaz autentičnosti
• Dva načina rada• Prijenosni način rada: Ne mjenjaju se IP adrese iz zaglavlja
• Tunel način rada: Vrši se pakiranje jednog IP paketa u drugi
• IKEv2 (Internet Key Exchange v2)• Protokol za razmjenu ključeva
323232Mreže računala
Primjer upotrebe IPsec-a
• Komunikacija klijenta i poslužitelja
• Baza SAD prazna, SPD zahtijeva zaštićenu komunikaciju
IKEv2
Linux Kernel Linux Kernel
Client IKEv2 Server
1 2
3
4 4
5
6
Initiator Responder