|
Introducere
• .
Permite totul in mod prestabilit ?i interzice explicit trecerea anumitor pachete. Termenul firewall (zid de foc, zid de protec?ie) are mai multe sensuri in func?ie de implementare ?i scop. Firewall-ul e o ma?in? conectat? la internet pe care vor fi implenmentate politicile de securitate. Va avea dou? conexiuni la dou? re?ele diferite. O plac? de re?ea este conectat? la Internet, iar cealalt? plac? la re?eaua local?. Orice pachet de informa?ie care vine din Internet ?i vrea s? ajung? în re?eaua local? trebuie întâi s? treac? prin firewall. Astfel c? firewall-ul devine locul ideal pentru implementarea politicilor de securitate de re?ea ?i pentru controlul accesului din exterior.
Politici firewall
O ma?in? firewall nu înseamn? nimic dac? nu sunt definite politici firewall. În genere, firewall-urile au dou? scopuri:
1. s? ?in? persoane (viermi/hackeri/crackeri) afar?.
2. s? ?in? persoane (angaja?i/copii) înn?untru.
Pentru un firewall exist? dou? moduri principale de abordare:
• Interzice totul in mod prestabilit ?i permite explicit trecerea anumitor pachete
Crearea unei politici firewall este, în esen??, destul de simpl?:
• trebuie stabilit ce este permis s? ies? din re?eaua local?, dar mai ales ce este permis s? intre în ea ( ce tipuri de pachete ?)
• trebuie stabilite serviciile pe care o s? le ofere firewall ?i la cine o s? ofere aceste servicii
• trebuie descrise tipurile de atacuri poten?iale pe care firewall-ul trebuie s? le opreasc?
Tipuri de firewall-uri
Exist? dou? tipuri de firewall-uri:
1. Firewall-uri de filtrare – care blocheaz? anumite pachete specifice
2. Servere Proxy – care stabilesc conexiuni de re?ea în exterior pentru calculatoarele din interiorul LAN-ului
Firewall-uri de filtrare a pachetelor (Packet Filtering Firewalls)
Firewall-urile de tip filtru de pachete sunt firewall-uri care pentru fiecare pachet IP care circula prin sistem (intra, iese sau este routat) verifica informatiile din antetul lui si in functie de acestea decide soarta pachetului: el poate sa lase pachetul sa treaca (ACCEPT) sau poate sa-l opreasca (REJECT/DENY). Acestea sunt operatiile mai importante pe care le poate efectua un filtru de pachete asupra unui pachet. Pe langa acestea, mai sunt si alte functii pe care le poate indeplini un filtru de pachete: mascare, redirectare, port forwarding care vor fi detaliate mai jos. Filtrul de pachete pentru sistemul de operare Linux este construit în interiorul kernel-ului. Un firewall de filtrare lucreaz? la nivelul re?ea. Informa?ia poate p?r?si sistemul doar dac? regulile firewall-ului o permit. Când pachetele ajung la firewall ele sunt filtrate dup? tip, adresa surs?, adresa destina?ie ?i num?r de port, informa?ii care sunt con?inute în orice pachet IP. Majoritatea routerelor de re?ea ofer? servicii de filtrare. De fapt firewall-ul este un fel de router. Pentru c? foarte pu?ine date sunt analizate ?i logate, firewall-urile de filtrare consum? mai pu?in timp CPU ?i creeaz? mai pu?ine întârzieri pe re?ea decat alte servicii de acest gen. Firewall-urile de filtrare nu suport? autentificarea prin parole. Un firewall identific? un utilizator doar dup? adresa IP de la care lucreaz?.
Printre avantajele firewall-urilor cu filtrare de pachete se numara si urmatoarele: controlul traficului (daca firewall-ul ruleaza pe gateway-ul spre alta retea atunci acesta poate sa permita (sa lase sa treaca) un anumit tip de trafic, pe cand alt tip de trafic poate sa-l opreasca – se poate restrictiona, astfel, traficul spre o anumita parte a internetului sau a altei retele exterioare), securitate sporita (cand linux box-ul dumneavoastra este singurul paravan care sta intre reteaua dumneavoastra locala si haosul din internet, este o idee buna aceea de a restrictiona accesul din exterior la porturile dumneavoastra deschise – astfel, se poate permite accesul la reteaua dumneavoastra locala numai din anumite locuri considerate sigure) si supravegherea retelei (daca o masina prost configurata sau virusata din reteaua dumneavostra locala incepe sa transmita la intamplare pachete in lumea exterioara este bine sa stiti acest lucru si sa remediati situatia).
Nucleele Linux au avut filtre de pachete inca de la seria 1.1. Prima generatie de filtre de pachete, bazata pe ipfw din BSD, a fost portata de Alan Cox in 1994. Aceasta a fost imbunatatita de Jos Vos si altii pentru nucleele 2.0; a fost introdus si un utilitar, ipfwadm, pentru a controla regulile de filtrare din kernel. In 1998, Rusty Russell cu ajutorul lui Michael Neuling au introdus utilitarul ipchains pentru controlul regulilor de filtrare din nucleele 2.2. In fine, in 1999, Rusty Russell a introdus o a patra generatie de utilitare pentru filtrarea pachetelor si anume iptables, pentru nucleele 2.4. Ne vom concentra in cele ce urmeaza asupra utilitarelor ipchains si iptables, acestea fiind de generatie noua.
Ipchains este firewall-ul implementat de kernelul linux. Ipchains este folosit pentru a seta, men?ine ?i inspecta regulile de firewall din kernelul de linux. Nucleul Linux intretine o serie de structuri interne numite reguli de fitrare. Aceste reguli pot fi împ?r?ite în patru categorii diferite (chains/lan?uri):
- IP input chain (pentru pachetele care intr?),
- IP output chain (pentru pachetele care ies),
- IP forwarding chain (pentru pachetele care trebuie rutate) ?i
- chain-uri definite de utilizator.
Pentru fiecare din aceste categorii este men?inut? o tabel? separat? de reguli în kernel. Primele trei chain-uri (tabele) sunt chain-uri predefinite (built-in) care exista deja in kernel, dar utilizatorul poate contrui si altele. O regul? specific? un criteriu pentru un pachet si o “tinta”. Tinta poate fi orice lant (built-in sau definit de utilizator) sau urmatoarele cuvinte rezervate: ACCEPT, DENY, REJECT, MASQ, REDIRECT si RETURN. Ea precizeaza ce se va intampla cu pachetul care verifica criteriul. Dac? pachetul nu se potrive?te cu criteriul respectiv, urm?toarea regul? din lan? este examinat?, daca nici aceasta regula nu contine un criteriu care sa se potriveasca cu pachetul nostru este examinata urmatoarea regula din lant si procesul continua in acelizator ori una din tintele speciale (specificate mai sus) care decid soarta unui pachet imediat. Daca intr-o regula aceasta optiune este omisa, regula care este verificata nu va influenta deloc soarta pachetului, dar counterii regulii vor fi incrementati.
|