Kom i gang med iptables: Hold dårlige mennesker (og bots) væk fra din server

Afsløring: Din support hjælper med at holde webstedet kørt! Vi tjener et henvisningsgebyr for nogle af de tjenester, vi anbefaler på denne side.


Iptables er et Linux-bruger-plads-applikationsprogram, der bruges til at konfigurere IPv4-tabeller, der bruges af Linux-kernen firewall. Iptables er inkluderet i de fleste Linux-distributioner, der kører på kernel 2.4.x eller nyere.

Iptables er et ekstremt fleksibelt firewall-værktøj til kommandolinjen, der bruger politikkæder til at tillade eller blokere trafik. Det er klart målrettet mod systemadministratorer, da det kræver forhøjede privilegier til at køre og skal udføres af brugerroden.

Kort historie

Udvikling af iptables-projektet startede i 1998, ledet af Rusty Russell, en australsk softwareudvikler. Iptables blev oprettet som en efterfølger for ipchains, et tidligere Linux-firewallværktøj også oprettet af Russell.

Efterhånden som projektet blev udvidet, grundlagde Rusty Russell Netfilter Core Team i 1999. Det producerede Netfilter Linux rammer og iptables og frigav dem under GNU General Public License. I marts 2000 blev Netfilter og iptables slået sammen til Linux kernel mainline.

Iptables funktioner og design

Forskellige kernemoduler bruges til forskellige protokoller – iptables gælder for IPv4, ip6tables til IPv6, arptables til ARP og ebtables til Ethernet frames.

Iptables bruges til at konfigurere, vedligeholde og inspicere tabellerne til IPv4-pakkefiltrets regler i Linux-kernen.

Flere forskellige tabeller kan defineres, hvor hver tabel indeholder et antal indbyggede kæder eller brugerdefinerede kæder. Hver kæde er et sæt regler, der kan matche et sæt pakker, mens hver regel specificerer, hvad der skal gøres med en pakke, der matcher. Dette kaldes et mål.

Hvis en pakke matcher reglen, bestemmes dens skæbne af målets værdi: ACCEPT lader pakken komme igennem, DROP dropper pakken, QUEUE videregiver pakken til brugerområdet, RETURN genoptager den næste regel i den forrige kaldekæde.

Op til fem uafhængige tabeller er tilgængelige, afhængigt af kernekonfiguration og aktive moduler:

  • Filter er standardtabellen, der indeholder de indbyggede kæder INPUT, FORWARD og OUTPUT.
  • Nat bruges, når der pakkes en pakke, der opretter en ny forbindelse, der indeholder de indbyggede kæder PREROUTING, OUTPUT og POSTROUTING.
  • Mangle – bruges til specialiseret pakkeændring, der indeholder de indbyggede kæder PREROUTING, INPUT, OUTPUT, FORWARD og POSTROUTING.
  • bruges til at konfigurere undtagelser fra forbindelsessporing kombineret med NOTRACK-målet, hvilket giver indbyggede kæder PREROUTING og OUTPUT.
  • Sikkerhed bruges til Mandatory Access Control (MAC) netværksregler med INPUT, OUTPUT og FORWARD indbyggede kæder.

De indstillinger, der genkendes af iptables, er opdelt i kommandoer, parametre og andre indstillinger.

Brug af Iptables

Iptables er et kommandolinjeværktøj, der er forudinstalleret på de fleste Linux-distributioner. Hvis du har brug for at opdatere eller installere iptables, kan du bruge følgende kommando:

sudo apt-get install iptables

Du skal være meget forsigtig, hvis du er logget ind på en ekstern server, og du konfigurerer dens iptables-regler, fordi en forkert kommando kan låse dig ud for godt og muligvis skal rettes manuelt på serveren.

Vi demonstrerer et par almindelige og enkle kommandoer, der bruges til at konfigurere iptables-regler. Hvis du planlægger at bruge avancerede funktioner i iptables, bør du tjekke nogle af ressourcerne til iptables nedenfor.

Du kan angive de aktuelt konfigurerede iptables-regler ved hjælp af:

iptables –L

I de fleste tilfælde vil du have, at dit system skal acceptere forbindelser som standard ved hjælp af disse kommandoer:

iptables – policy INPUT ACCEPT
iptables – politisk OUTPUT ACCEPT
iptables – politisk FREMTIL ACCEPT

Efter dette kan du bruge iptables til at nægte forbindelser fra specifikke IP-adresser eller porte, som sådan:

iptables -A INPUT -s 192.168.10.10 -j DROP

Eller du kan blokere forbindelser fra en række IP-adresser som denne:

iptables -A INPUT -s 192.168.10.0/24 -j DROP

I nogle specifikke tilfælde kan du bruge den modsatte tilgang til den, der er beskrevet ovenfor. Du kan nægte alle forbindelser og manuelt specificere dem, du vil tillade at oprette forbindelse. Denne opsætning kan bruges til servere med følsomme data, der er forbundet til en unik IP-adresse.

iptables – politisk INPUT DROP
iptables – politisk OUTPUT DROP
iptables – policy FORWARD DROP
iptables -A INPUT -s 192.168.10.10 -j ACCEPT

Det er vigtigt at bemærke, at alle ændringer, der er foretaget i iptables-reglerne, ikke gemmes automatisk. Du skal gemme ændringerne manuelt ved hjælp af en kommando, der kan variere afhængigt af din distribution. Dette er Ubuntu-kommandoen:

sudo / sbin / iptables-save

Hvis du har glemt at gemme de ændringer, du har foretaget i iptables, vil de gå tabt næste gang iptables-tjenesten genstartes.

Du kan også bruge flush-kommandoen til at rydde alle de konfigurerede regler:

iptables -F

Iptables Resources

Der er mange ressourcer til iptables online, hvilket er forståeligt, da iptables er inkluderet i de fleste Linux-distributioner. At lære og bruge iptables bør ikke være et problem, især hvis du er afhængig af kvalitetsressourcer som disse:

  • Iptables officielle manual er detaljeret og giver en nyttig reference til iptables kommandoer og parametre.
  • Linux 2.4 Pakkefiltrering HOWTO-dokumentation er en meget detaljeret beskrivelse af pakkefiltrering skrevet af Rusty Russell. Af særlig interesse er afsnittet Brug af iptables.
  • Iptables How To er en dejlig gennemgang af iptables.

Iptables Books

Der er ikke en overflod af bøger, der beskæftiger sig med iptables, selvom iptables nævnes i mange bøger skrevet om Linux-netværk og firewalls.

Med masser af kvalitets online ressourcer er det ikke underligt, at der ikke er flere bøger, der beskæftiger sig med iptables. Derfor udpegede vi kun en bog om iptables:

  • Linux Iptables Pocket Reference af Gregor Purdy: Denne lommehenvisning hjælper dig på de kritiske øjeblikke, når nogen beder dig om at åbne eller lukke en havn i en fart, enten for at aktivere en vis vigtig trafik eller blokere et angreb. Bogen holder den subtile syntaks lige og hjælper dig med at huske alle de værdier, du skal indtaste for at være så sikre som muligt.

Konklusion

Iptables er et meget brugt værktøj, så det er bestemt værd at mestre, hvis meget af dit arbejde drejer sig om Linux-baserede servere. Heldigvis betyder dens popularitet, at iptables stadig udvikles, og nye versioner introduceres med jævne mellemrum.

Det betyder også, at der ikke er nogen mangel på iptables-ressourcer af høj kvalitet online, men hvis du nyder det krølle papir, har du svært ved at finde iptables-bøger. Stadig udgør den store mængde af digitale iptables-ressourcer mere end manglen på paperback-ressourcer.

Iptables er et kraftfuldt, men alligevel let at bruge værktøj. Hver håbende Linux-guru skal mestre det.

Yderligere læsning og ressourcer

Vi har flere guider, tutorials og infografik relateret til computerbrug:

  • Linux-programmering Introduktion og ressourcer: dette dybe dyk ned i Linux-programmering kommer ned i kernen, hvor al handlingen er.
  • Netværksprogrammering med internetstik: lær alt om netværk på internettet.

Unix-programmeringsressourcer

Hvis du virkelig kommer ind i Linux og ønsker at begynde at oprette programmer til det, har vi et godt sted at begynde at lære: Unix-programmeringsressourcer.

Den ultimative liste over webmasterværktøjer A-Z
Unix-programmeringsressourcer

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map