Kako koristiti naredbe Netfilter Iptables na Linuxu

Sadržaj

Zaštita uvijek mora biti jedna od prostorija u kojoj administratori, rukovodstvo i osoblje za podršku te općenito svi korisnici bilo kojeg trenutnog operacijskog sustava moraju raditi zbog više prijetnji prisutnih na mreži.

U slučaju distribucija Linuxa, većina njih ima napredne alate za primjenu filtera na mrežne pakete i na razini obrade kontrole mrežnih paketa pri unosu, kretanju, kontroli i izlazu iz stoga. Mreže unutar jezgre korištenog sustava , stoga su, počevši od jezgre 2.4, uvedeni iptables, koji se također nazivaju netfilter i koji imaju višu razinu sigurnosti i praktične funkcionalnosti za zaštitu sustava.

iptables upravlja IPv4 filtriranjem, dok ip6tables upravlja IPv6 filtriranjem na današnjim mrežama.
Solvetic će napraviti analizu kako iptables radi i neke od praktičnijih naredbi koje možemo iz njega preuzeti.

1. Filtriranje paketa na Linuxu


Jezgra distribucija Linuxa koristi alat Netfilter za provedbu procesa filtriranja paketa i na taj način obavlja zadatke njihova primanja ili zaustavljanja.

Pravila ugrađena u NetfilterNetfilter je prema zadanim postavkama ugrađen u jezgru Linuxa i ima tri tablice ili popis pravila integriranih na ovaj način:

  • filter: Odnosi se na zadanu tablicu dizajniranu za upravljanje paketima.
  • nat: Njegova je funkcija mijenjati pakete stvorene u novoj vezi koje prvenstveno koristi NAT.
  • mangle: Njegova se upotreba primjenjuje kada se moraju promijeniti određeni mrežni paketi.

Sada svaka tablica ima grupu ugrađenih lanaca koji su povezani s radnjama koje može izvesti netfilter, a to su:

Pravila za filtriranje tablicaUgrađeni nizovi za tablicu filtera su:

  • ULAZ: Povezano je s paketima koji su namijenjeni hostu.
  • IZLAZ: Ovo radi na mrežnim paketima koji su generirani lokalno.
  • NAPRED: Povezuje pakete koji su usmjereni kroz glavni host.

Pravila za nat tabliceUgrađeni nizovi za nat tablicu su:

  • ISTRAŽIVANJE: Njegova je funkcija mijenjati mrežne pakete čim stignu.
  • IZLAZAK: Dizajnirano je za izmjenu mrežnih paketa koji su stvoreni lokalno i aktivira se prije slanja.
  • POSTROUTING: Stvoreno za promjenu paketa prije slanja globalno.

Pravila za ploče od mangrovaUgrađeni lanci za stol od mangrova su:

  • ULAZ: Dizajnirano za izmjenu mrežnih paketa namijenjenih glavnom hostu.
  • IZLAZAK: Stvoreno za promjenu lokalno stvorenih mrežnih paketa i radi prije nego što se pošalju.
  • NAPRIJED: Mijenja pakete koji su usmjereni kroz glavni host.
  • PREROUTING: Vaš je zadatak izmijeniti dolazne pakete prije nego što se preusmjere.
  • POSTROUTING: Mijenja mrežne pakete prije procesa slanja.

Svaki mrežni paket primljen ili poslan iz operacijskog sustava Linux uvijek je vezan za barem jednu tablicu. Sada, shvatimo neke od korisnijih naredbi koje možemo koristiti s iptables.

2. Prikaz statusa vatrozida

Korak 1
Da bismo znali trenutno stanje vatrozida, izvršavamo sljedeći redak:

 sudo iptables -L -n -v 

POVEĆAJTE

Korak 2
Tamo možemo potvrditi svaki lanac s odgovarajućim razinama upravljanih paketa, parametri koji se koriste u ovoj naredbi su:

-LPrikažite pravila popisa.

-vGenerira detaljne informacije kao što su naziv sučelja, plus pravila, plus paketi i brojači bajtova također su navedeni, sa sufiksom 'K', 'M' ili 'G' za opcije od 1000, 1.000.000 i 1.000.000.000, respektivno.

