Kaip naudoti „Iptables Netfilter“ komandas „Linux“

Turinys

Saugumas visada turi būti viena iš patalpų, kuriose administratoriai, vadovai ir pagalbinis personalas ir apskritai visi bet kurios dabartinės operacinės sistemos vartotojai turi dirbti dėl daugybės grėsmių, esančių tinkle.

„Linux“ paskirstymo atveju dauguma jų turi pažangių įrankių, skirtų filtruoti tinklo paketus tiek tinklo paketų valdymo apdorojimo lygiu, tiekiant, judant, valdant ir išleidžiant kaminą. Tinklai naudojamos sistemos branduolyje , todėl, pradedant nuo branduolio 2.4, buvo pristatytos „iptables“, kurios taip pat vadinamos „netfilter“ ir turi aukštesnį saugumo lygį bei praktines sistemos apsaugos funkcijas.

„iptables“ tvarko IPv4 filtravimą, o „ip6tables“ - IPv6 filtravimą šiuolaikiniuose tinkluose.
„Solvetic“ atliks analizę, kaip veikia „iptables“, ir keletą praktiškesnių komandų, kurias galime panaudoti.

1. Paketų filtravimas „Linux“


„Linux“ paskirstymo branduolys naudoja „Netfilter“ įrankį paketų filtravimo procesui atlikti ir taip juos priimti arba sustabdyti.

Taisyklės, integruotos į „Netfilter“„Netfilter“ pagal numatytuosius nustatymus yra įtrauktas į „Linux“ branduolį ir jame yra trys lentelės arba taisyklių sąrašai, integruoti taip:

  • filtras: nurodo numatytąją paketų valdymui skirtą lentelę.
  • nat: Jo funkcija yra pakeisti paketus, sukurtus naudojant naują ryšį, kurį pirmiausia naudoja NAT.
  • mangle: Jis naudojamas, kai reikia pakeisti tam tikrus tinklo paketus.

Dabar kiekvienoje lentelėje yra integruotų grandinių grupė, susijusi su veiksmais, kuriuos gali atlikti „netfilter“, tai yra:

Filtrų lentelių taisyklėsĮmontuotos filtrų lentelės eilutės yra šios:

  • ĮVADAS: Tai susiję su paketais, kurie buvo skirti pagrindiniam kompiuteriui.
  • IŠVESTIS: Tai veikia su tinklo paketais, kurie buvo sukurti vietoje.
  • PASIŪLYTI: Susieja paketus, kurie buvo nukreipti per pagrindinį kompiuterį.

Nat lentelių taisyklėsIntegruotos „nat“ stalo eilutės yra šios:

  • PREROUTING: Jo funkcija yra pakeisti tinklo paketus, kai tik jie atvyksta.
  • IŠVEDIMAS: Jis skirtas pakeisti tinklo paketus, sukurtus vietoje ir suaktyvinamus prieš juos išsiunčiant.
  • POSTROUTING: sukurtas pakeisti paketus prieš siunčiant juos visame pasaulyje.

Mangrovių lentų taisyklėsIntegruotos grandinės mangrovių stalui yra:

  • ĮVADAS: skirtas modifikuoti tinklo paketus, skirtus pagrindiniam kompiuteriui.
  • IŠVADA: sukurta siekiant pakeisti vietoje sukurtus tinklo paketus ir veikia prieš juos siunčiant.
  • Į priekį: pakeičia paketus, kurie buvo nukreipti per pagrindinį kompiuterį.
  • PREROUTING: Jūsų užduotis yra pakeisti gaunamus paketus prieš juos nukreipiant.
  • POSTROUTING: pakeičia tinklo paketus prieš siunčiant.

Kiekvienas tinklo paketas, gautas ar išsiųstas iš „Linux“ operacinės sistemos, visada susietas su bent viena lentele. Dabar suprasime keletą naudingesnių komandų, kurias galime naudoti su „iptables“.

2. Rodyti ugniasienės būseną

1 žingsnis
Norėdami sužinoti dabartinę ugniasienės būseną, vykdome šią eilutę:

 sudo iptables -L -n -v 

DIDELIS

2 žingsnis
Ten mes galime patvirtinti kiekvieną grandinę su atitinkamais valdomų paketų lygiais, šioje komandoje naudojami parametrai:

-LParodykite sąrašo taisykles.

