Hur man konfigurerar iptables brandvägg för Linux -säkerhet

Även om Linux är ett av de mest pålitliga och säkra operativsystemen, tack vare dess egenskaper, kommer det alltid att finnas någon form av sårbarhet, oavsett om det är inneboende i systemet eller oavsiktligt av användaren. För att öka Linux -säkerheten har vi olika verktyg utformade för att skydda tjänster, processer, profiler eller filer och idag kommer vi att fokusera på en speciell som heter Iptables.

Vad är IptablesIptables är ett avancerat brandväggsverktyg som är integrerat i Linux -kärnan som är en del av ett projekt som heter netfilter.

Tack vare Iptables kommer vi att kunna hantera alla inkommande och utgående anslutningar till servern exakt och direkt. Iptables är utvecklat för IPv4 -adressering medan vi för IPv6 har Ip6 -tabeller.

1. Iptables -struktur i Linux


Strukturen som vi hittar i Iptables är följande:

RåDen ansvarar för att filtrera paketen före någon annan befintlig tabell

FiltreraDetta är programmets standardtabell

NatDen används för översättning av nätverksadresser

MangroveDet används för ändring av specialiserade nätverkspaket

säkerhetKan implementeras för obligatoriska regler för nätverksanslutning för åtkomstkontroll

2. Kommandostruktur i Iptables på Linux


I Iptables är varje regel ett kommando som anger hur nätverkets pakettrafik ska hanteras.
Vi kan använda följande struktur:
 -En INGÅNG -i eth0 -p tcp -m -tillstånd -ESTABLISHED, RELATED --sport 80 -j ACCEPT
De parametrar som används är:
  • -A: Anger att reglerna kommer att läggas till i Iptables
  • -i: Anger gränssnittet för vilket regeln ska tillämpas
  • -p: Avser protokollet där regeln kommer att gälla
  • -m: Avser att det finns ett villkor som måste uppfyllas för att tillämpa regeln
  • --stat: Tillåt godkännande av nya anslutningar
  • --sport: Anger källporten
  • -j: (Jump) indikerar att de kan acceptera all trafik som uppfyller de givna villkoren.

3. Skapa regler med Iptables på Linux


Även om vi kan lägga till reglerna manuellt är det mycket mer praktiskt att skapa en reglerfil och sedan importera den. I det här fallet skapar vi filen i sökvägen / tmp / iptables-ip4 och vi kan använda en redigerare för dess respektive justering:
 sudo nano / tmp / iptables-ip4
Syntaxen kommer att vara följande:
 * filtrera # regler för att lägga till COMMIT
Nu skapar vi följande regler i filen:

Loopback = Det är det externa gränssnittet för Linux

 -En INGÅNG -i lo -j ACCEPTERA -A UTGÅNG -o lo -j ACCEPTERA

Ping = Tillåter oss att kontrollera nätverksanslutningar

 -En INGÅNG -i eth0 -p icmp -m tillstånd -stat NY --icmp -typ 8 -j ACCEPT -A INGÅNG -i eth0 -p icmp -m tillstånd -stat ESTABLISHED, RELATED -j ACCEPT -A OUTPUT - o eth0 -p icmp -j ACCEPTERA

Webb = Genom dessa regler kontrollerar vi inkommande och utgående trafik.

 -En INGÅNG -i et0 -p tcp -m tillstånd -stat ESTABLISHED, RELATED --sport 80 -j ACCEPT -A INPUT -i eth0 -p tcp -m state -state ESTABLISHED, RELATED --sport 443 -j ACCEPT -En UTGÅNG -o eth0 -p tcp -m tcp --port 80 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --port 443 -j ACCEPT

Om vi ​​lägger till DNS använder vi följande rader:

 -A INGÅNG -i ens3 -s 192.168.0.1 -p udp -sport 53 -m tillstånd -stat ESTABLISHED, RELATED -j ACCEPT -A OUTPUT -o ens3 -d 192.168.0.1 -p udp --dport 53 -m udp -j ACCEPTERA

Notera:Här måste vi ändra IP efter behov

Time = Dessa regler tillåter anslutning till NTP för korrekt tidssynkronisering

 -En INGÅNG -i eth0 -p udp -m tillstånd -stat ESTABLISHED, RELATED --dport 123 -j ACCEPT -A OUTPUT -o eth0 -p udp -m udp -sport 123 -j ACCEPT

Utskrift = Tillåter att USB -portar för anslutande skrivare aktiveras

 -A INPUT -p udp -m udp --port 631 -j ACCEPT -A INPUT -p tcp -m tcp --port 631 -j ACCEPT -A OUTPUT -p udp -m udp -sport 631 -j ACCEPT -A OUTPUT -p tcp -m tcp -sport 631 -j ACCEPTERA

Email = Vi kan aktivera de olika e -postprotokollen

 # IMAP -A INGÅNG -i et0 -p tcp -m tillstånd -stat ESTABLISHED, RELATED -sport 993 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --port 993 -j ACCEPT
 # POP3 -A INGÅNG -i eth0 -p tcp -m tillstånd -stat ESTABLISHED, RELATED --sport 995 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --port 995 -j ACCEPT
 # SMTP -A INGÅNG -i eth0 -p tcp -m tillstånd -stat ESTABLISHED, RELATED --sport 465 -j ACCEPT -A OUTPUT -o eth0 -p tcp -m tcp --port 465 -j ACCEPT

SSH = Aktivera säkra anslutningar till datorn med SSH -protokollet

 # Inmatning -A INGÅNG -i ens3 -p tcp -m tillstånd -stat NY, ETABLERAD --port 22 -j ACCEPT -A UTGÅNG -o ens3 -p tcp -m tillstånd -stat ESTABLISHED -sport 22 -j ACCEPT
 # Output -A OUTPUT -o ens3 -p tcp -m state -state NEW, ESTABLISHED --dport 22 -j ACCEPT -A INPUT -i ens3 -p tcp -m state -state ESTABLISHED --sport 22 -j ACCEPT

DHCP: Vi kan skapa regler för att auktorisera IP -adressering genom DHCP

 -En INGÅNG -i eth0 -p udp -m tillstånd -stat ESTABLISHED, RELATED -sport 67:68 -j ACCEPT -A OUTPUT -o eth0 -p udp -m udp --port 67:68 -j ACCEPT

Avvisa alla anslutningar: Vi kan lägga till följande rader för att inaktivera allt ovan:

 -EN INGÅNG -j AVVISA -EN FRAMÅT -j AVVISA -EN UTGÅNG -j AVvisa

Alla dessa rader kommer att läggas till i den nämnda filen:

FÖRSTORA

Vi sparar ändringarna

Ctrl + O

Vi lämnar redaktören med

Ctrl + X

4. Importera reglerna med Iptables Linux


När filen är redigerad kan vi importera dessa regler till Iptable genom att köra följande kommando:
 sudo iptables -F && sudo iptables -X
Vi kan se status för reglerna med kommandot sudo iptables -S:

FÖRSTORA

Om vi ​​vill återställa alla regler kör vi följande rad:

 sudo iptables-restore < / tmp / itpables-ip4
Om vi ​​vill att dessa regler ska vara permanenta kommer vi att utföra följande:
 sudo apt installera iptables-persistent
På detta sätt är Iptables vår bästa allierade när vi konfigurerar brandväggen i Linux -miljöer.

wave wave wave wave wave