Ghidul pentru începători pentru iptables, Paravanul de protecție Linux

Aug 27, 2025
Confidențialitate și securitate

Iptables este un utilitar firewall extrem de flexibil construit pentru sistemele de operare Linux. Indiferent dacă sunteți un novice Linux geek sau un administrator de sistem, probabil că există o modalitate prin care iptables vă pot fi de mare folos. Citiți mai departe în timp ce vă arătăm cum să configurați cel mai versatil firewall Linux.

Despre iptables

iptables este un utilitar firewall din linia de comandă care folosește lanțuri de politici pentru a permite sau bloca traficul. Când o conexiune încearcă să se stabilească pe sistemul dvs., iptables caută o regulă în lista sa cu care să se potrivească. Dacă nu găsește una, recurge la acțiunea implicită.

iptables vine aproape întotdeauna preinstalat pe orice distribuție Linux. Pentru a-l actualiza / instala, preluați doar pachetul iptables:

sudo apt-get install iptables

Există alternative GUI la iptables cum ar fi Firestarter , dar iptables nu este chiar atât de greu odată ce aveți câteva comenzi în jos. Doriți să fiți extrem de atenți atunci când configurați regulile iptables, mai ales dacă sunteți SSH într-un server, deoarece o comandă greșită vă poate bloca permanent până când este fixată manual la mașina fizică.

Tipuri de lanțuri

iptables utilizează trei lanțuri diferite: intrare, redirecționare și ieșire.

Intrare - Acest lanț este utilizat pentru a controla comportamentul conexiunilor de intrare. De exemplu, dacă un utilizator încearcă să acceseze SSH în computerul / serverul dvs., iptables va încerca să potrivească adresa IP și portul cu o regulă din lanțul de intrare.

Redirecţiona - Acest lanț este utilizat pentru conexiunile de intrare care nu sunt de fapt livrate local. Gândiți-vă la un router - datele îi sunt trimise întotdeauna, dar rareori sunt destinate propriu-zis routerului; datele sunt redirecționate doar către ținta sa. Cu excepția cazului în care efectuați un fel de rutare, NAT sau altceva pe sistemul dvs. care necesită redirecționare, nici măcar nu veți folosi acest lanț.

Există o modalitate sigură de a verifica dacă sistemul dvs. folosește / are nevoie de lanțul direct.

iptables -L -v

Captura de ecran de mai sus este a unui server care rulează de câteva săptămâni și nu are restricții asupra conexiunilor de intrare sau de ieșire. După cum puteți vedea, lanțul de intrare a procesat 11 GB de pachete, iar lanțul de ieșire a procesat 17 GB. Lanțul direct, pe de altă parte, nu a fost necesar pentru a procesa un singur pachet. Acest lucru se datorează faptului că serverul nu efectuează niciun fel de redirecționare sau nu este utilizat ca dispozitiv de trecere.

Ieșire - Acest lanț este utilizat pentru conexiunile de ieșire. De exemplu, dacă încercați să faceți ping howtogeek.com, iptables îi va verifica lanțul de ieșire pentru a vedea care sunt regulile referitoare la ping și howtogeek.com înainte de a lua o decizie de a permite sau refuza încercarea de conectare.

Avertismentul

Chiar dacă ping-ul unei gazde externe pare ceva care ar trebui doar să traverseze lanțul de ieșire, rețineți că pentru a returna datele, va fi utilizat și lanțul de intrare. Când utilizați iptables pentru a vă bloca sistemul, amintiți-vă că o mulțime de protocoale vor necesita o comunicare bidirecțională, astfel încât atât lanțurile de intrare cât și cele de ieșire vor trebui configurate corect. SSH este un protocol comun pe care oamenii uită să-l permită pe ambele lanțuri.

Comportamentul implicit al lanțului de politici

Înainte de a intra și de a configura reguli specifice, va trebui să decideți care doriți să fie comportamentul implicit al celor trei lanțuri. Cu alte cuvinte, ce doriți să facă iptables dacă conexiunea nu corespunde niciunei reguli existente?

Pentru a vedea ce lanțuri de politici sunt configurate în prezent să facă cu trafic de neegalat, rulați iptables -L comanda.

După cum puteți vedea, am folosit și comanda grep pentru a ne oferi o ieșire mai curată. În această captură de ecran, lanțurile noastre se presupun că acceptă traficul.

De mai multe ori, veți dori ca sistemul dvs. să accepte conexiuni în mod prestabilit. Dacă nu ați modificat anterior regulile lanțului de politici, această setare ar trebui să fie deja configurată. Oricum ar fi, iată comanda de acceptare a conexiunilor în mod implicit:

iptables --policy INPUT ACCEPT
iptables --policy ACCEPT DE IEȘIRE
iptables --policy ACCEPTARE ÎNAINTE