-vTaip pat pateikiama išsami informacija, pvz., Sąsajos pavadinimas, plius taisyklių parinktys, taip pat paketų ir baitų skaitikliai, su priesaga „K“, „M“ arba „G“, jei parinktys yra atitinkamai 1000, 1 000 000 ir 1 000 000 000.

-nRodo IP adresą ir prievadą skaitmeniniu formatu.

3 žingsnis
Jei norite, pamatykite šį rezultatą su eilučių skaičiumi, galime atlikti šiuos veiksmus:

 iptables -n -L -v --line -skaičiai 

DIDELIS

3. Sustabdykite, paleiskite iš naujo arba paleiskite „iptables“ „Linux“

1 žingsnis
Pagrindinės komandos, skirtos valdyti „iptables“ užduotis pradžios ar sustabdymo lygiu, yra šios:

 paslauga „iptables“ sustabdo paslaugą „iptables“ paleidžia paslaugą „iptables“ iš naujo
2 žingsnis
Taip pat bus galima naudoti komandą „iptables“, kad sustabdytumėte užkardą ir pašalintumėte visas šias taisykles:
 iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -t mangle -F iptables -mangle -X iptables -P Įvesties priėmimas iptables -P IŠVESTIS SUTINKAMAS iptables -P PIRMINIS PRIĖMIMAS
3 žingsnis
Apibrėžti parametrai yra šie:

-FPašalinkite visas taisykles.

-XIštrinkite eilutę.

-ttable_name: pasirinkite lentelę (pavadintą nat arba mangle) ir ištrinkite arba atmeskite taisykles.

-PNustatykite numatytąją politiką, pvz., DROP, REJECT arba ACCEPT.

4. Pridėkite naujų ugniasienės taisyklių „Linux“

1 žingsnis
Viena iš praktiškiausių „iptables“ užduočių yra sukurti tam tikras taisyklingo paketų valdymo taisykles, įterpti vieną ar daugiau taisyklių į pasirinktą grandinę, mes naudosime šią sintaksę, kurioje pirmiausia reikia atrasti eilučių numerius:

 iptables -L INPUT -n --line -skaičiai 
2 žingsnis
Pavyzdžiui, pridėkime šią taisyklę:
 iptables -I INPUT 2 -s 192.168.0.50 -j DROP 
3 žingsnis
Vėliau pamatysime taisykles naudodami aukščiau pateiktą komandą. Ten matome, kad sukurta taisyklė buvo pridėta 3 eilutėje, kaip nurodyta.

DIDELIS

5. Ištrinkite užkardos taisyklę „Linux“

1 žingsnis
Pirmiausia turime pateikti taisykles, sukurtas siekiant tiksliai nustatyti, kuri iš jų turėtų būti pašalinta, kad gautume šią informaciją, turime šias parinktis:

 iptables -L INPUT -n -eilutės numeriai iptables -L OUTPUT -n -linijos -skaičiai iptables -L OUTPUT -n --line -number | mažiau
2 žingsnis
Dabar, norėdami ištrinti anksčiau sukurtą 3 taisyklę, vykdysime šiuos veiksmus:
 „iptables“ -D ĮVADAS 3 

DIDELIS

6. Saugokite ir atkurkite „iptables“ taisykles „Linux“

1 žingsnis
Kiekvieną kartą, kai keičiame „iptables“ taisykles, turime išsaugoti tuos pakeitimus, tam pakanka įvykdyti šią eilutę:

 tarnyba „iptables“ žino 
2 žingsnis
Mes galime tiesiog atkurti tas taisykles, kurias išsaugojome atlikdami šiuos veiksmus:
 paslauga „iptables“ iš naujo 

7. Nustatykite numatytas taisykles „Linux“


Naudojant „iptables“ bus galima leisti arba paneigti numatytas taisykles, kurios turi būti taikomos visai sistemai, tokiu būdu.

1 žingsnis
Norėdami pašalinti visą srautą, vykdome:

 iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP
2 žingsnis
Norėdami pašalinti visą gaunamą srautą:
 iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT ACCEPT iptables -A INPUT -m būsena -NAUJAS, NUSTATYTAS -j ACCEPT

DIDELIS

8. Užblokuokite IP adresą „Linux“

