🔐 Hoofdstuk 15: Firewalls & Netwerkbeveiliging¶
In dit hoofdstuk leer je hoe je je Linux-systeem beveiligt met firewalls en tools voor netwerkbeveiliging. We behandelen de klassieke en moderne firewall-tools, laten voorbeeldconfiguraties zien en geven de sterke en zwakke punten van elke tool.
🔹 iptables¶
iptables is de klassieke Linux firewall-tool die netwerkpakketten filtert op basis van regels.
📥 Installatie / Update / Verwijderen¶
sudo apt install iptables
sudo apt update && sudo apt upgrade iptables
sudo apt remove iptables
which iptables
iptables --version
▶️ Gebruik¶
# Huidige regels tonen
sudo iptables -L -v -n
# Verkeer op poort 22 (SSH) toestaan
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Regel verwijderen
sudo iptables -D INPUT -p tcp --dport 22 -j ACCEPT
📊 Voorbeeldoutput¶
Chain INPUT (policy DROP 5 packets, 300 bytes)
pkts bytes target prot opt in out source destination
12 800 ACCEPT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
Uitleg
- policy DROP: standaard wordt alles geblokkeerd tenzij toegestaan.
- pkts/bytes: aantal pakketten en bytes die matchen.
- target: actie (ACCEPT, DROP, REJECT).
Sterke punten
- Zeer krachtig en flexibel.
- Fijnmazige controle.
- Breed ondersteund.
Zwakke punten
- Complex voor beginners.
- Regels verdwijnen bij reboot zonder extra configuratie.
🔹 ufw (Uncomplicated Firewall)¶
ufw is een vereenvoudigde interface bovenop iptables.
📥 Installatie / Update / Verwijderen¶
sudo apt install ufw
sudo apt update && sudo apt upgrade ufw
sudo apt remove ufw
which ufw
ufw --version
▶️ Gebruik¶
# Firewall activeren
sudo ufw enable
# SSH toestaan
sudo ufw allow ssh
# HTTP toestaan
sudo ufw allow 80/tcp
# Status controleren
sudo ufw status verbose
📊 Voorbeeldoutput¶
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
80/tcp ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
Uitleg
- ALLOW: verkeer wordt toegestaan.
- Anywhere: regels gelden voor alle IP’s.
Sterke punten
- Zeer gebruiksvriendelijk.
- Ideaal voor snelle setup.
- Goede defaults.
Zwakke punten
- Minder flexibel dan iptables.
- Niet geschikt voor zeer complexe omgevingen.
🔹 firewalld¶
firewalld is een moderne firewall-tool die zones en services gebruikt.
📥 Installatie / Update / Verwijderen¶
sudo apt install firewalld
sudo apt update && sudo apt upgrade firewalld
sudo apt remove firewalld
which firewall-cmd
firewall-cmd --version
▶️ Gebruik¶
# Firewall starten en activeren
sudo systemctl start firewalld
sudo systemctl enable firewalld
# Zone controleren
sudo firewall-cmd --get-active-zones
# HTTP toevoegen
sudo firewall-cmd --zone=public --add-service=http --permanent
# Reloaden
sudo firewall-cmd --reload
📊 Voorbeeldoutput¶
Uitleg
- zones: bepalen regels per interface/netwerk (bijv. public, home).
- services: voorgeconfigureerde regels voor veelgebruikte protocollen.
Sterke punten
- Dynamische regels (geen reboot nodig).
- Zone-gebaseerde configuratie.
- Moderne standaard in RHEL/CentOS/Fedora.
Zwakke punten
- Minder bekend op Debian/Ubuntu.
- Complexer dan UFW voor beginners.
🔹 fail2ban¶
fail2ban beschermt tegen brute-force aanvallen door IP’s tijdelijk te blokkeren.
📥 Installatie / Update / Verwijderen¶
sudo apt install fail2ban
sudo apt update && sudo apt upgrade fail2ban
sudo apt remove fail2ban
which fail2ban-client
fail2ban-client --version
▶️ Gebruik¶
# Service starten
sudo systemctl enable --now fail2ban
# Status bekijken
sudo fail2ban-client status
# Status specifieke jail (bijv. sshd)
sudo fail2ban-client status sshd
📊 Voorbeeldoutput¶
Status
|- Number of jail: 1
`- Jail list: sshd
Status for the jail: sshd
|- Filter
| |- Currently failed: 5
| |- Total failed: 20
| `- File list: /var/log/auth.log
`- Actions
|- Currently banned: 2
|- Total banned: 4
`- Banned IP list: 192.168.1.101 192.168.1.102
Uitleg
- jail: configuratie voor een service (bijv. sshd).
- banned IP list: lijst met geblokkeerde IP-adressen.
Sterke punten
- Bescherming tegen brute-force aanvallen.
- Flexibel (kan ook webservers, mailservers beveiligen).
- Werkt samen met iptables, ufw of firewalld.
Zwakke punten
- Alleen reactief, geen proactieve beveiliging.
- Vereist goede configuratie om false positives te voorkomen.