π§± Hoofdstuk 18.2: FirewalltechnologieΓ«n in Linux
Linux ondersteunt meerdere firewalltechnologieΓ«n, die gebruikmaken van Netfilter β een ingebouwde kernelcomponent voor netwerkpakketfiltering. Afhankelijk van de distributie en voorkeur kunnen verschillende tools worden gebruikt.
ββββββββββββββββββββββββββββββββββββββββββββ
π‘οΈ Netfilter en Firewall-oplossingen
ββββββββββββββββββββββββββββββββββββββββββββ
Netfilter biedt de backend waarop firewalltools draaien. Verschillende tools bieden gebruikersinterfaces voor het configureren van deze backend:
Firewall Technologie Beschrijving Tool
ββββββββββββββββββββββββ βββββββββββββββββββββββββββββββββββββββββββββββββββββββ ββββββββββββββ
Firewalld Dynamische firewall met zones en services firewall-cmd
UFW (Uncomplicated) Eenvoudige CLI-firewall, gericht op beginners ufw
nftables Modern, efficiΓ«nt alternatief voor iptables nft
iptables Klassieke tool met veel flexibiliteit iptables
ββββββββββββββββββββββββββββββββββββββββββββ
π₯ Firewalld β Dynamische Zones in Red Hat
ββββββββββββββββββββββββββββββββββββββββββββ
Firewalld maakt gebruik van *zones* die verschillende beveiligingsniveaus vertegenwoordigen. Je kunt netwerken en interfaces aan zones toewijzen.
π― Veelvoorkomende Firewalld-zones:
Zone | Beschrijving
βββββββββββ|ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Drop | Alle inkomende pakketten worden genegeerd.
Block | Ongevraagd verkeer wordt geweigerd met foutmelding (ICMP).
Public | Alleen expliciet toegestane diensten zijn toegankelijk.
DMZ | Voor publiek toegankelijke servers met beperkte toegang.
Trusted | Alle verkeer wordt toegestaan.
π οΈ Firewalld-commandoβs:
β’ `firewall-cmd --get-zones` β Toon alle zones
β’ `firewall-cmd --set-default-zone=public` β Wijzig standaardzone
β’ `firewall-cmd --get-services` β Toon bekende services
β’ `firewall-cmd --add-service=ssh --zone=home` β Voeg SSH toe aan home-zone
β’ `firewall-cmd --runtime-to-permanent` β Maak regels blijvend
ββββββββββββββββββββββββββββββββββββββββββββ
βοΈ iptables β Klassiek Firewallbeheer
ββββββββββββββββββββββββββββββββββββββββββββ
Iptables gebruikt *tables* en *chains* om netwerkverkeer te beheren.
π₯ Veelgebruikte chains:
β’ PREROUTING β VΓ³Γ³r het routeren van pakketten
β’ INPUT β Binnenkomend verkeer naar het systeem
β’ FORWARD β Doorgestuurd verkeer
β’ OUTPUT β Uitgaand verkeer van het systeem
β’ POSTROUTING β Na het routeren (bijv. NAT)
ποΈ Tables:
β’ `filter` β Standaard filtering (ACCEPT/DROP)
β’ `nat` β Adresvertaling (bijv. bij internetdeling)
β’ `mangle` β Aanpassen van headers of pakketinhoud
β’ `raw` β Uitzonderingen op connection tracking
π Voorbeeldregel:
sudo iptables -I INPUT 1 -s 192.168.0.104 -j REJECT
β€ -I INPUT 1: Voeg regel toe bovenaan INPUT-chain
β€ -s: Bronadres
β€ -j: Actie (ACCEPT, DROP, REJECT)
ββββββββββββββββββββββββββββββββββββββββββββ
π nftables β De Moderne iptables-opvolger
ββββββββββββββββββββββββββββββββββββββββββββ
nftables biedt eenvoudiger beheer en efficiΓ«ntere verwerking dan iptables. Het gebruikt een centrale syntaxis voor IPv4, IPv6 en ethernet.
π οΈ Basiscommandoβs:
β’ nft list tables β Toon beschikbare tables
β’ nft add table inet filter β Maak een nieuwe table
β’ nft 'add chain ip filter input { type filter hook input priority 0; }' β Voeg een chain toe
β’ nft 'add rule ip filter input tcp dport ssh accept' β Laat SSH-verkeer toe
β’ nft flush table filter β Verwijder alle regels uit de filter-table
ββββββββββββββββββββββββββββββββββββββββββββ
π― UFW β Simpele Firewall voor Debian/Ubuntu
ββββββββββββββββββββββββββββββββββββββββββββ
UFW is ontworpen voor gebruiksgemak en eenvoudige configuratie via de commandoregel. Ideaal voor beginners of kleinere servers.
π Basiscommandoβs:
β’ ufw enable β Schakel firewall in
β’ ufw disable β Schakel firewall uit
β’ ufw status β Bekijk actieve regels
β’ ufw allow 22/tcp β Sta SSH toe
β’ ufw deny 80 β Blokkeer HTTP
β’ ufw delete allow 22 β Verwijder SSH-regel
ββββββββββββββββββββββββββββββββββββββββββββ
β
Samenvatting
ββββββββββββββββββββββββββββββββββββββββββββ
β’ Linux ondersteunt meerdere firewalltools op basis van Netfilter
β’ Firewalld gebruikt dynamische zones en wordt standaard gebruikt op Red Hat
β’ iptables is krachtig maar complex, nftables is de moderne vervanger
β’ UFW is ideaal voor eenvoudige Debian-gebaseerde configuraties
β’ Firewalls gebruiken chains en regels om netwerkverkeer te filteren