Prin implicit la regula de acceptare, puteți utiliza apoi iptables pentru a refuza anumite adrese IP sau numere de port, în timp ce continuați să acceptați toate celelalte conexiuni. Vom ajunge la acele comenzi într-un minut.

Dacă preferați să refuzați toate conexiunile și să specificați manual care dintre ele doriți să vă permiteți conectarea, ar trebui să modificați politica implicită a lanțurilor dvs. pentru a renunța. A face acest lucru ar fi probabil util numai pentru serverele care conțin informații sensibile și care au întotdeauna aceleași adrese IP conectate la acestea.

iptables --policy INPUT DROP
iptables --policy OUTPUT DROP
iptables --policy FORDARD DROP

Răspunsuri specifice conexiunii

Cu politicile implicite de lanț configurate, puteți începe să adăugați reguli la iptables, astfel încât să știe ce să facă atunci când întâlnește o conexiune de la sau la o anumită adresă IP sau port. În acest ghid, vom trece în revistă cele trei „răspunsuri” cele mai de bază și cele mai utilizate.

Accept - Permiteți conexiunea.

cădere brusca - Renunță la conexiune, acționează ca și cum nu s-ar fi întâmplat niciodată. Acest lucru este cel mai bun dacă nu doriți ca sursa să realizeze că sistemul dvs. există.

Respinge - Nu permiteți conexiunea, dar trimiteți înapoi o eroare. Acest lucru este cel mai bun dacă nu doriți ca o anumită sursă să se conecteze la sistemul dvs., dar doriți să știe că firewall-ul le-a blocat.

Cel mai bun mod de a arăta diferența dintre aceste trei reguli este de a arăta cum arată atunci când un PC încearcă să facă ping pe o mașină Linux cu iptables configurate pentru fiecare dintre aceste setări.

Permiterea conexiunii:

Renunțarea la conexiune:

Respingerea conexiunii:

Permiterea sau blocarea conexiunilor specifice

Cu lanțurile de politici configurate, puteți configura acum iptables pentru a permite sau bloca anumite adrese, intervale de adrese și porturi. În aceste exemple, vom seta conexiunile la CĂDERE BRUSCA , dar le puteți comuta la ACCEPT sau RESPINGE , în funcție de nevoile dvs. și de modul în care v-ați configurat lanțurile de politici.

Notă: în aceste exemple, vom folosi iptables -A pentru a adăuga reguli lanțului existent. iptables începe în partea de sus a listei sale și trece prin fiecare regulă până când găsește una care se potrivește. Dacă trebuie să inserați o regulă deasupra alteia, puteți utiliza iptables -I [chain] [number] pentru a specifica numărul care ar trebui să fie în listă.

Conexiuni de la o singură adresă IP

Acest exemplu arată cum să blocați toate conexiunile de la adresa IP 10.10.10.10.

iptables -A INPUT -s 10.10.10.10 -j DROP

Conexiuni dintr-o serie de adrese IP

Acest exemplu arată cum să blocați toate adresele IP din gama de rețea 10.10.10.0/24. Puteți utiliza o notă mască de rețea sau o bară standard pentru a specifica intervalul de adrese IP.

iptables -A INPUT -s 10.10.10.0/24 -j DROP

sau

iptables -A INPUT -s 10.10.10.0/255.255.255.0 -j DROP

Conexiuni la un anumit port

Acest exemplu arată cum să blocați conexiunile SSH de la 10.10.10.10.

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

Puteți înlocui „ssh” cu orice protocol sau număr de port. -p tcp o parte din cod spune iptables ce tip de conexiune utilizează protocolul. Dacă blocați un protocol care utilizează UDP mai degrabă decât TCP, atunci -p udp ar fi necesar în schimb.

Acest exemplu arată cum să blocați conexiunile SSH de la orice adresă IP.

iptables -A INPUT -p tcp --dport ssh -j DROP

Statele de conexiune

După cum am menționat mai devreme, o mulțime de protocoale vor necesita o comunicare bidirecțională. De exemplu, dacă doriți să permiteți conexiuni SSH la sistemul dvs., lanțurile de intrare și ieșire vor avea nevoie de o regulă adăugată la acestea. Dar, dacă doriți ca SSH să intre în sistemul dvs. să fie permis? Adăugarea unei reguli în lanțul de ieșire nu va permite, de asemenea, încercări de ieșire SSH?

Aici intervin stările de conexiune, care vă oferă capacitatea de care ar trebui să permiteți comunicarea bidirecțională, dar care să permită stabilirea conexiunilor într-un singur sens. Aruncați o privire la acest exemplu, unde conexiunile SSH DE LA 10.10.10.10 sunt permise, dar conexiunile SSH LA 10.10.10.10 nu. Cu toate acestea, sistemului i se permite să trimită înapoi informații prin SSH atâta timp cât sesiunea a fost deja stabilită, ceea ce face posibilă comunicarea SSH între aceste două gazde.

iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -m state --state NEW, STABILIT -j ACCEPT

iptables -A OUTPUT -p tcp --sport 22 -d 10.10.10.10 -m state --state ESTABLISHED -j ACCEPT

Salvarea modificărilor

Modificările pe care le faceți regulilor dvs. iptables vor fi anulate data viitoare la repornirea serviciului iptables, cu excepția cazului în care executați o comandă pentru a salva modificările. Această comandă poate diferi în funcție de distribuția dvs.:

Ubuntu:

sudo / sbin / iptables-save

Red Hat / CentOS:

/ sbin / service iptables save

Sau

/etc/init.d/iptables save

Alte comenzi

Enumerați regulile iptables configurate în prezent:

iptables -L

Adăugarea -la opțiunea vă va oferi informații despre pachete și octeți și adăugarea -n va enumera totul numeric. Cu alte cuvinte - numele de gazdă, protocoalele și rețelele sunt listate ca numere.

Pentru a șterge toate regulile configurate în prezent, puteți lansa comanda de spălare.

iptables -F

.intrare-conținut .pentru-intrare

Iptables Walkthrough (Linux Firewall)

Introduction To Linux IPTables

Introduction To Linux Firewall

Using `iptables` On Linux

Iptables Firewall Examples (ITS335, L23, Y14)

07 Iptables Firewall Rules

Firewalling In Linux Using IPtables Sp8scorp

Introduction To Linux: #15 - Iptables

Introduction To Iptables

Introduction To IPTables

Linux Firewall Configurations - Intro To Firewalld (RHCE Topic)

Linux Iptables - Configuring And Implementing Linux Iptables - Learn About Ip Values And Ranges #41

Advanced Linux Firewall Config. With Firewalld Rich Rules And IPset - Rich Rules + Ipset

Ubuntu Server 18.04 Administration Guide Part 11 - Configuring Firewall Rules With UFW

Intro To IPTables With Jason

Understand The Security At OS & Network Level | Configure Linux Firewall | DevOps Tutorial | Edureka


Confidențialitate și securitate - Cele mai populare articole

Firefox, Chrome și Edge vor accepta autentificarea cu doi factori a hardware-ului WebAuthn

Confidențialitate și securitate Apr 10, 2025

CONȚINUTUL NECACHAT Conectarea la Gmail sau Facebook ar putea însemna în curând conectarea la un dispozitiv USB, ceea ce ar putea face din phishing un lucru din trecut. ..


Cum să vă ștergeți contul Gmail sau Google

Confidențialitate și securitate Nov 17, 2024

CONȚINUTUL NECACHAT Poate că nu ați folosit Gmail de ani de zile. Poate doriți să luați o poziție împotriva Google în general. Poate că nu sunteți sigur de ce ați crea..


Ce este ingineria socială și cum o puteți evita?

Confidențialitate și securitate Sep 22, 2025

CONȚINUTUL NECACHAT Programele malware nu sunt singura amenințare online de care trebuie să vă faceți griji. Ingineria socială este o amenințare imensă și vă poate afect..


PSA: Dacă descărcați și rulați ceva rău, niciun antivirus nu vă poate ajuta

Confidențialitate și securitate Sep 2, 2025

CONȚINUTUL NECACHAT Antivirusul ar trebui să fie o linie de apărare de ultimă oră, nu ceva pe care te bazezi pentru a te salva. Pentru a rămâne în siguranță online, ar t..


30 moduri în care computerele dvs. Windows 10 acasă la Microsoft

Confidențialitate și securitate Aug 3, 2025

CONȚINUTUL NECACHAT Telefoanele cu Windows 10 acasă mai mult decât orice altă versiune de Windows înainte de aceasta. Împreună cu Windows 10, Microsoft a lansat o nouă pol..


Puteți utiliza un sistem de operare virtual pentru a accesa un site web blocat în fișierul gazdelor sistemului de operare gazdă?

Confidențialitate și securitate Aug 5, 2025

CONȚINUTUL NECACHAT Indiferent cât de mult încercați să vă păstrați copiii în siguranță de site-urile nedorite de pe Internet, se pare că există întotdeauna o metod�..


50+ Extensii de fișiere care sunt potențial periculoase pe Windows

Confidențialitate și securitate Apr 7, 2025

Majoritatea oamenilor știu că fișierele .exe sunt potențial periculoase, dar aceasta nu este singura extensie de fișier de care să se ferească Windows. Există o varietate de..


Generați o parolă puternică utilizând utilitarul încorporat Mac OS X Lion

Confidențialitate și securitate Jun 21, 2025

Este posibil să fi auzit de încălcările de securitate LinkedIn și last.fm care au avut loc recent. Ca să nu mai vorbim de mii de site-uri web care au fost piratate până acum..


Categorii