Drupal beveiligen: complete handleiding beschermen
Drupal beveiligen: complete handleiding beschermen
Drupal staat bekend om zijn sterke beveiliging, maar alleen als je het correct configureert en onderhoudt. In deze handleiding behandelen we alle essentiƫle beveiligingsmaatregelen om je Drupal website te beschermen tegen aanvallen.
Waarom Drupal beveiliging belangrijk is
Drupal wordt gebruikt door overheden en grote organisaties juist vanwege de goede beveiliging. Maar elke website is een potentieel doelwit:
- Hackers zoeken naar kwetsbaarheden
- Malware kan bezoekers infecteren
- Gegevens kunnen gestolen worden
- Je site kan misbruikt worden voor spam Met de juiste maatregelen voorkom je 95% van alle aanvallen.
Updates als eerste verdedigingslijn
Updates zijn de belangrijkste beveiligingsmaatregel voor Drupal.
Security advisories volgen
Drupal publiceert security updates op vaste tijden:
- Volg de Drupal Security Team
- Abonneer je op security meldingen
- Security releases komen op woensdag
- Kritieke updates worden direct aangekondigd
Drupal core updaten
Houd de core altijd up-to-date:
- Ga naar Reports en dan Available updates
- Je ziet beschikbare updates
- Security updates hebben een rood label
- Maak eerst een backup
- Voer de update uit Via Composer (aanbevolen):
# Controleer beschikbare updates
composer outdated drupal/*
# Update Drupal core
composer update drupal/core-recommended drupal/core-composer-scaffold --with-all-dependencies
# Voer database updates uit
drush updatedb
drush cache:rebuild
Modules updaten
Modules kunnen ook beveiligingslekken hebben:
- Ga naar Reports en dan Available updates
- Controleer het tabblad Security updates only
- Update modules met security issues eerst
# Update alle modules
composer update drupal/*
# Update specifieke module
composer update drupal/webform
Sterke wachtwoorden en authenticatie
Zwakke wachtwoorden zijn een veelvoorkomende kwetsbaarheid.
Wachtwoordbeleid instellen
- Ga naar Configuration en dan People
- Klik op Account settings
- Configureer wachtwoordvereisten:
- Minimale lengte
- Verplichte tekens (hoofdletters, cijfers, speciale tekens)
- Sla de instellingen op
Password Policy module
Voor uitgebreider beleid:
composer require drupal/password_policy
Configureer regels voor:
- Minimale wachtwoordlengte (12+ karakters)
- Verplichte karaktertypes
- Wachtwoordgeschiedenis
- Vervaldatum
Two-factor authenticatie
Voeg een extra beveiligingslaag toe:
composer require drupal/tfa
Configuratie:
- Ga naar Configuration en dan TFA
- Kies authenticatiemethode (TOTP, recovery codes)
- Vereis 2FA voor beheerders
- Gebruikers stellen het in via hun profiel
Gebruikersrechten beperken
Het principe van minimale rechten is essentieel.
Rollen herzien
- Ga naar People en dan Permissions
- Controleer elke rol op onnodige rechten
- Verwijder rechten die niet nodig zijn
- Let vooral op:
- Content beheer rechten
- Admin rechten
- PHP uitvoer rechten
Geen PHP in content
De PHP Filter module is verwijderd uit Drupal 8+ om goede redenen. Installeer deze nooit. Gebruik in plaats daarvan:
- Custom modules voor dynamische functionaliteit
- Twig templates voor weergave
Admin accounts beperken
- Minimaliseer het aantal admin accounts
- Gebruik specifieke rollen in plaats van volledige admin
- Review regelmatig wie welke toegang heeft
Bestandsrechten en server beveiliging
Correcte bestandsrechten voorkomen veel aanvallen.
Aanbevolen rechten
Drupal heeft specifieke rechten nodig:
# Mappen: 755
find /path/to/drupal -type d -exec chmod 755 {} \;
# Bestanden: 644
find /path/to/drupal -type f -exec chmod 644 {} \;
# sites/default/files writable
chmod 755 sites/default/files
# settings.php readonly
chmod 444 sites/default/settings.php
settings.php beveiligen
Na installatie moet settings.php readonly zijn:
chmod 444 sites/default/settings.php
chmod 555 sites/default
Trusted host settings
Configureer welke hostnamen geldig zijn in settings.php:
$settings['trusted_host_patterns'] = [
'^www\.jouwdomein\.nl$',
'^jouwdomein\.nl$',
];
Dit voorkomt host header aanvallen.
SSL/HTTPS configureren
Alle Drupal sites moeten HTTPS gebruiken.
SSL activeren
Bij Theory7 hosting is SSL gratis beschikbaar:
- Activeer Let's Encrypt in DirectAdmin
- Wacht tot het certificaat is aangemaakt
- Test of HTTPS werkt
HTTPS afdwingen
Forceer HTTPS via .htaccess:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Of via settings.php:
$settings['https'] = TRUE;
Secure cookies
Zorg dat cookies alleen via HTTPS worden verzonden:
// In settings.php
ini_set('session.cookie_secure', 1);
Security modules installeren
Extra modules versterken je beveiliging.
Security Kit
composer require drupal/seckit
Configureert:
- Content Security Policy (CSP)
- Clickjacking bescherming
- Cross-site scripting (XSS) preventie
Honeypot
Beschermt tegen spam bots:
composer require drupal/honeypot
Voegt onzichtbare velden toe die bots invullen, legitieme gebruikers niet.
Flood Control
Beschermt tegen brute force aanvallen:
composer require drupal/flood_control
Configureer limieten voor:
- Login pogingen per IP
- Login pogingen per account
- Contact formulier verzendingen
reCAPTCHA
Beschermt formulieren tegen bots:
composer require drupal/recaptcha
Configureer met je Google reCAPTCHA keys.
Monitoring en logging
Detecteer problemen snel door goede monitoring.
Drupal logs bekijken
- Ga naar Reports en dan Recent log messages
- Filter op severity level
- Let op herhaalde fouten
- Controleer op verdachte activiteit
Database log configureren
- Ga naar Configuration en dan Development
- Klik op Logging and errors
- Stel in hoeveel berichten bewaard worden
- Log errors naar syslog voor permanente opslag
Externe monitoring
Overweeg externe monitoring voor:
- Uptime monitoring
- Security scans
- Performance metrics
- SSL certificaat expiratie
Backup strategie
Backups zijn je laatste verdedigingslijn.
Backup and Migrate module
composer require drupal/backup_migrate
Configureer:
- Automatische dagelijkse backups
- Opslag op externe locatie
- Bewaar meerdere versies
- Test regelmatig het herstellen
DirectAdmin backups
Combineer met DirectAdmin backups voor extra zekerheid.
Beveiligingschecklist
Controleer regelmatig:
- Drupal core en modules up-to-date
- Sterke wachtwoorden voor alle accounts
- Two-factor authenticatie voor admins
- Minimale rechten per rol
- Bestandsrechten correct
- HTTPS actief en afgedwongen
- Security modules geinstalleerd
- Logging actief
- Backups werkend
Gerelateerde artikelen
- Drupal backup en migratie
- Drupal basis configuratie
- Drupal modules en themes
- Meer informatie over Drupal hosting bij Theory7
Hulp nodig?
We staan voor je klaar! Loop je ergens tegenaan of heb je vragen? Ons supportteam helpt je graag persoonlijk verder. Stuur ons een berichtje via het ticketsysteem - we reageren meestal binnen een paar uur en denken graag met je mee.
0 van 0 vonden dit nuttig