iptables

Hur man använder IP-tabeller för att blockera ICMP

Hur man använder IP-tabeller för att blockera ICMP

Internet Control Message Protocol, även känt som ICMP, är ett protokoll som används för att kontrollera anslutningen för värdarna i ett nätverk. Vi kan också använda detta protokoll för att diagnostisera problemen i ett nätverk. Men ur säkerhetssynpunkt kan den också användas av någon för att utföra en DDoS-attack. En pingflod eller en Distribution Denial of Service (DDoS) -attack är en form av attack där någon skickar många pingförfrågningar till en värd och värden blir nästan oåtkomlig för rutintrafiken. För att undvika denna typ av situation blockerar nätverksadministratörer vanligtvis ICMP i sitt nätverk. I den här artikeln lär vi oss hur IP-tabeller kan användas för att blockera ICMP på vår server.

Vad är IP-tabellerna?

IP Tables är ett brandväggsprogram för Linux-operativsystem. Den kan användas för att acceptera, neka eller returnera nätverkstrafik till eller från en källa. Den observerar den kommande nätverkstrafiken med hjälp av olika uppsättningar regler som definieras i en tabell. Dessa uppsättningar regler kallas kedjor. IP-tabeller observerar datapaket och vilka paket som matchar reglerna riktas till en annan kedja eller tilldelas något av följande värden.

Installera IP-tabeller

För de flesta Linux-distributioner är IP-tabeller förinstallerade. Du kan kontrollera om IP-tabeller är installerade eller inte genom att skriva följande kommando i terminalen.

[e-postskyddad]: ~ $ iptables --version

Om IP-tabeller inte är installerade kan du installera dem genom att köra följande kommando i terminalen.

[e-postskyddad]: ~ $ sudo apt-get-uppdatering
[e-postskyddad]: ~ $ sudo apt-get install iptables

Vi kan kontrollera standardstatus för IP-tabeller genom att köra följande kommando i terminalen.

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

Flaggan '-L' visar alla regler och flaggan '-v' visar detaljerad information.

Alternativt kan vi också lista alla regler som läggs till i IP-tabellerna genom att köra följande kommando i terminalen.

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

Som standard accepterar alla kedjor paketen och dessa kedjor har ingen regel tilldelats.

Tilldela regler till kedjor

Ursprungligen tilldelas ingen regel till någon kedja, och de accepterar alla nätverkstrafik. Nu i detta avsnitt kommer vi att se hur vi kan definiera anpassade regler för att blockera eller tillåta nätverkstrafik. För att definiera en ny regel använder vi flaggan 'A' (lägg till), som säger till IP-tabellerna att en ny regel kommer att definieras. Följande alternativ används också tillsammans med A-flaggan för att beskriva regeln.

-i (gränssnitt): Det här alternativet anger genom vilket gränssnitt du vill att din nätverkstrafik ska tillåtas eller blockeras. Du kan få en lista över alla gränssnitt på ditt system genom att köra följande kommando i terminalen.

[e-postskyddad]: ~ $ ifconfig

-sid (protokoll): Det här alternativet definierar vilket protokoll du vill filtrera med IP-tabeller. Detta kan vara TCP, UDP, ICMP, ICMPV6, etc. Du kan tillämpa regler på alla protokoll genom att använda alla alternativ.

-s (källa): Det här alternativet visar källan till nätverkstrafik som IP-adress eller domännamn.

-dport (destinationsport): Detta alternativ används för att ange destinationsporten för nätverkstrafik.

-j (mål): Det här alternativet används för att visa målet. Det kan vara ACCEPT, DROP, REJECT eller RETURN. Detta alternativ är obligatoriskt för varje regel.

Generellt sett är den grundläggande syntaxen för att lägga till en regel följande:

[e-postskyddad: ~ $ sudo iptables -A -i -j
-sid -dport -s

Blockerar ICMP med IP-tabeller

Hittills har vi en grundläggande förståelse för IP-tabeller och deras användning för att tillåta eller blockera trafik på specifika portar genom specifika gränssnitt. Nu kommer vi att använda IP-tabeller för att blockera ICMP på vår server.

Följande kommando lägger till en regel för att blockera ICMP på din dator:

[e-postskyddad]: ~ $ sudo iptables -A INPUT -j REJECT -p icmp - echmp-typ echo-begäran

Efter att ha kört ovanstående kommando, kontrollera nu statusen för IP-tabellerna.

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

Vi kan se att en regel har lagts till i INPUT-kedjan, som visar att all ICMP-trafik kommer att avvisas. Om vi ​​pingar vårt system från något annat system från samma nätverk kommer det att avvisa begäran. Vi kan se resultatet genom att göra en pingförfrågan från localhost

[e-postskyddad]: ~ $ ping 127.0.0.1

Vi kan se att vi får avvisningsmeddelanden från systemet om vi försöker göra en ping-begäran till det.

Alternativt kan följande två kommandon användas för att lägga till regler för att blockera ICMP på vår server.

[e-postskyddad]: ~ $ sudo iptables -A INPUT -p icmp -j DROP - echmp-typ echo-begäran
[e-postskyddad]: ~ $ sudo iptables -A UTGÅNG -p icmp -j DROP - echmp-typ echo-svar

Efter att ha lagt till dessa två regler, kontrollera nu IP-tabellernas status.

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

Vi kan se att ovanstående kommando lade till två regler, en till INPUT-kedjan och den andra till OUTPUT-kedjan.

Skillnaden mellan DROP och REJECT är att när vi använder REJECT visar det oss en varning (Destination port Unreachable) när vi pingar eftersom begäran avvisas och den inte når porten. Å andra sidan, när vi använder en DROP, tappar den bara utdata. Ingången avvisas inte, den bearbetas, men utdata visas inte som visas nedan

Slutsats

Hackare använder olika metoder för att utföra Distribution Denial of Service (DDoS) -attacker på servrarna. Pingflod är också en form av DDoS-attack. Hackare skickar så många ping-förfrågningar till servern att servern använder all sin beräkningskraft för att behandla ping-förfrågningarna och inte utför sin faktiska bearbetning. I det här scenariot eller flera andra scenarier kan du behöva blockera ICMP på din server.

I den här artikeln har vi lärt oss olika sätt att blockera ICMP med hjälp av IP-tabeller. Vi diskuterade hur vi kan lägga till olika regler för att blockera ICMP på vår server. På samma sätt kan vi använda IP-tabeller för att blockera alla typer av trafik i vilken port som helst med IP-tabeller.

Topp 10 spel att spela på Ubuntu
Windows-plattformen har varit en av de dominerande plattformarna för spel på grund av den enorma andelen spel som utvecklas idag för att stödja Window...
5 bästa arkadspel för Linux
Numera är datorer seriösa maskiner som används för spel. Om du inte kan få den nya poängen vet du vad jag menar. I det här inlägget kommer du att känn...
Strid om Wesnoth 1.13.6 Utveckling släppt
Strid om Wesnoth 1.13.6 släpptes förra månaden, är den sjätte utvecklingsversionen i 1.13.x-serien och den levererar ett antal förbättringar, framför ...