iptables

Hvordan bruke IP-tabeller for å blokkere ICMP

Hvordan bruke IP-tabeller for å blokkere ICMP

Internet Control Message Protocol, også kjent som ICMP, er en protokoll som brukes til å kontrollere tilkoblingen til vertene i et nettverk. Vi kan også bruke denne protokollen til å diagnostisere problemene i et nettverk. Men fra et sikkerhetsmessig synspunkt kan den også brukes av noen til å utføre et DDoS-angrep. En pingflom eller et DDoS-angrep (Distribuert Denial of Service) er en form for angrep der noen sender mange pingforespørsler til en vert, og verten blir nesten utilgjengelig for rutinemessig trafikk. For å unngå denne typen situasjoner blokkerer nettverksadministratorer vanligvis ICMP i nettverket. I denne artikkelen vil vi lære hvordan IP-tabeller kan brukes til å blokkere ICMP på serveren vår.

Hva er IP-tabellene?

IP Tables er et brannmurprogram for Linux-operativsystemer. Den kan brukes til å godta, nekte eller returnere nettverkstrafikk til eller fra en kilde. Den observerer den kommende nettverkstrafikken ved hjelp av forskjellige sett med regler definert i en tabell. Disse settene med regler kalles kjeder. IP-tabeller observerer pakker med data og hvilken pakke som samsvarer med regler, blir sendt til en annen kjede eller tildelt en av følgende verdier.

Installere IP-tabeller

For de fleste Linux-distribusjoner er IP-tabeller forhåndsinstallert. Du kan sjekke om IP-tabeller er installert eller ikke ved å skrive følgende kommando i terminalen.

[e-postbeskyttet]: ~ $ iptables --versjon

Hvis IP-tabeller ikke er installert, kan du installere dem ved å kjøre følgende kommando i terminalen.

[e-postbeskyttet]: ~ $ sudo apt-get oppdatering
[e-postbeskyttet]: ~ $ sudo apt-get install iptables

Vi kan sjekke standardstatus for IP-tabeller ved å kjøre følgende kommando i terminalen.

[e-postbeskyttet]: ~ $ sudo iptables -L -v

'-L' flagget viser alle reglene, og '-v' flagget viser detaljert informasjon.

Alternativt kan vi også liste opp alle reglene som er lagt til IP-tabellene ved å kjøre følgende kommando i terminalen.

[e-postbeskyttet]: ~ $ sudo iptables -S

Som standard godtar alle kjedene pakkene, og disse kjedene er ikke tildelt noen regel.

Tilordne regler til kjeder

I utgangspunktet er ingen regel tildelt noen kjede, og de godtar alle nettverkstrafikk. Nå i denne delen vil vi se hvordan vi kan definere egendefinerte regler for å blokkere eller tillate nettverkstrafikk. For å definere en ny regel bruker vi flagget 'A' (legg til), som forteller IP-tabellene at en ny regel skal defineres. Følgende alternativer brukes også sammen med 'A' flagget for å beskrive regelen.

-Jeg (grensesnitt): Dette alternativet indikerer gjennom hvilket grensesnitt du vil at nettverkstrafikken skal tillates eller blokkeres. Du kan få en liste over alle grensesnitt på systemet ditt ved å kjøre følgende kommando i terminalen.

[e-postbeskyttet]: ~ $ ifconfig

-s (protokoll): Dette alternativet definerer hvilken protokoll du vil filtrere ved hjelp av IP-tabeller. Dette kan være TCP, UDP, ICMP, ICMPV6, etc. Du kan bruke regler på alle protokoller ved å bruke alle alternativene.

-s (kilde): Dette alternativet viser kilden til nettverkstrafikk som IP-adresse eller domenenavn.

-dport (destinasjonsport): Dette alternativet brukes til å indikere destinasjonsporten for nettverkstrafikk.

-j (mål): Dette alternativet brukes til å vise målet. Det kan være ACCEPT, DROP, REJECT, eller RETURN. Dette alternativet er obligatorisk for hver regel.

