Ongeautoriseerde toegang en het hacken van servers vormen ernstige bedreigingen. Daarom moet u een firewall implementeren als onderdeel van uw netwerkbeveiligingstechniek. Weten hoe u met Iptables-regels moet werken, is een van de belangrijkste troeven om deze risico's op uw Linux-systemen te verminderen. Deze tutorial zal u helpen vertrouwd te raken met de basisconcepten van de firewall, zoals iptables-regels weergeven en iptables-regels verwijderen in Ubuntu, waarmee u eenvoudige opdrachten kunt uitvoeren om dit te bereiken. Voordat we bespreken hoe we iptables-regels moeten vermelden of verwijderen, laten we het eerst hebben over wat iptables-regels zijn en waarom we ze gebruiken?
Wat is Iptables?
iptables is een opdrachtregelfirewallhulpprogramma dat verkeer via de opdrachtregel toestaat of blokkeert beleidsketens. Wanneer er verbindingen op uw systeem tot stand proberen te brengen, zoekt iptables naar een regel in de lijst die daarmee overeenkomt, waardoor u een goede assistent krijgt op het gebied van netwerkbeveiliging. Als er geen verbinding wordt gevonden, neemt het zijn toevlucht tot de standaardactie.
iptables zijn bijna altijd vooraf geïnstalleerd Linux-distributie. U kunt de volgende opdracht gebruiken om het bij te werken of te installeren:
sudo apt-get install iptables
Waarom gebruiken wij Iptables?
Als Linux-opdrachtregelfirewall stelt iptables systeembeheerders in staat inkomend en uitgaand verkeer af te handelen via configureerbare tabelregels. Iptables gebruiken een reeks tabellen met ketens die een reeks ingebouwde of door de gebruiker gedefinieerde regels bevatten.
Zoals vermeld in de vorige sectie speelt iptables een essentiële rol in de netwerkbeveiliging voor de meeste Linux-systemen. De rest van dit artikel is voornamelijk gericht op het beschrijven van iptables en geeft alle regels weer, inclusief concepten zoals hoe iptables te tonen en hoe iptables-regels te verwijderen.
Meer specifiek bespreekt dit artikel enkele van de essentiële iptables-taken om u te laten zien hoe u regels kunt weergeven, pakket- en bytetellers kunt verwijderen, Iptables-regel kunt verwijderen, ketens kunt doorspoelen en alle ketens kunt verwijderen en al het verkeer kunt accepteren.
Een complete gids voor Iptables in Ubuntu
Voordat u door de iptables show-regels gaat, moet u er rekening mee houden dat u een Linux-server moet gebruiken waarop de opdracht iptables is geïnstalleerd. Naast deze vereisten is het essentieel om sudo-rechten te hebben. Wanneer u met firewalls werkt, let er dan op dat u uzelf niet buitensluit van uw server door SSH-verkeer te blokkeren (standaard poort:22). Als u de toegang verliest vanwege uw firewallinstellingen, moet u mogelijk verbinding maken via een out-of-band console om het probleem te verhelpen.
Lees ook: Hoe de SSH-poort in Linux te wijzigen | Een snelle stapsgewijze handleiding voor uw SSH-poort
Lijstregels per specificatie
U kunt uw actieve iptables-regels bekijken in een tafel of als een lijst met regelspecificaties. Bijna beide methoden bieden dezelfde informatie in verschillende formaten. Om alle regels van de actieve iptables op specificatie weer te geven, moet je de opdracht iptables uitvoeren met de -S-optie:
sudo iptables -S
Na het uitvoeren van dit iptables show rule commando, zul je een uitvoer als deze zien:

Een specifieke keten vermelden
Als je de uitvoer van show iptables wilt beperken tot een specifieke keten zoals INPUT, OUTPUT of TCP, kunt u de ketennaam direct na de optie -S opgeven. De volgende iptables show rule-opdracht helpt bijvoorbeeld bij het specificeren in de TCP-keten:
sudo iptables -S TCP

Zoals we eerder hebben vermeld, is er een andere manier om de iptables-showregels te laten uitvoeren: iptables-regels bekijken als een tabel met regels. Laten we deze techniek eens doornemen.
Regels weergeven als tabellen
Het gebruik van een commando om iptables-regels in de tabellen weer te geven kan helpen bij het vergelijken van verschillende regels. U moet de volgende opdracht show iptables uitvoeren met de -L-optie om al deze actieve regels in een tabel uit te voeren:
sudo iptables -L
Met deze opdracht worden alle huidige regels weergegeven, gesorteerd op ketens. Er is een manier om de uitvoer te beperken tot een specifieke keten, zoals INPUT, OUTPUT, TCP, enz.; u moet de ketennaam direct na de optie -L opgeven. Hier is een voorbeeld van het beperken van iptables show-regels tot de INPUT-keten:
sudo iptables -L INPUT

