Ce este firewall si cum functioneaza?

Blog: OS
Firewall-ul este un sistem care ofera securitate retelei filtrand traficul care intra si iese pe baza unui set de reguli stabilite de utilizator. in general, scopul firewall este de a reduce sau de a elimina aparitia unei comunicatii nedorite in retea, permitand comunicatiilor legitime sa se desfasoare normal.

Introducere

Firewall-ul este un sistem care ofera securitate retelei filtrand traficul care intra si iese pe baza unui set de reguli stabilite de utilizator. in general, scopul firewall este de a reduce sau de a elimina aparitia unei comunicatii nedorite in retea, permitand comunicatiilor legitime sa se desfasoare normal. in majoritatea infrastructurilor de servere, firewall-ul ofera o protectie de securitate, care combinata cu alte masuri impiedica atacatorii sa acceseze serverele in moduri rau intentionate.

In acest articol vom discuta cu functioneaza firewall-ul, cu un accent mai mare pe firewall-ul stateful, cum ar fi ip-urile de masa si ID-ul firewall deoarece acestea se refera la servere-le cloud. Apoi vom discuta despre o varietate de subiecte relevante legate de firewall-ul stateful.

Pachetele TCP (Transport Control Protocol - Protocolul de Control al Transmisiei)

Inainte de a discuta despre diferitele tipuri de firewall, haide sa aruncam o scurta privire la cum arata traficul in reteaua de Protocolul de Control al Transmisiei (TCP).

Traficul TCP se misca in jurul unei retele in pachete, care sunt containere cu un pachet titlu, acestea contin informatii de control ca sursa si adresa  de destinatie, si pachetul secventa de informatie  si datele (cunoscute si sarcina utila). In timp ce informatia de control a fiecarui pachet ajuta sa se asigure ca datele sale sunt livrate in mod corespunzator, elementele pe care le contin furnizeaza firewall-ului o varietate de modalitati pentru a potrivi pachetele dupa regulile firewall.

Este important sa notam ca pentru primirea cu succes a pachetelor TCP receptionate este necesar ca receptorul sa trimita pachetele de confirmare inapoi la expeditor. Combinatia de control a informatiei in pachete de intrare si iesire poate fi folosita pentru a determina (de expemplu nou, stabil, legat) starea de conectare intre expeditor si receptor.

Tipuri de Firewall

Haideti sa discutam despre cele trei tipuri de firewall de baza: filtrarea de pachete (stateless, este un protocol de comunicatii care trateaza fiecare solicitare ca pe o tranzactie independenta si care nu are legatura cu nici o solicitare precedenta, comunicarea fiind formata din perechi independente de solicitari - raspuns), stateful – (este un firewall de retea care urmareste starea de functionare si caracteristicile conexiunilor de retea care o traverseaza) si nivelul de aplicatie.

Filtrarea de pachete sau stateless firewall lucreaza inspectand pachete individuale in mod izolat. Ca atare, ei nu sunt constienti de starea de izolare si pot doar permite sau refuza pachetele bazate pe pachete header individuale.

Firewall-urile stateful sunt in masura sa determine starea de conexiune a pachetelor ceea ce le face mai flexibile decat firewall-urile stateless. Ele lucreaza colectand pachete asociate pana cand starea de conectare poate fi determinata inainte ca orice reguli de firewall sa fie aplicate traficului.

Firewall-ul de aplicatii merg cu un pas inainte analizand informatia care este transmisa, ceea ce permite traficului de retea sa se potriveasca impotriva regulilor firewall care sunt specifice pentru servicii individule sau aplicatii. Aceste sunt cunoscute ca firewall-uri bazate pe proxy.

In plus fata de software-ul firewall, care este disponibil pe toate sistemele de operare moderne, functionalitatea firewall-ului poate fi oferita si de dispozitivele hardware, cum ar fi routere si aparate firewall. inca odata discutia noastra se va axa pe soft-ul firewall stateful care ruleaza pe serverele care le sunt destinate sa le protejeze.

Regulile Firewall

Asa cum am mentionat mai sus, traficul de retea care traverseaza un firewall este potrivit impotriva regulilor pentru a determina daca ar trebui sa fie permis prin intermediul sau sau nu.  Cea mai simpla modalitate prin care putem explica regulile firewall este prin folosirea catorva exemple.

Sa presupunem ca avem un server cu o lista de reguli firewall care se aplica traficului de intrare:

Accepta traficul de intrare nou si stabileste interfata retelei publice de pe portul 80 si 443 (trafic web HTTP si HTTPS);
Redu traficul primit de la adresele IP ale angajatilor din biroul non-tehnic la portul 22 (SSH);
Accepta traficul de intrare nou si stabileste traficul primit de la IP-ul biroului catre interfata retelei private de pe portul 22 (SSH).
De remarcat ca primul cuvant din fiecare  exemplu este “accept”, „reject” sau „drop”. Aceasta  specifica actiunea pe care firewall-ul ar trebui sa o faca in cazul in care o parte din traficul de retea se potriveste cu o regula. Accept permite traficul prin, reject blocheaza traficul si da o eroare ”unreachable” de negasit, iar drop blocheaza traficul fara sa ofere raspuns. Restul regulilor constau in conditia ca fiecare pachet este compensat impotriva.

Dupa cum se dovedeste, traficul de retea este potrivit impotriva unei liste de reguli firewall, secvente sau lanturi de la inceput la final. Mai exact, odata ce o regula este potrivita, actiunea asociata este aplicata traficului de retea in cauza. in exemplul nostru, daca un angajat contabil incearca sa stabileasca o conexiune SSH la server, acesta va fi respins pe baza regulii nr. 2, inainte de regula nr. 3 si chiar verificat. Un administrator de sistem va fi acceptat pentru ca se va potrivi cu regula nr. 3.

Politica implicita

Este tipic pentru un lant de reguli firewall sa nu acopere in mod explicit toate conditiile posibile. Din acest motiv lantul firewall trebuie intotdeauna sa aiba o politica implicita specificata, care consta intr-o actiune (accept, reject sau drop).

Sa presupunem ca politica implicita de exemplu lantul de mai sus a fost setat la drop. Daca orice computer din afara biroului incearca sa stabileasca o conexiune SSH cu serverul, traficul va fi oprit pentru ca nu se potriveste cu nici o conditie si cu nici o regula.

Daca politica de securitate implicita a fost setata pe accept, oricine cu exceptia propriilor angajati din afara departamentului tehnic, va putea stabili o conexiune cu orice serviciu deschis de pe server. Acesta este un exemplu de slaba configurare firewall pentru ca tine doar o parte din angajati in afara.

Traficul de intrare si iesire

Traficul unei retele, din perspectiva unui server, poate fi de intrare sau de iesire, un firewall mentine un set distinct de reguli pentru fiecare din aceste cazuri. Traficul care isi are originea in alta parte, traficul de intrare, este tratat in mod diferit fata de traficul de iesire pe care serverul il trimite. Este tipic pentru un server sa permita cele mai multe iesiri de trafic, deoarece serverul are de obicei “incredere” in iesirile proprii. Totusi, regulile de iesire pot fi folosite pentru a preveni comunicarea nedorita in cazul in care un server este compromis de catre un atacator sau un executabil rau intentionat.

Pentru a maximiza beneficiile de securitate ale unui firewall, trebuie sa identificati toate caile prin care doriti ca alte sisteme sa interactioneze cu server-ul, trebuie sa creati reguli explicite care sa permita oprirea traficului. Retine ca normele de iesire trebuie sa fie setate pentru ca server-ul sa permita trimiterea confirmarilor de iesire catre orice conexiune de intrare. De asemenea un server va avea nevoie sa initieze propriul trafic de iesire din diverse motive, de exemplu descarcarea de actualizari sau conectarea la o baza de date – de asemenea este important sa includa acele cazuri in setul de reguli de iesire.

Scrierea Regulilor de Iesire

Sa presupunem ca exemplul nostru de firewall traficul de iesire este setat implicit la drop. Acest lucru insemna ca regulile de intrare accept vor fi inutile fara niste reguli de iesire complementare.

Pentru a complementa exemplul regulilor firewall de intrare (1 si 3) din sectiunea Firewall Rules si pentru a permite comunicarea corespunzatoare cu privire la acele adrese si porturi care apar, am putea folosi aceste reguli firewall de iesire:

Accepta traficul de iesire stabilit la interfata retelei publice de pe portul 80 si 443 (HTTP si HTTPS);
Accepta traficul de iesire stabilit la interfata retelei private de pe portul 22 (SSH)

De observat ca nu trebuie sa scriem o regula explicita pentru traficul de intrare care sa permita (regula 2), deoarece server-ul nu are voie sa confirme sau sa stabileasca acea conexiune.

Soft-ul si Instrumentele Firewall

Acum ca am vazut cum functioneaza firewall-ul sa aruncam o privire la pachetele comune de software care ne pot ajuta sa configuram efectiv un firewall. Desi exista multe alte pachete legate de firewall, acestea sunt eficiente si sunt cele pe care le vom intalni adesea.

Iptables

Iptables este un firewall standard care e inclus implicit in majoritatea distributiilor Linux (o varianta moderna numita nftables va incepe sa il inlocuiasca). Este defapt un capat frontal pentru carligele de la nivelul karnel-ului care poate manipula grupul de retea Linux. Actioneaza prin potrivirea fiecarui  pachet care traverseaza interfata retelei impotriva unui set de reguli pentru a decide ce e de facut.

UFW

UFW care vine de la Uncomplicated Firewall este o interfata pentru iptables care este orientata spre simplificarea procesului de configurate a unui firewall.

FirewalID

FirewallD este o solutie completa de firewall care este disponibila implicit pe servere-le cu CentOS 7. De altfel, FirewalID utilizeaza iptables pentru a configura netfilter.

Fail2ban

Fail2ban este software de prevenire a intruziunilor care poate configura automat firewall-ul pentru a bloca tentativele de conectare brute force si atacurile DDOS.

Concluzii

Acum ca ati inteles cum functioneaza firewall-ul, ar trebui sa cautati sa implementati un firewall care sa va imbunatateasca setarile de securitate a server-ului.

Din aceeasi categorie

Te muti la noi?

Ai gratuit transfer fisiere, import baze de date, transfer adrese de email si configurarea acestora !