Generelt sett vil den grunnleggende syntaksen for å legge til en regel være som følger:

[e-postbeskyttet]: ~ $ sudo iptables -A -Jeg -j
-s -dport -s

Blokkerer ICMP ved hjelp av IP-tabeller

Så langt har vi en grunnleggende forståelse av IP-tabeller og deres bruk for å tillate eller blokkere trafikk på bestemte porter gjennom spesifikke grensesnitt. Nå vil vi bruke IP-tabeller for å blokkere ICMP på serveren vår.

Følgende kommando vil legge til en regel for å blokkere ICMP på maskinen din:

[e-postbeskyttet]: ~ $ sudo iptables -A INPUT -j REJECT -p icmp - echmp-type ekko-forespørsel

Etter å ha kjørt kommandoen ovenfor, sjekk nå statusen til IP-tabellene.

[e-postbeskyttet]: ~ $ sudo iptables -L -v

Vi kan se at en regel er lagt til INPUT-kjeden, som viser at all ICMP-trafikk vil bli avvist. Nå, hvis vi pinger systemet vårt fra et annet system fra samme nettverk, vil det avvise forespørselen. Vi kan se resultatet ved å sende en ping-forespørsel fra localhost

[e-postbeskyttet]: ~ $ ping 127.0.0.1

Vi kan se at vi får avvisningsmeldinger fra systemet hvis vi prøver å sende en ping-forespørsel til det.

Alternativt kan følgende to kommandoer brukes til å legge til regler for å blokkere ICMP på serveren vår.

[e-postbeskyttet]: ~ $ sudo iptables -A INPUT -p icmp -j DROP - echmp-type ekko-forespørsel
[e-postbeskyttet]: ~ $ sudo iptables -A OUTPUT -p icmp -j DROP - echmp-type ekko-svar

Etter å ha lagt til disse to reglene, sjekk nå statusen til IP-tabellene.

[e-postbeskyttet]: ~ $ sudo iptables -L -v

Vi kan se at kommandoen ovenfor la til to regler, en til INPUT-kjeden og den andre til OUTPUT-kjeden.

Forskjellen mellom DROP og REJECT er at når vi bruker REJECT, viser det oss en advarsel (Destinasjonsport utilgjengelig) når vi pinger fordi forespørselen avvises og den ikke når porten. På den annen side, når vi bruker en DROP, faller den bare utdataene. Inndata avvises ikke, den blir behandlet, men utgangen vises ikke som vist nedenfor

Konklusjon

Hackere bruker forskjellige metoder for å utføre DDoS-angrep (Distribuert Denial of Service) på serverne. Pingflom er også en form for DDoS-angrep. Hackere sender så mange ping-forespørsler til serveren at serveren bruker all sin beregningskraft til å behandle ping-forespørslene og ikke utfører den faktiske behandlingen. I dette scenariet eller flere andre scenarier, må du kanskje blokkere ICMP på serveren din.

I denne artikkelen har vi lært forskjellige måter å blokkere ICMP ved hjelp av IP-tabeller. Vi diskuterte hvordan vi kan legge til forskjellige regler for å blokkere ICMP på serveren vår. På samme måte kan vi bruke IP-tabeller for å blokkere enhver form for trafikk på hvilken som helst port ved hjelp av IP-tabeller.

OpenTTD Tutorial
OpenTTD er et av de mest populære forretningssimuleringsspillene der ute. I dette spillet må du lage en fantastisk transportvirksomhet. Du begynner im...
SuperTuxKart for Linux
SuperTuxKart er en flott tittel designet for å gi deg Mario Kart-opplevelsen gratis på Linux-systemet ditt. Det er ganske utfordrende og morsomt å spi...
Kjemp om Wesnoth-opplæringen
Kampen om Wesnoth er et av de mest populære open source-strategispillene du kan spille på dette tidspunktet. Ikke bare har dette spillet vært i utvikl...