De eerste regel van de bovenstaande uitvoer toont de ketennaam (INPUT, in dit geval) en het standaardbeleid (DROP). De volgende regel bevat de kopteksten van elke kolom in de tabel en de regels van de keten. We zullen ze doornemen om u te helpen ze allemaal te leren:
- Doel: Als een pakket aan de regel voldoet, bepaalt het doel wat ermee gedaan moet worden. U kunt een pakket laten accepteren, laten vallen, loggen of naar een andere keten laten sturen om het met meer regels te vergelijken.
- prot: het protocol (zoals TCP, udp, ICMP of alles)
- opt: geeft IP-opties aan (niet vaak gebruikt)
- bron: toont het bron-IP-adres/subnet van het verkeer
- bestemming: presenteert het bestemmings-IP-adres/subnet van het verkeer
De kolom zonder label suggereert de opties van een regel, en het is elk onderdeel van de regel dat niet in de voorgaande kolommen is aangegeven. Deze informatie kan van alles zijn, van bron- en bestemmingspoorten tot de verbindingsstatus van het pakket.
Lees ook: Installeer OpenVPN op VPS – OpenVPN-client instellen 🔑
Hoe kan ik het aantal pakketten en de totale grootte weergeven?
Bij het weergeven van iptables-regels kunnen we het aantal pakketten en de totale grootte van de pakketten weergeven in bytes die overeenkomen met elke specifieke iptables-regel; dit is vaak nuttig om te begrijpen welke regels overeenkomen met pakketten. Je moet gebruik maken van de -L En -v opties samen om te bereiken dit.
Hier is een voorbeeld waarin we de INPUT-keten opnieuw zullen gebruiken, met de optie -v:
sudo iptables -L INPUT -v

Merk op dat onze lijst nu nog twee kolommen heeft met de naam pkts En bytes. We hebben verschillende manieren geleerd om de iptables alle regelopdrachten te laten weergeven, en het is nu tijd om te weten hoe je het aantal pakketten en de totale grootte opnieuw kunt instellen.
Hoe kan ik het aantal pakketten en de totale grootte resetten?
U moet de optie Z gebruiken als u voor uw regels duidelijke of nul pakket- en bytetellers wenst. Ze worden ook gereset als er opnieuw wordt opgestart, wat handig is als u wilt zien of de server nieuw verkeer ontvangt dat voldoet aan uw bestaande regels.
Je kunt de tellers voor alle ketens en regels wissen met behulp van de -Z-optie op zichzelf:
sudo iptables -Z
Om de tellers voor alle regels in een specifieke keten te verwijderen, moet u de optie -Z gebruiken en de keten specificeren. Het volgende commando wordt bijvoorbeeld gebruikt om de INPUT-ketentellers te wissen:
sudo iptables -Z INPUT
Als u de tellers voor een specifieke regel wilt verwijderen, moet u de ketennaam en het regelnummer nauwkeurig vermelden. U kunt bijvoorbeeld de volgende opdracht uitvoeren om de tellers voor de eerste regel in de INPUT-keten op nul te zetten:
sudo iptables -Z INPUT 1
Naast dat je weet dat iptables alle regelopdrachten toont en manieren om de iptables-pakket- en bytetellers te resetten, is het goed om te weten hoe je de iptables-regel kunt verwijderen.
Hoe iptables-regels verwijderen?
U kunt meerdere opdrachten gebruiken om Iptables-regels te verwijderen of zelfs alle regels in een keten te verwijderen. Hier zullen we deze methoden bespreken,
Regels op specificatie verwijderen
Een van de manieren om iptables-regels te verwijderen is door dit te doen via regelspecificatie. Hiermee kunt u de opdracht iptables uitvoeren met de -D-optie en de regelspecificatie. Als u regels wilt verwijderen met deze techniek, kunt u de uitvoer van de regelslijst, iptables -S, gebruiken voor hulp.
Om bijvoorbeeld de regel te verwijderen die ongeldige binnenkomende pakketten verwijdert (-A INPUT -m conntrack –ctstate INVALID -j DROP), kunt u de volgende opdrachtregel uitvoeren:
sudo iptables -D INPUT -m conntrack --ctstate INVALID -j DROP
Houd er rekening mee dat de optie -A bedoeld is om de regelpositie aan te geven tijdens het maken en hier moet worden uitgesloten.
Verwijder regels per keten en nummer
De andere methode die u kunt gebruiken om iptables-regels te verwijderen is via de keten- en regelnummer. Typ de volgende opdracht om het regelnummer van een regel te kiezen, de regels in tabelindeling weer te geven en de –regelnummers optie:
sudo iptables -L --line-numbers

Nadat dit is uitgevoerd, hebben alle iptables-regels hun regelnummer, weergegeven door de num-header.
Als u weet welke regel u wilt verwijderen, houd dan de keten en het regelnummer in gedachten. U moet het commando iptables -D gebruiken met het keten- en regelnummer. Als u bijvoorbeeld de invoerregel wilt verwijderen die ongeldige pakketten verwijdert, ziet u dat dit regel 3 van de INPUT-keten is. Voer dus deze opdracht uit:
sudo iptables -D INPUT 3
Hoe kettingen doorspoelen?
Er is een manier waarop u alle Iptables-regels in een keten kunt verwijderen, die wij noemen een ketting doorspoelen. Hier bespreken we de verschillende methoden om dit te doen. Voordat u verder gaat, moet u ervoor zorgen dat u niet wordt buitengesloten van de server via SSH wanneer u een keten leegmaakt met een standaardbeleid van drop of deny. Want als u dat doet, moet u mogelijk via de console verbinding maken om uw toegang te herstellen.
Spoel een enkele keten door
Voor het doorspoelen van een specifieke keten of, met andere woorden, het verwijderen van alle regels in de keten, kunt u de -F of het equivalent daarvan – spoeloptie en de naam van de geselecteerde keten. Stel dat u alle regels in de INPUT-keten wilt verwijderen; wat te doen? Nou, het is gemakkelijk, voer de volgende opdracht uit:
sudo iptables -F INPUT
Spoel alle ketens door
Om alle ketens te verwijderen of door te spoelen, kunt u de optie -F of de gelijkwaardige optie –flush zelf gebruiken:
sudo iptables -F
Hoe alle regels opschonen, alle ketens verwijderen en alles accepteren?
Op dit punt zullen we beschrijven hoe u alle firewallregels, tabellen en ketens kunt opschonen en al het netwerkverkeer kunt toestaan. Houd er rekening mee dat dit proces de firewall effectief zal uitschakelen. U moet dit gedeelte dus alleen volgen als u opnieuw wilt beginnen met uw firewallconfiguratie.
U moet eerst het standaardbeleid voor elk van de ingebouwde ketens instellen op ACCEPTEREN. De belangrijkste reden dat we dit doen is om ervoor te zorgen dat u niet wordt buitengesloten van de server met SSH:
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
Dan moet je de nat- en mangeltafels doorspoelen, alle ketens doorspoelen (-F)en verwijder alle niet-standaardketens (-X) zoals dit:
sudo iptables -t nat -F
sudo iptables -t mangle -F
sudo iptables -F
sudo iptables -X
Nadat u de voorgaande opdrachten hebt uitgevoerd, staat de firewall al het netwerkverkeer toe. Als u nu uw regels wilt opsommen, zult u zien dat er geen zijn; alleen de drie standaardketens, zoals INPUT, FORWARD en OUTPUT, blijven bestaan.
Hoe stel ik iptables in Ubuntu in?
Zoals bij elk basisgedrag van een firewall kunnen de iptables-regels worden gelezen in de volgorde die op elke keten staat vermeld, wat betekent dat u de regels in de juiste volgorde moet instellen. Zodra u nieuwe regels toevoegt, worden deze aan het einde van de lijst met regels toegevoegd. U kunt nieuwe regels aan een bepaalde lijstpositie toevoegen door ze in te voegen met iptables -I <index> -commando. De <index> staat voor het bestelnummer waarvan u de regel in deze opdracht wilt invoegen. U kunt de volgende opdracht gebruiken om te begrijpen welk indexnummer u moet invoeren:
sudo iptables -L --line-numbers
Het nummer aan het begin van elke regellijn geeft de positie in de keten aan. Om een nieuwe regel toe te voegen boven een specifieke bestaande regel, moet u het indexnummer van die bestaande regel gebruiken. Als u bijvoorbeeld een nieuwe regel bovenaan de keten wilt toevoegen, moet u het volgende commando met indexnummer 1 gebruiken:
sudo iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT
Waarin verschillen iptables van firewalld?
Zowel iptables als firewalld zijn praktische hulpmiddelen voor het beheren van firewalls op verschillende Linux-systemen die expliciet zijn ontworpen voor pakketfiltering (statische filtering). Pakketfiltering is een firewallstrategie waarmee gebruikers de toegang tot een specifiek netwerk kunnen controleren door inkomende en uitgaande informatiepakketten te beheren. Ze laten ze door, of weigeren ze, op basis van vooraf ingestelde firewallregels over hun bron- en bestemmingsprotocollen, poorten en IP-adressen. Deze regels bieden zeer efficiënte beveiligingsmechanismen, waardoor het filteren van informatiepakketten een uitstekende verdediging vormt tegen apparaten die buiten het LAN (Local Area Network) van het systeem worden gerouteerd.
Merk op dat firewalld aanvankelijk werd geïntroduceerd als software om iptables te verwerken, zodat de gebruiker er gemakkelijker doorheen kan navigeren. Laten we, na deze introductie van firewalld en iptables, ze in meer detail vergelijken.
iptables versus firewalld: Systeemconfiguratie
Firewalld en iptables gebruiken verschillende configuraties en standaardopslaginstellingen. Met iptables betekent elke verandering het wegspoelen van alle oude regels en het lezen van de nieuwe, zodat het systeem opnieuw moet opstarten. Als u firewalld gebruikt, worden de regels echter niet opnieuw gemaakt; in plaats daarvan worden de verschillen en aangebrachte wijzigingen toegepast om de bestaande regels te wijzigen, zodat u kunt zien dat ze tijdens de runtime van kracht worden.
iptables versus firewalld: gebruikersinterface
Firewalld maakt gebruik van een grafische gebruikersinterface (GUI). Toch maakt iptables gebruik van een Command Line Interface (CLI), wat voor sommige mensen een uitdaging kan zijn om toegang te krijgen tot de Linux-kernelfirewallregels met behulp van iptables, waardoor firewalld een eenvoudiger optie wordt. Het zou het beste zijn om te bedenken dat iptables een kortere responstijd hebben, omdat je alleen korte commando's gebruikt. Afgezien van dit alles hebben beide hun gebruiksscenario's, dus kies degene waarmee u het prettigst werkt.
Laatste gedachten: iptables tonen regels
Iptables is een zeer flexibel firewallhulpprogramma dat speciaal is gemaakt voor Linux-besturingssystemen. Het maakt niet uit of je een nieuwkomer Linux-nerd bent of een professionele systeembeheerder; er is een manier waarop iptables-regels nuttig voor je kunnen zijn. Dit artikel vertegenwoordigde voornamelijk basisopdrachten voor dit firewallhulpprogramma, inclusief iptables show-regels en verwijder iptables-regels, met als doel de mogelijkheden van Linux kort te bespreken. Daarnaast kunt u gebruik maken van onze Linux VPS-hostingoplossingen om het ware potentieel van dit fantastische besturingssysteem te benutten. Bij cloudzy bieden we verschillende KVM-aangedreven Linux VPS-abonnementen die geschikt zijn voor meerdere gebruiksscenario's, zoals webhosting, het implementeren van een webapp of zelfs het opzetten van een omgeving om code te ontwikkelen, testen en automatiseren.
Veelgestelde vragen
Hoe kan ik alle Linux iptables-regels op specificatie weergeven?
Als u alle momenteel actieve iptables-regels wilt weergeven op basis van hun specificatie of functionaliteit, kunt u dit doen met de opdracht iptables gevolgd door de -S-vlag. Besteed aandacht aan het gebruik van de sudo trefwoord in dit geval:
sudo iptables -S
Hoe iptables-regels verwijderen?
Als u een specifieke keten wilt verwijderen, waardoor alle regels in de keten worden verwijderd, moet u dat doen gebruik de optie -F of –flush en de naam van de keten. Stel dat we alle regels in de OUTPUT-keten willen verwijderen, wat moeten we dan doen? Welnu, je moet deze opdracht uitvoeren:
sudo iptables -F UITVOER
Hoe werken iptables in Ubuntu?
De iptables-firewall vergelijkt netwerkverkeer met een reeks regels. De iptables-regels specificeren de kenmerken van een pakket dat aan de regel voldoet en welke actie moet worden ondernomen als pakketten overeenkomen. Natuurlijk zijn er veel opties om in te stellen welke pakketten aan een specifieke regel voldoen.
Worden de iptables-regels onmiddellijk van kracht? Waarom?
Ja, de iptables-regels worden onmiddellijk van kracht; omdat jouw script wordt toegevoegd aan de INPUT- en OUTPUT-ketens, en jouw regels worden toegevoegd aan het einde van die ketens.