Naudojant „iptables“ bus galima užblokuoti tam tikrą IP adresą, kad jis negalėtų pasiekti tinklo paketų prieigos prie sistemos. Šiai užduočiai atlikti turime šias parinktis:

 iptables -A INPUT -s 192.168.0.14 -j DROP (specifinis IP) iptables -A INPUT -s 192.168.0.0/24 -j DROP (adresų diapazonas)

9. Blokuokite gaunamas uosto užklausas „Linux“

1 žingsnis
Kita tipiška saugumo užduotis yra apriboti prieigą prie paketų per konkretų prievadą, naudojant „iptables“ turime šias parinktis:

Blokuoti visus veiksmusUžblokuokite visus konkretaus prievado veiksmus vykdydami:

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

Užblokuokite prievadąUžblokuokite konkretaus IP adreso prievadą:

 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

Blokuoti išeinantį IP adresą
Galima blokuoti išeinantį srautą į konkretų kompiuterį ar domeną, pvz., Solvetic.com, todėl atliekame šiuos veiksmus:

 šeimininkas -t į solvetic.com 

DIDELIS

2 žingsnis
Dabar, naudodami šį IP adresą, mes blokuojame:

 iptables -A OUTPUT -d 178.33.118.246 -j DROP 
3 žingsnis
Taip pat bus galima blokuoti visą domeną taip:
 iptables -A OUTPUT -p tcp -d www.solvetic.com -j DROP 

10. Leisti tinklo srautą naudojant MAC adresą „Linux“

Kita galimybė yra apriboti arba leisti naudoti paketus pagal pasirinkto įrenginio MAC adresą. Tam naudosime vieną iš šių parinkčių:

 iptables -A INPUT -m mac --mac -source 00: 2F: EF: 85: 04: 09 -j DROP (uždrausti srautą iš pasirinkto MAC adreso) iptables -A INPUT -p tcp -paskirties prievadas 22 -m mac --mac -source 00: 2F: EF: 85: 04: 09 -j ACCEPT (palaiko paketus iš adreso, nurodyto tik 22 prievado)

11. Blokuokite arba leiskite ICMP užklausas „Linux“


ICMP protokolas (interneto valdymo pranešimų protokolas) yra protokolas, sukurtas valdyti informaciją, susijusią su vietinio tinklo kompiuterių klaidomis, kad naudojant šį protokolą būtų galima pateikti nuotolines užklausas, kad būtų galima patikrinti komandos pasiekiamumą. .

1 žingsnis
Norėdami išvengti ICMP užklausų „Linux“, galime paleisti šias eilutes:

 iptables -A INPUT -p icmp --icmp tipo echo -request -j DROP iptables -A INPUT -i eth1 -p icmp --icmp tipo echo -request -j DROP
2 žingsnis
Ping atsakymai taip pat gali apsiriboti tam tikrais tinklais ar pagrindiniais kompiuteriais:
 iptables -A INPUT -s 192.168.0.1/24 -p icmp --icmp tipo echo -request -j ACCEPT 
3 žingsnis
Galėsime priimti tik tam tikrą ICMP užklausų tipą:
 iptables -A INPUT -p icmp --icmp -tipo aido atsakymas -j ACCEPT iptables -A INPUT -p icmp --icmp -type destination -unachable -j ACCEPT iptables -A INPUT -p icmp --icmp -type time- viršijo -j PRIIMTI

12. „Linux“ atidarykite daugybę prievadų ir IP adresų

1 žingsnis
Tai naudinga, jei mums reikia leisti apibrėžtam uostų diapazonui atlikti administracinius ar programos vykdymo veiksmus:

 iptables -A INPUT -m būsena -būsena NAUJA -m tcp -p tcp --portas 9000: 9020 -j ACCEPT 
Taigi atidarėme nuo 9000 iki 9020 prievadų asortimentą TCP ryšiams.

2 žingsnis
Kita alternatyva yra įgalinti IP adresų diapazoną, nustatant tokį konkretų prievadą. Ten mes leidome šiam diapazonui naudoti 80 prievadą.

 iptables -A INPUT -p tcp -paskirties prievadas 80 -m iprange --src diapazonas 192.168.0.70-192.168.0.80 -j ACCEPT 

13. Apribokite lygiagrečių prisijungimų prie serverio skaičių kliento IP sistemoje „Linux“

1 žingsnis
Šiems apribojimams apibrėžti galime naudoti „connlimit“ modulį, pavyzdžiui, kad leistume 5 ssh ryšius vienam klientui, įvedame:

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

DIDELIS

2 žingsnis
Norėdami apriboti HTTP prieigą iki 10:

 iptables -p tcp --syn --dport 80 -m connlimit --connlimit -above 10 --connlimit -mask 24 -j DROP 
3 žingsnis
Mes nurodėme šiuos dalykus:
  • --connlimit-above 5: atitinka, jei esamų jungčių skaičius yra didesnis nei 5.
  • --connlimit-mask 24: tai grupių prieglobos, kurios naudoja priešdėlio ilgį. IPv4 atveju tai turi būti skaičius tarp (įskaitant) nuo 0 iki 32.

14. Apribokite lygiagrečių prisijungimų prie serverio skaičių kliento IP sistemoje „Linux“

1 žingsnis
NAT (tinklo adresų vertimas) yra sistema, skirta tinklo adresams versti ir taip palengvinti naršymą. Norėdami juos išvardyti, atliksime šiuos veiksmus:

 iptables -t nat -L -n -v 

DIDELIS

2 žingsnis
Šį rezultatą bus galima pamatyti su atitinkamomis jų eilutėmis:

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

15. Išvalykite NAT taisykles „Linux“


1 žingsnis
Jei norime ištrinti nustatytas NAT taisykles, vykdysime šiuos veiksmus:
 iptables -t nat -v -L -n -linijos numeris iptables -t nat -v -L PREROUTING -n -linijos numeris iptables -t nat -v -L POSTROUTING -n --line -number
2 žingsnis
Norėdami ištrinti visas „PREROUTING“ taisykles, vykdome šią sintaksę:
 iptables -t nat -D PREROUTING {Taisyklės numeris} 
3 žingsnis
Norėdami ištrinti visas vykdomas „POSTROUTING“ taisykles:
 iptables -t nat -D POSTROUTING {taisyklės numeris} 

16. Iš naujo nustatyti paketų skaitiklius „Linux“


Pirmiausia, norėdami išvardyti skaitiklius, turime vykdyti komandą „iptables -L -n -v“, kurią matėme anksčiau.

1 žingsnis
Norėdami išvalyti šiuos skaitiklius, tiesiog atlikite šiuos veiksmus:

 iptables -Z 
2 žingsnis
Norėdami iš naujo nustatyti tik prieigos skaitiklius, kuriuos vykdome:
 iptables -Z ĮVESTIS 

17. Patvirtinkite „Linux“ užkardą

1 žingsnis
Pirmiausia turime patikrinti, ar uostai yra atidaryti, ar ne, naudodami šią komandą:

 netstat -tulpn 

DIDELIS

2 žingsnis
Norėdami patvirtinti konkretų prievadą, mes vykdome:

 netstat -tulpn | grep: 80 

DIDELIS

3 žingsnis
Jei prievadas nėra atidarytas, vykdome:

 paslaugos httpd start 
4 žingsnis
Tada turime įsitikinti, kad „iptables“ turi prieigą per tą prievadą:
 iptables -L INPUT -v -n | grep 80 

18. Leisti prieigą prie „Linux“ naudojant „iptables“

Loopback prieiga, kurios prieiga yra iš IP 127.0.0.1, yra svarbi ir visada turėtų būti palikta aktyvi administravimo ir tinklo valdymo užduotims atlikti. Norėdami jį įjungti „iptables“, tiesiog atlikite šiuos veiksmus.

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

19. Apibrėžkite naujas „iptables“ eilutes „Linux“


1 žingsnis
Naudodami „iptables“ turime galimybę apibrėžti savo tinklą ir jame išsaugoti pasirinktines taisykles. Norėdami apibrėžti grandinę, vykdome šiuos veiksmus:
 „iptables“ -N „Stygos pavadinimas“ 
2 žingsnis
Tada paleidžiame „iptables -L“, kad išvardytume „iptables“ eilutes:

DIDELIS

3 žingsnis
Rezultate matysime sukurtą grandinę:

DIDELIS

20. Išvalykite „iptables“ užkardos grandines arba taisykles „Linux“

Norėdami atlikti šį ištrynimą, turime atlikti šiuos veiksmus:

 iptables -F 
Kaip matome, „iptables“ yra išsamus sprendimas centralizuotai valdyti įvairius saugumo aspektus „Linux“ platinimuose, siekiant pagerinti viską, kas susiję su privatumu.

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave