Kā lietot Iptables Netfilter komandas Linux

Satura rādītājs

Drošībai vienmēr jābūt vienai no telpām, kurā jāstrādā administratoriem, vadībai un atbalsta personālam, kā arī visiem pašreizējās operētājsistēmas lietotājiem, jo ​​tīklā ir vairāki draudi.

Linux izplatīšanas gadījumā lielākajai daļai no tām ir uzlaboti rīki, lai tīkla paketēm piemērotu filtru gan tīkla pakešu kontroles apstrādes līmenī, gan ievadot, pārvietojot, kontrolējot un izejot. Tīkli izmantotās sistēmas kodolā. , tāpēc, sākot ar 2.4 kodolu, tika ieviesti iptables, kurus sauc arī par netfilter, un tiem ir augstāks drošības līmenis un praktiskas funkcijas sistēmas aizsardzībai.

iptables apstrādā IPv4 filtrēšanu, bet ip6tables - IPv6 filtrēšanu mūsdienu tīklos.
Solvetic veiks analīzi par to, kā darbojas iptables, un dažas praktiskākas komandas, kuras mēs varam no tā iegūt.

1. Pakešu filtrēšana operētājsistēmā Linux


Linux izplatīšanas kodols izmanto Netfilter rīku, lai veiktu pakešu filtrēšanas procesu un tādējādi veiktu to saņemšanas vai apturēšanas uzdevumus.

Noteikumi, kas iebūvēti NetfilterNetfilter pēc noklusējuma ir iekļauts Linux kodolā, un tajā ir integrētas trīs tabulas vai noteikumu saraksti:

  • filtrs: attiecas uz noklusējuma tabulu, kas paredzēta pakešu pārvaldībai.
  • nat: Tās funkcija ir mainīt paketes, kas izveidotas jaunā savienojumā, kuru galvenokārt izmanto NAT.
  • mangle: to izmanto, ja ir jāmaina īpašas tīkla paketes.

Tagad katrā tabulā ir iebūvētu ķēžu grupa, kas ir saistīta ar darbībām, kuras var veikt tīkla filtrs.

Filtru tabulu noteikumiFiltru tabulas iebūvētās virknes ir šādas:

  • IEVADE: Tas ir saistīts ar paketēm, kas ir paredzētas saimniekdatoram.
  • OUTPUT: Tas darbojas lokāli ģenerētās tīkla paketēs.
  • PĀRSŪTĪT: Saista paketes, kas ir novirzītas caur galveno resursdatoru.

Noteikumi nat tabulāmNat tabulai ir iebūvētas virknes:

  • PREROUTING: Tās funkcija ir mainīt tīkla paketes, tiklīdz tās tiek piegādātas.
  • Izeja: Tas ir paredzēts, lai mainītu lokāli izveidotas tīkla paketes, kas tiek aktivizētas pirms to nosūtīšanas.
  • POSTROUTING: Izveidots, lai mainītu iepakojumus pirms nosūtīšanas visā pasaulē.

Mangrovju dēļu noteikumiIebūvētās ķēdes mangrovju galdam ir:

  • IEEJA: paredzēts, lai mainītu galvenajam resursdatoram paredzētās tīkla paketes.
  • OUTPUT: Izveidots, lai mainītu lokāli izveidotās tīkla paketes un darbojas pirms to nosūtīšanas.
  • PĀRSŪTĪT: maina paketes, kas ir novirzītas caur galveno resursdatoru.
  • PREROUTING: Jūsu uzdevums ir modificēt ienākošās paketes pirms to maršrutēšanas.
  • POSTROUTING: maina tīkla paketes pirms sūtīšanas procesa.

Katra tīkla pakete, kas saņemta vai nosūtīta no Linux operētājsistēmas, vienmēr ir piesaistīta vismaz vienai tabulai. Tagad sapratīsim dažas noderīgākas komandas, kuras varam izmantot kopā ar iptables.

2. Parādiet ugunsmūra statusu

1. darbība
Lai uzzinātu ugunsmūra pašreizējo stāvokli, mēs izpildām šādu rindu:

 sudo iptables -L -n -v 

PALIELINĀT

2. solis
Tur mēs varam apstiprināt katru ķēdi ar attiecīgajiem pārvaldīto pakotņu līmeņiem, šajā komandā izmantotie parametri ir:

-LParādiet saraksta noteikumus.