-nPrikazuje IP adresu i port u numeričkom formatu.

Korak 3
Ako želite, pogledajte ovaj rezultat s brojem redaka, možemo izvršiti sljedeće:

 iptables -n -L -v --line -brojevi 

POVEĆAJTE

3. Zaustavite, ponovno pokrenite ili pokrenite iptables na Linuxu

Korak 1
Glavne naredbe za upravljanje zadacima iptables na početnoj ili zaustavnoj razini su:

 service iptables stop service iptables start service iptables restart
Korak 2
Također će biti moguće koristiti naredbu iptables za zaustavljanje vatrozida i uklanjanje svih pravila poput ovog:
 iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -t mangle -X iptables -P ULAZ PRIHVATI iptables -P IZLAZ PRIHVATI iptables -P NAPRIJED PRIHVATI
Korak 3
Definirani parametri su:

-FUklonite sva pravila.

-XIzbrišite niz.

-ttable_name: Odaberite tablicu (nazvanu nat ili mangle) i izbrišite ili odbacite pravila.

-PPostavite zadana pravila kao što su DROP, REJECT ili ACCEPT.

4. Dodajte nova pravila vatrozida u Linuxu

Korak 1
Jedan od najpraktičnijih zadataka iptablesa je stvaranje određenih pravila za ispravno upravljanje paketima, za umetanje jednog ili više pravila u odabrani lanac koristit ćemo sljedeću sintaksu gdje se brojevi redaka moraju prvo otkriti:

 iptables -L INPUT -n --line -brojevi 
Korak 2
na primjer, dodajmo sljedeće pravilo:
 iptables -I ULAZ 2 -s 192.168.0.50 -j DROP 
Korak 3
Kasnije ćemo vidjeti pravila pomoću gornje naredbe. Tamo vidimo da je stvoreno pravilo dodano u redak 3 kako je naznačeno.

POVEĆAJTE

5. Izbrišite pravilo vatrozida na Linuxu

Korak 1
Prije svega, moramo prikazati pravila koja su stvorena kako bismo točno odredili koje treba eliminirati. Za dobivanje ovih informacija imamo sljedeće mogućnosti:

 iptables -L INPUT -n --line -numbers iptables -L OUTPUT -n --line -numbers iptables -L OUTPUT -n --line -numbers | manje
Korak 2
Sada, da bismo izbrisali prethodno stvoreno pravilo 3, izvršit ćemo sljedeće:
 iptables -D ULAZ 3 

POVEĆAJTE

6. Pohranite i vratite pravila iptables na Linuxu

Korak 1
Svaki put kad napravimo promjenu pravila iptables moramo nastaviti spremati te promjene, za to je dovoljno izvršiti sljedeći redak:

 servis iptables zna 
Korak 2
Jednostavno možemo vratiti ona pravila koja smo pohranili izvršavanjem sljedećeg:
 ponovno pokretanje servisnih iptablesa 

7. Postavite zadana pravila u Linuxu


Pomoću iptablesa bit će moguće dopustiti ili odbiti zadana pravila koja se moraju primijeniti na cijeli sustav na sljedeći način.

Korak 1
Da bismo uklonili sav promet, izvršavamo:

 iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P NAPRIJED DROP
Korak 2
Da biste uklonili sav dolazni promet:
 iptables -P INPUT DROP iptables -P NAPRIJED DROP iptables -P OUTPUT ACCEPT iptables -A INPUT -m stanje -NOVO, USTANOVLJENO -j ACCEPT

POVEĆAJTE

8. Blokirajte IP adresu u Linuxu

Pomoću iptablesa bit će moguće blokirati određenu IP adresu kako bi se spriječilo njeno pristupanje mrežnom paketu sustavu. Za ovaj zadatak imamo sljedeće mogućnosti:

 iptables -A INPUT -s 192.168.0.14 -j DROP (Specifični IP) iptables -A INPUT -s 192.168.0.0/24 -j DROP (raspon adresa)

9. Blokirajte dolazne zahtjeve za priključke na Linuxu

Korak 1
Drugi tipičan sigurnosni zadatak je ograničiti pristup paketima kroz određeni port, a s iptablesima imamo sljedeće mogućnosti:

Blokirajte sve radnjeBlokirajte sve radnje za određeni port izvršavanjem:

 iptables -A INPUT -p tcp --dport 80 -j DROP iptables -A INPUT -i eth1 -p tcp --dport 80 -j DROP

Blokirajte portBlokirajte port za određenu IP adresu:

 iptables -A INPUT -p tcp -s 192.168.0.14 --dport 80 -j DROP iptables -A INPUT -i eth1 -p tcp -s 192.168.0.1/24 --dport 80 -j DROP

Blokirajte odlaznu IP adresu
Moguće je blokirati odlazni promet na određeni host ili domenu, na primjer Solvetic.com, za to izvršavamo sljedeće:

 host -t to solutiontic.com 

POVEĆAJTE

Korak 2
Sada s ovom IP adresom nastavljamo blokirati:

 iptables -A IZLAZ -d 178.33.118.246 -j DROP 
Korak 3
Također će biti moguće blokirati cijelu domenu na ovaj način:
 iptables -A IZLAZ -p tcp -d www.solvetic.com -j IZPUSTI 

10. Dopustiti ili ne dopustiti mrežni promet pomoću MAC adrese u Linuxu

Druga mogućnost korištenja je ograničiti ili dopustiti upotrebu paketa na temelju MAC adrese odabranog uređaja. Za to ćemo koristiti jednu od sljedećih opcija:

 iptables -A INPUT -m mac --mac -source 00: 2F: EF: 85: 04: 09 -j DROP (Zabraniti promet s odabrane MAC adrese) iptables -A INPUT -p tcp --destination -port 22 -m mac --mac -source 00: 2F: EF: 85: 04: 09 -j ACCEPT (Podržava pakete s adrese naznačene samo portom 22)

11. Blokirajte ili dopustite zahtjeve ICMP -a na Linuxu


ICMP protokol (Internet Control Message Protocol) je protokol razvijen za upravljanje informacijama vezanim uz greške na računalima lokalne mreže, tako da se pomoću ovog protokola mogu upućivati ​​udaljeni zahtjevi za provjeru dostupnosti tima, a to u smislu sigurnosti može biti osjetljivo .

Korak 1
Možemo pokrenuti sljedeće retke kako bismo izbjegli zahtjeve ICMP -a na Linuxu:

 iptables -A INPUT -p icmp --icmp -type echo -request -j DROP iptables -A INPUT -i eth1 -p icmp --icmp -type echo -request -j DROP
Korak 2
Ping odgovori također mogu biti ograničeni na određene mreže ili hostove poput ovoga:
 iptables -A INPUT -s 192.168.0.1/24 -p icmp --icmp -type echo -request -j ACCEPT 
Korak 3
Moći ćemo prihvatiti samo ograničenu vrstu ICMP zahtjeva poput ovog:
 iptables -A INPUT -p icmp --icmp -type echo -response -j ACCEPT iptables -A INPUT -p icmp --icmp -type destination -unreachable -j ACCEPT iptables -A INPUT -p icmp --icmp -type time- premašio -j PRIHVATI

12. Otvorite niz portova i IP adresa u Linuxu

Korak 1
To je korisno ako moramo omogućiti definirani raspon portova za izvršavanje administrativnih radnji ili izvršenja programa:

 iptables -A INPUT -m stanje -stanje NOVO -m tcp -p tcp --dport 9000: 9020 -j PRIHVATI 
Tako smo otvorili raspon portova od 9000 do 9020 za TCP veze.

Korak 2
Druga je mogućnost omogućiti niz IP adresa postavljanjem određenog porta poput ovog. Tamo smo ovlastili ovaj raspon za korištenje priključka 80.

 iptables -A INPUT -p tcp --destination -port 80 -m iprange --src -range 192.168.0.70-192.168.0.80 -j PRIHVATI 

13. Ograničite broj paralelnih veza s poslužiteljem prema IP -u klijenta na Linuxu

Korak 1
Možemo koristiti connlimit modul za definiranje ovih ograničenja, na primjer, za dopuštanje 5 ssh veza po klijentu, unosimo sljedeće:

 iptables -A ULAZ -p tcp --syn --dport 22 -m connlimit --connlimit -iznad 5 -j ODBIJI 

POVEĆAJTE

Korak 2
Da biste ograničili HTTP pristup na 10:

 iptables -p tcp --syn --dport 80 -m connlimit --connlimit -iznad 10 --connlimit -mask 24 -j DROP 
Korak 3
Naveli smo sljedeće:
  • --connlimit-above 5: Podudara se ako je broj postojećih veza veći od 5.
  • --connlimit-mask 24: Ovo su hostovi grupa koji koriste duljinu prefiksa. Za IPv4 to mora biti broj između (uključujući) 0 i 32.

14. Ograničite broj paralelnih veza s poslužiteljem prema IP -u klijenta na Linuxu

Korak 1
NAT (Network Address Translation) je sustav za prevođenje mrežnih adresa i na taj način olakšava navigaciju. Da bismo ih naveli, izvršit ćemo sljedeće:

 iptables -t nat -L -n -v 

POVEĆAJTE

Korak 2
Moći ćete vidjeti ovaj rezultat s odgovarajućim redovima ovako:

 iptables -t nat -v -L -n --line -broj 

15. Jasna NAT pravila za Linux


Korak 1
Ako želimo izbrisati uspostavljena NAT pravila, izvršit ćemo sljedeće:
 iptables -t nat -v -L -n --line -number iptables -t nat -v -L PREROUTING -n -iptables -line -broj -t nat -v -L POSTROUTING -n --line -number
Korak 2
Za brisanje svih pravila "PREROUTING" izvršavamo sljedeću sintaksu:
 iptables -t nat -D PREROUTING {Pravilo broj} 
Korak 3
Za brisanje svih pravila "POSTROUTING" koje izvršavamo:
 iptables -t nat -D POSTROUTING {pravilo broj} 

16. Poništite brojače paketa u Linuxu


Prvo moramo izvršiti naredbu "iptables -L -n -v", koju smo vidjeli ranije, kako bismo naveli brojače.

Korak 1
Da biste izbrisali ove brojače, pokrenite sljedeće:

 iptables -Z 
Korak 2
Za poništavanje brojača samo za pristup izvršavamo:
 iptables -Z ULAZ 

17. Provjerite vatrozid na Linuxu

Korak 1
Prije svega, moramo provjeriti jesu li portovi otvoreni ili ne sljedećom naredbom:

 netstat -tulpn 

POVEĆAJTE

Korak 2
Da bismo potvrdili određeni port, izvršavamo:

 netstat -tulpn | grep: 80 

POVEĆAJTE

Korak 3
U slučaju da port nije otvoren izvršavamo:

 usluga httpd start 
Korak 4
Zatim moramo biti sigurni da iptables ima pristup putem tog porta:
 iptables -L ULAZ -v -n | grep 80 

18. Dopustite pristup petlji s iptables na Linuxu

Loopback pristup čiji je pristup s IP 127.0.0.1 važan je i uvijek ga treba ostaviti aktivnim za zadatke administracije i upravljanja mrežom. Da biste ga omogućili u iptables, samo izvedite sljedeće.

 iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT

19. Definirajte nove iptables nizove na Linuxu


Korak 1
S iptablesima imamo mogućnost definiranja vlastitog lanca i u njega pohraniti prilagođena pravila. Za definiranje lanca izvršavamo sljedeće:
 iptables -N "Naziv niza" 
Korak 2
Zatim pokrećemo "iptables -L" za popis nizova iptables:

POVEĆAJTE

Korak 3
U rezultatu ćemo vidjeti naš stvoreni lanac:

POVEĆAJTE

20. Očistite iptables lance vatrozida ili pravila na Linuxu

Da bismo izvršili ovo brisanje, moramo izvršiti sljedeće:

 iptables -F 
Kao što vidimo, iptables je sveobuhvatno rješenje za centralno upravljanje različitim sigurnosnim aspektima u distribucijama Linuxa kako bi se postigla poboljšanja u svemu što se tiče privatnosti.

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave