„iptables“

Kaip naudoti IP lenteles norint užblokuoti ICMP

Kaip naudoti IP lenteles norint užblokuoti ICMP

„Internet Control Message Protocol“, taip pat žinomas kaip ICMP, yra protokolas, naudojamas patikrinti pagrindinių kompiuterių ryšį tinkle. Mes taip pat galime naudoti šį protokolą tinklo problemoms diagnozuoti. Tačiau saugumo požiūriu jį gali naudoti ir DDoS ataka. „Ping“ potvynis arba „Distributed Denial of Service“ (DDoS) ataka yra išpuolio forma, kai kas nors siunčia daug ping užklausų pagrindiniam kompiuteriui, o pagrindinis kompiuteris tampa beveik nepasiekiamas įprastam srautui. Norėdami išvengti tokios situacijos, tinklo administratoriai paprastai blokuoja ICMP savo tinkle. Šiame straipsnyje mes sužinosime, kaip IP lentelės gali būti naudojamos blokuoti ICMP mūsų serveryje.

Kas yra IP lentelės?

„IP Tables“ yra ugniasienės programa, skirta „Linux“ operacinėms sistemoms. Jis gali būti naudojamas priimti, atmesti ar grąžinti tinklo srautą į šaltinį arba iš jo. Jis stebi ateinantį tinklo srautą, naudodamas skirtingus lentelėje apibrėžtus taisyklių rinkinius. Šie taisyklių rinkiniai vadinami grandinėmis. IP lentelės stebi duomenų paketus ir kurie paketai atitinka taisykles, nukreipiami į kitą grandinę arba priskiriami vienai iš šių reikšmių.

IP lentelių diegimas

Daugumoje „Linux“ paskirstymų IP lentelės yra iš anksto įdiegtos. Galite patikrinti, ar IP lentelės yra įdiegtos, ar ne, terminale įvesdami šią komandą.

[apsaugotas el. pašto adresas]: ~ $ iptables --version

Jei IP lentelės nėra įdiegtos, jas galite įdiegti vykdydami šią komandą terminale.

[apsaugotas el. paštu]: ~ $ sudo apt-get update
[apsaugotas el. paštu]: ~ $ sudo apt-get install iptables

Numatytąją IP lentelių būseną galime patikrinti vykdydami šią komandą terminale.

[apsaugotas el. pašto adresas]: ~ $ sudo iptables -L -v

„-L“ vėliavoje pateikiamos visos taisyklės, o „-v“ vėliavoje pateikiama išsami informacija.

Arba taip pat galime išvardyti visas taisykles, pridėtas prie IP lentelių, terminale paleidžiant šią komandą.

[apsaugotas el. paštu]: ~ $ sudo iptables -S

Pagal numatytuosius nustatymus visos grandinės priima paketus ir šioms grandinėms nėra priskirtos taisyklės.

Taisyklių priskyrimas grandinėms

Iš pradžių jokiai grandinei nėra priskirta taisyklė, ir jie visi priima tinklo srautą. Dabar šiame skyriuje pamatysime, kaip mes galime apibrėžti tinkintas taisykles, skirtas blokuoti ar leisti tinklo srautą. Norėdami apibrėžti naują taisyklę, mes naudojame „A“ (pridėti) vėliavą, kuri IP lentelėms nurodo, kad bus apibrėžta nauja taisyklė. Taisyklei apibūdinti kartu su „A“ vėliava taip pat naudojamos šios parinktys.

-i (sąsaja): ši parinktis nurodo, per kurią sąsają norite leisti arba blokuoti tinklo srautą. Visų savo sistemos sąsajų sąrašą galite gauti vykdydami šią komandą terminale.

[apsaugotas el. paštas]: ~ $ ifconfig

-p (protokolas): ši parinktis apibrėžia, kurį protokolą norite filtruoti naudodami IP lenteles. Tai gali būti TCP, UDP, ICMP, ICMPV6 ir kt. Naudodami visas parinktis, galite taikyti taisykles visiems protokolams.

-s (šaltinis): ši parinktis rodo tinklo srauto šaltinį, pvz., IP adresą ar domeno pavadinimą.

-dport (paskirties uostas): ši parinktis naudojama nurodant tinklo srauto paskirties uostą.

-j (taikinys): ši parinktis naudojama tikslui parodyti. Tai gali būti PRIIMTI, NUMETTI, ATMETTI arba GRĄŽINTI. Ši parinktis yra privaloma kiekvienai taisyklei.

Apskritai pagrindinė taisyklės sintaksė bus tokia:

[apsaugotas el. paštu]: ~ $ sudo iptables -A -i -j
-p -dport -s

ICMP blokavimas naudojant IP lenteles

Iki šiol mes turime pagrindinį supratimą apie IP lenteles ir jų naudojimą tam, kad leistume arba blokuotume srautą konkrečiuose uostuose per konkrečias sąsajas. Dabar mes naudosime IP lenteles, kad užblokuotume ICMP savo serveryje.

Ši komanda pridės taisyklę, kad blokuotų jūsų kompiuterio ICMP:

[apsaugotas el. paštu]: ~ $ sudo iptables -A INPUT -j REJECT -p icmp --icmp tipo echo-request

Vykdę pirmiau nurodytą komandą, dabar patikrinkite IP lentelių būseną.

[apsaugotas el. pašto adresas]: ~ $ sudo iptables -L -v

Matome, kad prie INPUT grandinės buvo pridėta taisyklė, kuri rodo, kad visas ICMP srautas bus atmestas. Dabar, jei mes bandysime savo sistemą iš bet kurios kitos sistemos iš to paties tinklo, ji atmes užklausą. Rezultatą galime pamatyti pateikdami „ping“ užklausą iš „localhost“

[apsaugotas el. paštas]: ~ $ ping 127.0.0.1

Mes galime pamatyti, kad mes gauname atmetimo pranešimus iš sistemos, jei bandome pateikti ping užklausą.

Arba galite pridėti šias dvi komandas, kad pridėtumėte taisykles, kurios blokuoja ICMP mūsų serveryje.

[apsaugotas el. paštu]: ~ $ sudo iptables -A INPUT -p icmp -j DROP --icmp tipo echo-request
[apsaugotas el. paštu]: ~ $ sudo iptables -A IŠĖJIMAS -p icmp -j DROP --icmp tipo echo-atsakymas

Pridėję šias dvi taisykles, dabar patikrinkite IP lentelių būseną.

[apsaugotas el. pašto adresas]: ~ $ sudo iptables -L -v

Matome, kad pirmiau nurodyta komanda pridėjo dvi taisykles, viena prie INPUT grandinės, o kita - prie OUTPUT grandinės.

Skirtumas tarp DROP ir REJECT yra tas, kad kai mes naudojame REJECT, jis mums parodo įspėjimą (paskirties prievadas nepasiekiamas), kai mes ping, nes užklausa atmetama ir ji nepasiekia uosto. Kita vertus, kai mes naudojame DROP, tai tiesiog sumažina išvestį. Įvestis neatmetama, ji apdorojama, tačiau išvestis nerodoma taip, kaip parodyta žemiau

Išvada

Įsilaužėliai taiko skirtingus metodus, kad įvykdytų paskirstytų paslaugų atsisakymo (DDoS) atakas į serverius. Pingo potvynis taip pat yra DDoS atakos forma. Įsilaužėliai siunčia tiek daug ping užklausų į serverį, kad serveris naudoja visas savo skaičiavimo galimybes ping užklausoms apdoroti ir neatlieka faktinio apdorojimo. Pagal šį scenarijų ar kelis kitus scenarijus gali tekti blokuoti ICMP serveryje.

Šiame straipsnyje mes išmokome įvairių būdų, kaip blokuoti ICMP naudojant IP lenteles. Aptarėme, kaip galime pridėti skirtingas taisykles, kad blokuotume ICMP mūsų serveryje. Tuo pačiu būdu mes galime naudoti IP lenteles blokuoti bet kokio srauto bet kuriame uoste naudodami IP lenteles.

Kaip naudoti „Xdotool“, norint paskatinti pelės paspaudimus ir klavišų paspaudimus sistemoje „Linux“
„Xdotool“ yra nemokamas ir atviro kodo komandinės eilutės įrankis, skirtas pelės paspaudimams ir klavišų paspaudimams imituoti. Šis straipsnis apims t...
5 populiariausi „Linux“ skirtų ergonomiškų kompiuterinių pelių produktai
Ar ilgalaikis kompiuterio naudojimas sukelia riešo ar pirštų skausmą?? Ar jūs kenčiate nuo sąnarių standumo ir nuolat turite paspausti rankas? Ar jauč...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...