-vTiek ģenerēta detalizēta informācija, piemēram, saskarnes nosaukums, kā arī noteikumu opcijas, kā arī pakešu un baitu skaitītāji, ar sufiksu “K”, “M” vai “G” attiecīgi 1000, 1 000 000 un 1 000 000 000 opcijām.

-nCiparu formātā parāda IP adresi un portu.

3. solis
Ja vēlaties, skatiet šo rezultātu ar rindu skaitu, mēs varam izpildīt sekojošo:

 iptables -n -L -v -line -numuri 

PALIELINĀT

3. Pārtrauciet, restartējiet vai palaidiet iptables operētājsistēmā Linux

1. darbība
Galvenās komandas, lai pārvaldītu iptables uzdevumus sākuma vai apturēšanas līmenī, ir šādas:

 pakalpojums iptables pārtrauc pakalpojumu iptables sākt pakalpojumu iptables restart
2. solis
Būs arī iespējams izmantot komandu iptables, lai apturētu ugunsmūri un novērstu visus šādus noteikumus:
 iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -mangle -X iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT
3. solis
Definētie parametri ir:

-FNoņemiet visus noteikumus.

-XIzdzēsiet virkni.

-ttable_name: atlasiet tabulu (ar nosaukumu nat vai mangle) un izdzēsiet vai atmetiet kārtulas.

-PIestatiet noklusējuma politiku, piemēram, DROP, REJECT vai ACCEPT.

4. Pievienojiet jaunus ugunsmūra noteikumus Linux

1. darbība
Viens no praktiskākajiem iptables uzdevumiem ir izveidot noteiktus noteikumus pareizai pakešu pārvaldībai, ievietot vienu vai vairākus noteikumus izvēlētajā ķēdē, mēs izmantosim šādu sintaksi, kur vispirms jāatklāj rindu numuri:

 iptables -L INPUT -n -line -numuri 
2. solis
piemēram, pievienosim šādu noteikumu:
 iptables -I INPUT 2 -s 192.168.0.50 -j DROP 
3. solis
Vēlāk mēs redzēsim noteikumus, izmantojot iepriekš minēto komandu. Tur mēs redzam, ka izveidotais noteikums ir pievienots 3. rindā, kā norādīts.

PALIELINĀT

5. Ugunsmūra noteikuma dzēšana operētājsistēmā Linux

1. darbība
Pirmkārt, mums ir jāparāda noteikumi, kas ir izveidoti, lai precīzi noteiktu, kurš no tiem ir jālikvidē, lai iegūtu šo informāciju, mums ir šādas iespējas:

 iptables -L INPUT -n -līniju numuri iptables -L OUTPUT -n -līniju skaitļi iptables -L OUTPUT -n --line -numuri | mazāk
2. solis
Tagad, lai izdzēstu iepriekš izveidoto 3. noteikumu, mēs izpildīsim sekojošo:
 iptables -D IEEJA 3 

PALIELINĀT

6. Saglabājiet un atjaunojiet iptables noteikumus Linux

1. darbība
Katru reizi, kad veicam izmaiņas iptables noteikumos, mums ir jāturpina šīs izmaiņas saglabāt, jo pietiek izpildīt šādu rindu:

 serviss iptables zina 
2. solis
Mēs varam vienkārši atjaunot saglabātos noteikumus, izpildot tālāk norādītās darbības.
 pakalpojuma iptables restartēšana 

7. Iestatiet noklusējuma kārtulas Linux


Izmantojot iptables, būs iespējams atļaut vai noraidīt noklusējuma noteikumus, kas jāpiemēro visai sistēmai, šādi.

1. darbība
Lai novērstu visu satiksmi, mēs izpildām:

 iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP
2. solis
Lai noņemtu visu ienākošo datplūsmu:
 iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT ACCEPT iptables -A INPUT -m stāvoklis -JAUNS, IZVEIDOTS -j ACCEPT

PALIELINĀT

8. Bloķējiet IP adresi Linux

Izmantojot iptables, būs iespējams bloķēt noteiktu IP adresi, lai tai nebūtu piekļuves tīklam pakešu sistēmai. Šim uzdevumam mums ir šādas iespējas:

 iptables -A INPUT -s 192.168.0.14 -j DROP (specifisks IP) iptables -A INPUT -s 192.168.0.0/24 -j DROP (adrešu diapazons)

9. Bloķējiet ienākošos portu pieprasījumus operētājsistēmā Linux

1. darbība
Vēl viens tipisks drošības uzdevums ir ierobežot piekļuvi paketēm, izmantojot noteiktu portu, izmantojot iptables, mums ir šādas iespējas:

Bloķēt visas darbībasBloķējiet visas darbības konkrētam portam, izpildot:

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

Bloķēt ostuBloķējiet portu noteiktai IP adresei:

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

Bloķēt izejošo IP adresi
Ir iespējams bloķēt izejošo datplūsmu uz noteiktu resursdatoru vai domēnu, piemēram, Solvetic.com, tāpēc mēs izpildām sekojošo:

 saimnieks -t uz solvetic.com 

PALIELINĀT

2. solis
Tagad, izmantojot šo IP adresi, mēs turpinām bloķēt:

 iptables -A OUTPUT -d 178.33.118.246 -j DROP 
3. solis
Tāpat būs iespējams bloķēt visu domēnu šādi:
 iptables -A OUTPUT -p tcp -d www.solvetic.com -j DROP 

10. Vai atļaut tīkla trafiku, izmantojot Linux MAC adresi

Vēl viena izmantošanas iespēja ir ierobežot vai atļaut pakešu izmantošanu, pamatojoties uz izvēlētās ierīces MAC adresi. Šim nolūkam mēs izmantosim vienu no šīm iespējām:

 iptables -A INPUT -m mac --mac -source 00: 2F: EF: 85: 04: 09 -j DROP (liegt satiksmi no izvēlētās MAC adreses) iptables -A INPUT -p tcp -galamērķa ports 22 -m mac --mac -source 00: 2F: EF: 85: 04: 09 -j ACCEPT (Atbalsta paketes no adreses, kas norādīta tikai 22. portā)

11. Bloķējiet vai atļaujiet ICMP pieprasījumus operētājsistēmā Linux


ICMP protokols (interneta kontroles ziņojumu protokols) ir protokols, kas izstrādāts, lai pārvaldītu informāciju, kas saistīta ar kļūdām vietējā tīkla datoros, lai ar šo protokolu varētu veikt attālinātus pieprasījumus, lai pārbaudītu komandas pieejamību, un tas drošības ziņā var būt delikāts .

1. darbība
Mēs varam palaist šādas rindas, lai izvairītos no ICMP pieprasījumiem operētājsistēmā Linux:

 iptables -A INPUT -p icmp --icmp tipa atbalss pieprasījums -j DROP iptables -A INPUT -i eth1 -p icmp --icmp tipa atbalss pieprasījums -j DROP
2. solis
Ping atbildes var ierobežot arī noteiktos tīklos vai saimniekdatoros, piemēram:
 iptables -A INPUT -s 192.168.0.1/24 -p icmp --icmp tipa atbalss pieprasījums -j ACCEPT 
3. solis
Mēs varēsim pieņemt tikai ierobežotu veidu šādus ICMP pieprasījumus:
 iptables -A INPUT -p icmp --icmp -veida atbalss -atbilde -j ACCEPT iptables -A INPUT -p icmp --icmp -type destination -unachable -j ACCEPT iptables -A INPUT -p icmp --icmp -type time- pārsniegts -j ACCEPT

12. Atveriet virkni portu un IP adrešu Linux

1. darbība
Tas ir noderīgi, ja mums ir jāļauj noteiktam portu diapazonam veikt administratīvas vai programmas izpildes darbības:

 iptables -A INPUT -m stāvoklis -valsts JAUNUMS -m tcp -p tcp --ports 9000: 9020 -j ACCEPT 
Tādējādi mēs esam atvēruši portu diapazonu no 9000 līdz 9020 TCP savienojumiem.

2. solis
Vēl viena alternatīva ir iespējot IP adrešu diapazonu, iestatot šādu portu kā šis. Tur mēs esam atļāvuši šim diapazonam izmantot 80. portu.

 iptables -A INPUT -p tcp -galamērķa ports 80 -m iprange --src diapazons 192.168.0.70-192.168.0.80 -j ACCEPT 

13. Ierobežojiet paralēlo savienojumu skaitu ar serveri pēc klienta IP Linux

1. darbība
Mēs varam izmantot apvienošanas moduli, lai definētu šos ierobežojumus, piemēram, lai atļautu 5 ssh savienojumus vienam klientam, mēs ievadām šādu informāciju:

 iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit -above 5 -j REJECT 

PALIELINĀT

2. solis
Lai ierobežotu HTTP piekļuvi līdz 10:

 iptables -p tcp --syn --dport 80 -m connlimit --connlimit -above 10 --connlimit -mask 24 -j DROP 
3. solis
Mēs esam norādījuši sekojošo:
  • -neierobežots virs 5: atbilst, ja esošo savienojumu skaits ir lielāks par 5.
  • --connlimit-mask 24: tie ir grupas saimnieki, kas izmanto prefiksa garumu. IPv4 gadījumā tam jābūt skaitlim starp (ieskaitot) no 0 līdz 32.

14. Ierobežojiet paralēlo savienojumu skaitu ar serveri pēc klienta IP Linux

1. darbība
NAT (tīkla adrešu tulkošana) ir sistēma, lai tulkotu tīkla adreses un tādējādi atvieglotu navigāciju. Lai tos uzskaitītu, mēs veiksim sekojošo:

 iptables -t nat -L -n -v 

PALIELINĀT

2. solis
Šo rezultātu būs iespējams redzēt ar attiecīgajām rindām, piemēram:

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

15. Notīriet NAT noteikumus operētājsistēmā Linux


1. darbība
Ja mēs vēlamies izdzēst izveidotos NAT noteikumus, mēs izpildīsim sekojošo:
 iptables -t nat -v -L -n -line -number iptables -t nat -v -L PREROUTING -n -line -number iptables -t nat -v -L POSTROUTING -n --line -number
2. solis
Lai izdzēstu visus "PREROUTING" noteikumus, mēs izpildām šādu sintaksi:
 iptables -t nat -D PREROUTING {Noteikuma numurs} 
3. solis
Lai izdzēstu visus mūsu izpildītos "POSTROUTING" noteikumus:
 iptables -t nat -D POSTROUTING {noteikuma numurs} 

16. Atiestatīt pakotņu skaitītājus operētājsistēmā Linux


Pirmkārt, mums jāizpilda komanda "iptables -L -n -v", ko mēs redzējām iepriekš, lai uzskaitītu skaitītājus.

1. darbība
Lai notīrītu šos skaitītājus, rīkojieties šādi:

 iptables -Z 
2. solis
Lai atiestatītu tikai piekļuves skaitītājus, kurus mēs izpildām:
 iptables -Z IEVADE 

17. Apstipriniet ugunsmūri operētājsistēmā Linux

1. darbība
Pirmkārt, mums ir jāpārbauda, ​​vai porti ir atvērti vai nē, izmantojot šādu komandu:

 netstat -ulpn 

PALIELINĀT

2. solis
Lai apstiprinātu konkrētu portu, mēs izpildām:

 netstat -tulpn | grep: 80 

PALIELINĀT

3. solis
Ja ports nav atvērts, mēs izpildām:

 pakalpojuma httpd sākums 
4. solis
Tad mums jāpārliecinās, vai iptables var piekļūt caur šo portu:
 iptables -L INPUT -v -n | grep 80 

18. Atļaut cilpas piekļuvi, izmantojot iptables operētājsistēmā Linux

Atkārtota piekļuve, kuras piekļuve ir no IP 127.0.0.1, ir svarīga, un tai vienmēr jābūt aktīvai administrēšanas un tīkla pārvaldības uzdevumiem. Lai to iespējotu iptables, vienkārši izpildiet tālāk norādītās darbības.

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

19. Definējiet jaunas iptables virknes operētājsistēmā Linux


1. darbība
Izmantojot iptables, mums ir iespēja definēt savu ķēdi un tajā saglabāt pielāgotus noteikumus. Lai definētu ķēdi, mēs veicam šādas darbības:
 iptables -N "Virknes nosaukums" 
2. solis
Tad mēs palaižam "iptables -L", lai uzskaitītu iptables virknes:

PALIELINĀT

3. solis
Rezultātā mēs redzēsim mūsu izveidoto ķēdi:

PALIELINĀT

20. Notīriet iptables ugunsmūra ķēdes vai noteikumus operētājsistēmā Linux

Lai veiktu šo dzēšanu, mums ir jāveic šādas darbības:

 iptables -F 
Kā redzam, iptables ir visaptverošs risinājums, lai centralizēti pārvaldītu dažādus Linux izplatīšanas drošības aspektus, lai panāktu uzlabojumus visā, kas saistīts ar privātumu.

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave