Ghidul începătorului pentru tabelele IP

Ghidul începătorilor pentru IPTables

IPTables este numele unui sistem de firewall care funcționează prin linia de comandă pe Linux. Acest program este disponibil în principal ca utilitar implicit Ubuntu. Administratorii folosesc adesea firewall-ul IPTables pentru a permite sau bloca traficul în rețelele lor. Dacă sunteți nou la IPTables, unul dintre primele lucruri pe care trebuie să le faceți este să îl actualizați sau să îl instalați folosind următoarea comandă:

$ sudo apt-get instalare iptables

În timp ce utilizatorii care sunt noi în interfețele liniei de comandă găsesc, există o curbă de învățare atașată la IPTables, utilitatea în sine este suficient de simplă pentru a fi utilizată. Există o serie de comenzi de bază care acționează ca pâinea și untul dvs. pentru controlul traficului. Acestea fiind spuse, trebuie să fii foarte atent atunci când faci modificări la regulile IPTables. Introducerea comenzii greșite vă poate bloca din tabele IPT până la rezolvarea problemei din mașina fizică.

În acest articol, vă vom oferi un ghid de bază pentru tabele IPT și vă vom prezenta elementele fundamentale. Înainte de a ajunge la inima IPTables, trebuie să vă asigurați că aveți un VPA care rulează Ubuntu 16.04 și a mașină locală cu un client SSH. Dacă le aveți deja, este timpul să începeți.

Tutorial IPTables: lanțuri

Lanțuri tutorial iptables

Unul dintre conceptele fundamentale la care se poate face legătura cu IPTables este cel al lanțurilor. Un lanț este în esență o regulă. Tabelele filtrului au trei lanțuri pe care le veți întâlni pe tabelele IPT; INTRARE, REDIRECŢIONA și IEȘIRE.

  • INTRARE - Lanțul INPUT este regula care controlează pachetele primite. Aici puteți bloca sau permite conexiuni noi. Puteți face acest lucru pe baza portului, a protocolului și a adresei IP sursă.
  • REDIRECŢIONA - Lanțul FORWARD filtrează pachetele primite care sunt transmise către o altă locație finală. Este puțin probabil să utilizați acest lanț, cu excepția cazului în care dirijați sau căutați în mod special redirecționarea.
  • IEȘIRE - Lanțul OUTPUT este utilizat pentru a gestiona pachetele și conexiunile de ieșire. Este important să rețineți că dacă faceți un ping pe o gazdă externă, lanțul de intrare va fi folosit pentru a vă returna datele.

Comportament în lanț implicit

Poate doriți să săriți direct la configurarea anumitor reguli la început, dar trebuie mai întâi să faceți un pas înapoi pentru a defini comportamentul implicit. Pentru a identifica care este comportamentul implicit al lanțurilor dvs., va trebui să rulați comanda:

$ sudo iptables -L comanda

Aceasta va arăta următoarele:

regulile lanțului 2

user @ ubuntu: ~ $ sudo iptables -L -v
INTRARE în lanț (acceptare politică)
Chain FORWARD (politica ACCEPT)
LUPTAȚIA lanțului (politica ACCEPT)
utilizator @ ubuntu: ~ $

Această informație vă spune exact ce lanțuri dvs. sunt configurate să facă. În exemplu, lanțurile de intrare, înainte și ieșire au fost configurate pentru a accepta traficul. Aceste setări sunt un bun punct de plecare, deoarece nu blochează nicio conexiune pe care o puteți dori.

Cu toate acestea, dacă aflați că politicile dvs. nu acceptă conexiuni, puteți introduce fiecare dintre următoarele comenzi pentru a accepta toate conexiunile:

$ sudo iptables -policy INPUT ACCEPT$ sudo iptables - ACCEPT DE REZULTAT POLITIC$ sudo iptables - politice ACCEPȚI DE ÎNTREBARE

După ce setările prestabilite sunt aliniate pentru a accepta toate conexiunile, puteți controla accesul la tabelele IPT blocând adresele IP și numerele de port. Acest lucru vă permite să specificați ce conexiuni doriți să blocați, în loc să blocați totul în mod implicit.

Dacă lucrați cu informații deosebit de sensibile, puteți configura valorile implicite pentru a bloca automat toate conexiunile. În acest fel, puteți utiliza tabele IPT pentru a alege adrese IP individuale pe care doriți să le permiteți. Pentru a face acest lucru, trebuie să introduceți următoarea comandă:

$ sudo iptables -policy INPUT DROP$ sudo iptables -policy OUTPUT DROP$ sudo iptables -policy DROP FORWARD

Majoritatea utilizatorilor vor accepta mai bine toate conexiunile, dar merită să vă amintiți dacă lucrați pe un server de înaltă securitate.

Configurarea conexiunilor individuale

configurarea conexiunilor individuale

După ce ați configurat comportamentul implicit al lanțului, este timpul să configurați conexiunile individuale. Acesta este punctul în care configurați ceea ce se numește un răspuns specific conexiunii. Acest lucru spune în esență IPTables cum să interacționeze când este conectat la o adresă IP sau un port. Aceste răspunsuri sunt următoarele; ACCEPT, CĂDERE BRUSCA, RESPINGE.

După cum puteți vedea în imaginea de mai sus, utilizatorul a definit reguli de lanț pentru a permite, arunca sau respinge conexiunea pe baza cerințelor. Mai jos este o descriere a ceea ce presupune fiecare răspuns:

  • ACCEPT - Această configurație permite pur și simplu conexiunea să aibă loc.
  • CĂDERE BRUSCA - Drop blochează conexiunea fără a interacționa cu sursa în niciun fel.
  • RESPINGE - Aceasta blochează conexiunea încercată, dar trimite și un mesaj de eroare. În general, este să notificați sursa că încercarea de conectare a fost blocată de firewallul dvs..

Cum să permiteți sau să blocați conexiunile

Există multe moduri diferite de a bloca sau de a permite conexiunile în funcție de setările dvs. Exemplele de mai jos folosesc metoda de blocare ascunsă cădere brusca să renunțe la conexiuni fără nicio interacțiune. iptables -A ne permite să adăugăm detalii suplimentare la regulile stabilite de setările noastre de lanțuri implicite. Vedeți cum să utilizați această comandă pentru a bloca conexiunile de mai jos:

Blocarea unei singure adrese IP:

$ sudo iptables -A INPUT -S 10.10.10.10 -j DROP

În exemplul de mai sus, înlocuiți 10.10.10.10 cu adresa IP pe care doriți să o blocați.

Blocarea unei game de adrese IP:

$ sudo iptables -A INPUT -s 10.10.10.10.0 / 24 -j DROP

sau

$ sudo iptables -A INPUT -s 10.10.10.0/255.255.255/.0 -j DROP

Blocarea unui singur port:

$ sudo iptables -A INPUT -p tcp —dport ssh -s 10.10.10.10 -j DROP

Rețineți că „ssh poate fi înlocuit cu orice protocol sau număr de port. De asemenea, este important să rețineți că segmentul -p tcp al codului este utilizat pentru a vă referi la dacă protocolul pe care doriți să îl blocați utilizează UDP sau TCP.

Dacă protocolul utilizează UDP, atunci introduceți -p udp in loc de -p tcp. De asemenea, puteți bloca toate conexiunile din adresele IP introducând următoarea comandă:

$ sudo iptables -A INPUT -p tcp —dport ssh -jDROP

Comunicare bidirecțională: Tutorial IPTables pentru statele de conectare

Cele mai multe dintre protocoalele pe care le întâlniți necesită o comunicare pe ambele direcții pentru ca un transfer să aibă loc. Aceasta înseamnă că transferurile sunt constituite dintr-o intrare și o ieșire. Ceea ce intră în sistemul tău este la fel de important ca ceea ce iese. Stările de conexiune vă permit să amestecați și să potriviți între conexiunile cu două sensuri și conexiunile unidirecționale. În exemplul de mai jos, protocolul SSH a blocat conexiunile SSH de la adresa IP, dar le permite pe cele la adresa IP:

$ sudo iptables -A INPUT -p tcp -dport ssh -s 10.10.10.10 -m stare - stat NOU, STABILIT -J ACCEPT

$ sudo iptables -U OUTPUT -p tcp -sport 22 -d 10.10.10.10. -m stare - STAT STABILIT -J ACCEPT

După ce ați introdus o comandă pentru a schimba stările de conexiune, trebuie să vă salvați modificările. Dacă nu o faceți atunci când închideți utilitatea, configurația dvs. va fi pierdută. În funcție de sistemul de distribuție pe care îl utilizați, există o serie de comenzi diferite pe care le puteți utiliza:

Ubuntu:

$ sudo / sbin / iptables-economisiți

Red Hat / CentOS -

Economisiți $ sudo / sbin / service iptables

SAU

$ sudo  /etc/init.d/iptables salva 

Nu uita să folosești aceste comenzi este vital pentru că va elimina dificultatea de a configura de fiecare dată când încărcați utilitatea.

Ștergerea unei reguli

La fel de important ca să poți salva regulile este să le poți șterge. Dacă faceți o greșeală sau pur și simplu doriți să eliminați o regulă veche, puteți utiliza opțiunea -D comanda. Această comandă trebuie să fie combinată cu numărul regulii pe care o introduceți. Numărul indică IPTables care regulă urmează să fie ștersă. De exemplu, dacă ar trebui să introduceți:

$ sudo iptables -D INPUT 10

Apoi, a zecea regulă pe care ați configurat-o va fi ștearsă.

Dacă doriți să curățați casa și să eliminați o serie de reguli, puteți utiliza funcția -F comanda. Puteți face acest lucru introducând următoarele:

$ sudo iptables -F

Acest lucru va șterge întregul set de reguli și vă va efectua IPTable-ul.

Tabele IPT: Aflați regulile lanțului!

Asta încheie tutorialul nostru IPTables. După cum puteți vedea IPTables este un instrument versatil pentru blocarea și permițarea traficului Linux distribuții. Utilizarea utilitară implică în mod eficient configurarea configurațiilor implicite și crearea de reguli suplimentare. Configurațiile implicite vă vor permite să conturați intențiile dvs. largi de trafic pentru a permite sau refuza traficul; regulile vă vor permite să vă structurați abordarea în ceea ce privește adresele IP, porturile și protocoalele.

Am zgâriat suprafața doar cu potențial IPTables și există o mulțime de comenzi diferite pe care le puteți utiliza pentru a decide cum experimentați traficul pe serverul dvs. Cu toate acestea, vă recomandăm să reduceți elementele de bază înainte de a începe cu alte comenzi. De exemplu, veți dori să vă duceți capul în jurul regulilor de bază ale lanțurilor înainte de a vă angaja cu ceva mai specializat.

După ce v-ați obișnuit cu modul în care funcționează IPTables, puteți începe să încorporați și mai multe reguli pentru a vă personaliza experiența. În acest sens, veți putea specifica exact ce tip de conexiuni veți permite cu o precizie mult mai mare ca niciodată.

Brayan Jackson
Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me

About the author

Leave a Reply

Your email address will not be published. Required fields are marked *

+ 7 = 12

Adblock
detector