Introducere în IPTABLES: configurați un firewall pe Linux

iptables

la configurați un firewall sau firewall în Linux, putem folosi iptables, un instrument puternic care pare uitat de mulți utilizatori. Deși există și alte metode, cum ar fi tabelele ebtable și arptables pentru a filtra traficul la nivelul link-ului sau Squid la nivelul aplicației, iptables pot fi foarte utile în majoritatea cazurilor, implementând o bună securitate în sistemul nostru la nivelul traficului și al transportului net.

Kernel-ul Linux implementează iptables, o parte care se ocupă de filtrarea pachetelor și că în acest articol vă învățăm să configurați într-un mod simplu. Pur și simplu, iptables identifică ce informații pot și nu pot intra, izolând echipa de potențialele amenințări. Și, deși există și alte proiecte precum Firehol, Firestarter etc., multe dintre aceste programe firewall folosesc iptables ...

Ei bine, Să ne apucăm de treabă, cu exemple veți înțelege totul mai bine (pentru aceste cazuri este necesar să aveți privilegii, deci folosiți sudo în fața comenzii sau deveniți root):

Modul general de a utiliza iptables pentru a crea o politică de filtrare este:

IPTABLES -ARGUMENTE I / O ACTION

Unde este -ARGUMENT argumentul pe care îl vom folosi, în mod normal -P pentru a stabili politica implicită, deși există altele precum -L pentru a vedea politicile pe care le-am configurat, -F pentru a șterge o politică creată, -Z pentru a reseta contorii de octeți și pachete etc. O altă opțiune este -A pentru a adăuga o politică (nu implicită), -I pentru a insera o regulă într-o anumită poziție și -D pentru a șterge o regulă dată. De asemenea, vor exista și alte argumente pentru a indica protocoalele -p, –portul sursă sport, –portul pentru portul de destinație, -i interfața de intrare, -o interfață de ieșire, -sursa IP sursă și -d adresa IP de destinație.

iptables intrare-ieșire

Mai mult, I / O ar reprezenta dacă politică se aplică la intrarea INPUT, la ieșirea OUTPUT sau este o redirecționare de trafic FORWARD (există altele precum PREROUTING, POSTROUTING, dar nu le vom folosi). În cele din urmă, ceea ce am numit ACTION poate lua valoarea ACCEPT dacă acceptăm, RESPINGE dacă respingem sau DROP dacă eliminăm. Diferența dintre DROP și REJECT este că atunci când un pachet este respins cu REJECT, mașina care a originat-o va ști că a fost respinsă, dar cu DROP acționează în tăcere și atacatorul sau originea nu va ști ce s-a întâmplat și nu va să știm dacă avem un firewall sau conexiunea tocmai a eșuat. Există, de asemenea, altele precum LOG, care trimit o urmărire a syslog-ului ...

Pentru a modifica regulile, putem edita fișierul iptables cu editorul de text preferat, nano, gedit, ... sau putem crea scripturi cu reguli (dacă doriți să le suprascrieți, puteți face acest lucru punând un # în fața liniei, astfel încât să fie ignorat ca un comentariu) prin consola cu comenzi așa cum o vom explica aici. În Debian și derivate puteți utiliza, de asemenea, instrumentele iptables-save și iptables-restore ...

Cea mai extremă politică este de a bloca totul, absolut tot traficul, dar acest lucru ne va lăsa izolați, cu:

iptables -P INPUT DROP

Pentru a accepta totul:

iptables -P INPUT ACCEPT

Dacă vrem asta tot traficul de ieșire de la echipa noastră este acceptat:

iptables -P OUTPUT ACEPT

La o altă acțiune radicală ar fi ștergerea tuturor politicilor din iptables cu:

iptables -F

Să mergem la reguli mai concreteImaginați-vă că aveți un server web și, prin urmare, traficul prin portul 80 trebuie permis:

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Și dacă pe lângă regula anterioară, ne dorim o echipă cu iptables să poată fi văzut doar de computerele din subrețeaua noastră și asta trece neobservat de o rețea externă:

iptables -A INPUT -p tcp -s 192.168.30.0/24 --dport 80 -j ACCEPT

În linia anterioară, ceea ce spunem iptables este să adăugăm o regulă -A, astfel încât intrările INPUT și protocolul TCP, prin portul 80, să fie acceptate. Acum imaginează-ți că vrei navigarea pe web este respinsă pentru mașinile locale care trec prin mașina care rulează iptables:

iptables -t filter -A FORWARD -i eth1 -o eth0 -p tcp --dport 80 DROP

Cred că utilizarea este simplă, ținând cont de la ce servește fiecare parametru al iptables, putem adăuga reguli simple. Puteți face toate combinațiile și regulile pe care ni le imaginăm ... Pentru a nu mă extinde mai mult, trebuie doar să adăugați încă un lucru și că, dacă mașina este repornită, politicile create vor fi șterse. Tabelele sunt repornite și vor rămâne ca înainte, prin urmare, odată ce ați definit regulile bine, dacă vrei să le faci permanente, trebuie să le faceți să se lanseze de pe /etc/rc.local sau dacă aveți un Debian sau derivate utilizați instrumentele care ni se oferă (iptables-save, iptables-restore și iptables-apply).


Conținutul articolului respectă principiile noastre de etică editorială. Pentru a raporta o eroare, faceți clic pe aici.

4 comentarii, lasă-le pe ale tale

Lasă comentariul tău

Adresa ta de email nu va fi publicată.

*

*

  1. Responsabil pentru date: AB Internet Networks 2008 SL
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   Jimmy Olano el a spus

    Acesta este primul articol pe care îl văd despre IPTABLES care, deși dens - necesită un nivel mediu de cunoștințe -, SE DIRECȚIE ÎN GRAN DIRECT.

    Recomand tuturor să îl folosească ca „manual de referință rapidă”, deoarece este foarte bine condensat și explicat. 8-)

  2.   ISUS el a spus

    Mi-ar plăcea să vorbiți într-un articol viitor despre dacă schimbarea la systemd în majoritatea distribuțiilor Linux, afectează într-un fel siguranța Linux în general și dacă această schimbare este în bine sau mai rău în viitor și distribuțiile Linux. Aș dori, de asemenea, să știu ce se știe despre viitorul lui devuan (debian fără systemd).
    Vă mulțumesc foarte mult că faceți articole foarte bune.

  3.   Slevin el a spus

    Ai putea să faci un articol care să explice masa mangle?

  4.   Sebastian el a spus

    Blocați numai Facebook?