Terug naar blog
Januari 19, 2026Handleidingen

Hoe uw VPS te beschermen tegen DDoS-aanvallen: Praktische handleiding

Uitgebreide handleiding over het beschermen van uw VPS tegen DDoS-aanvallen met behulp van firewalls, snelheidsbeperking en andere bewezen methoden.

Hoe uw VPS te beschermen tegen DDoS-aanvallen: Praktische handleiding

DDoS-aanvallen (Distributed Denial of Service) kunnen uw server binnen enkele minuten offline halen, wat leidt tot omzetverlies, klantontevredenheid en reputatieschade. In 2026 zijn dergelijke aanvallen geavanceerder en toegankelijker geworden. Gelukkig zijn moderne beschermingsmethoden ook geëvolueerd. Deze handleiding laat u zien hoe u uw Hiddence VPS beschermt tegen de meest voorkomende soorten DDoS-aanvallen.

Wat is een DDoS-aanval?

Een DDoS-aanval treedt op wanneer meerdere computers (botnet) gelijktijdig verzoeken naar uw server sturen, waardoor de bronnen worden overweldigd en deze niet beschikbaar is voor legitieme gebruikers.

Belangrijkste soorten DDoS-aanvallen

  • Volumetrische aanvallen (L3/L4): UDP-flood, ICMP, SYN-flood — overweldigen netwerkbandbreedte
  • Applicatielaag-aanvallen (L7): HTTP-flood, Slowloris — richten zich op applicatielaag
  • Protocolaanvallen: Misbruik maken van kwetsbaarheden in netwerkprotocollen

Ingebouwde Hiddence-bescherming

Alle Hiddence VPS bevatten basis Layer 3-4 DDoS-bescherming (netwerkniveau). Dit filtert automatisch de meeste volumetrische aanvallen. Layer 7 (applicatie) aanvallen vereisen echter aanvullende configuratie.

Stap 1: Firewall-instelling

De eerste verdedigingslinie is een juiste firewallconfiguratie. UFW (Uncomplicated Firewall) is een eenvoudig en effectief hulpmiddel voor Ubuntu/Debian.

bash
# Installeer UFW
sudo apt update && sudo apt install ufw -y

# Sta SSH toe (BELANGRIJK! Doe dit voordat u UFW inschakelt)
sudo ufw allow 22/tcp

# Sta HTTP en HTTPS toe
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Schakel UFW in
sudo ufw enable

# Controleer status
sudo ufw status verbose

# Geavanceerde beschermingsregels:
# Beperk SSH-verbindingen (brute force-bescherming)
sudo ufw limit 22/tcp

# Blokkeer ICMP-ping-floods
sudo nano /etc/ufw/before.rules
# Voeg toe na *filter:
-A ufw-before-input -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
-A ufw-before-input -p icmp --icmp-type echo-request -j DROP

# Bescherming tegen SYN-flood
sudo nano /etc/sysctl.conf
# Voeg toe:
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 5

# Pas wijzigingen toe
sudo sysctl -p

Stap 2: Fail2Ban installeren

Fail2Ban blokkeert automatisch IP-adressen die verdachte activiteit vertonen (meerdere mislukte inlogpogingen, poortscanning).

bash
# Installeer
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

# Configuratie voor SSH- en HTTP-bescherming
# Maak lokale configuratie
sudo nano /etc/fail2ban/jail.local

# Voeg toe:
[DEFAULT]
bantime = 3600
findtime = 600
maxretry = 5
banaction = ufw

[sshd]
enabled = true
port = 22
logpath = /var/log/auth.log

[nginx-http-auth]
enabled = true
filter = nginx-http-auth
port = http,https
logpath = /var/log/nginx/error.log

[nginx-limit-req]
enabled = true
filter = nginx-limit-req
port = http,https
logpath = /var/log/nginx/error.log

# Herstart Fail2Ban
sudo systemctl restart fail2ban

# Controleer status
sudo fail2ban-client status

Stap 3: Nginx-bescherming

Als u Nginx gebruikt, configureer snelheidsbeperking om te beschermen tegen HTTP-flood-aanvallen.

bash
sudo nano /etc/nginx/nginx.conf

# Voeg toe aan http-blok:
http {
    # Verzoeklimiet: 10 verzoeken per seconde per IP
    limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
    
    # Verbindingslimiet
    limit_conn_zone $binary_remote_addr zone=addr:10m;
    
    # Slowloris-bescherming
    client_body_timeout 10s;
    client_header_timeout 10s;
    keepalive_timeout 5s 5s;
    send_timeout 10s;
    
    # Rest van configuratie...
}

# Voeg toe aan server-blok:
server {
    location / {
        # Pas verzoeklimiet toe
        limit_req zone=one burst=20 nodelay;
        
        # Verbindingslimiet: max 10 per IP
        limit_conn addr 10;
        
        # Uw configuratie...
    }
}

# Test configuratie en herlaad
sudo nginx -t
sudo systemctl reload nginx

Stap 4: Gebruik CDN

Voor maximale bescherming, gebruik een CDN-service zoals Cloudflare. CDN fungeert als proxy, verbergt het echte IP van uw server en absorbeert de meeste DDoS-aanvallen. Voordelen: verberg echt IP, automatische filtering van kwaadaardig verkeer, belastingsverdeling, gratis SSL/TLS, WAF voor L7-bescherming.

  • Registreer op cloudflare.com (gratis plan beschikbaar)
  • Voeg uw domein toe en wijzig NS-records bij uw registrar
  • Schakel 'Proxy'-modus in (oranje wolk) voor DNS-records
  • Stel SSL-modus in op 'Full (strict)' in SSL/TLS-sectie
  • Schakel 'DDoS Protection' en 'Bot Fight Mode' in in beveiligingsinstellingen

Stap 5: Monitoring

Regelmatige monitoring helpt aanvallen vroegtijdig te detecteren.

bash
# Monitor actieve verbindingen
watch -n 1 'ss -s'

# Bekijk top IP's op verbindingsaantal
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

# Bekijk logs in real-time
sudo tail -f /var/log/nginx/access.log
sudo journalctl -u nginx -f

# Controleer geblokkeerde IP's in Fail2Ban
sudo fail2ban-client status sshd

Noodmaatregelen

Als een aanval al aan de gang is, neem dan de volgende maatregelen:

  • Identificeer de bron: Gebruik 'netstat' of logs om aanvallende IP's te identificeren
  • Tijdelijke blokkering: sudo ufw insert 1 deny from AANVALLEND_IP
  • Blokkeer hele subnetten: sudo ufw deny from 123.45.0.0/16
  • Beperk snelheidslimiet: Verlaag tijdelijk Nginx-limieten naar 1-5 req/s
  • Neem contact op met ondersteuning: Neem contact op met Hiddence-ondersteuning voor activering van geavanceerde bescherming
  • Schakel 'Under Attack Mode' in Cloudflare in (indien gebruikt)

Best Practices

  • Publiceer nooit het echte IP van uw server als u CDN gebruikt
  • Update regelmatig het systeem: sudo apt update && sudo apt upgrade
  • Gebruik SSH-sleutels in plaats van wachtwoorden voor servertoegang
  • Wijzig standaard SSH-poort (22) naar niet-standaard
  • Stel automatische back-ups in voor snel herstel
  • Gebruik aparte IP's voor kritieke services
  • Schakel logging in en controleer regelmatig logs op verdachte activiteit
  • Overweeg geografische blokkering als uw service niet globaal is