Apache2 Workshop Sicherheit
Version vom 15. März 2025, 09:24 Uhr von Thomas.will (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „= Apache2 Sicherheit = * Die Absicherung eines Apache-Webservers ist essenziell, um Angriffe zu verhindern. * Wichtige Maßnahmen umfassen die Minimierung der…“)
Apache2 Sicherheit
- Die Absicherung eines Apache-Webservers ist essenziell, um Angriffe zu verhindern.
- Wichtige Maßnahmen umfassen die Minimierung der Angriffsfläche, sichere Konfigurationen und Zugriffskontrollen.
- Die Sicherheitseinstellungen werden in /etc/apache2/apache2.conf oder pro VirtualHost vorgenommen.
Basismaßnahmen zur Absicherung
- Apache auf dem neuesten Stand halten:
- apt update && apt upgrade apache2
- Unnötige Module deaktivieren:
- a2dismod autoindex cgi dav_fs
- Verzeichnisschutz in der Apache-Konfiguration:
<Directory />
AllowOverride None
Require all denied
</Directory>
Sichere Header setzen (mod_headers)
- Sicherheits-Header verhindern Angriffe wie XSS und Clickjacking.
- Modul aktivieren:
- a2enmod headers
- Konfiguration in /etc/apache2/conf-available/security.conf:
Header always set X-Frame-Options "SAMEORIGIN" Header always set X-XSS-Protection "1; mode=block" Header always set X-Content-Type-Options "nosniff"
HTTPS und SSL aktivieren
- Sicherer Zugriff erfordert SSL/TLS-Verschlüsselung.
- Modul aktivieren:
- a2enmod ssl
- Beispiel für eine VirtualHost-Konfiguration mit SSL:
<VirtualHost *:443>
ServerName secure.example.com
SSLEngine on
SSLCertificateFile /etc/ssl/certs/example.crt
SSLCertificateKeyFile /etc/ssl/private/example.key
Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
</VirtualHost>
Zugriffsbeschränkungen durch IP-Whitelist
- Nur bestimmte IPs erhalten Zugriff:
<Directory /var/www/secure>
Require ip 192.168.1.100 10.0.0.0/24
</Directory>
Schutz vor Brute-Force-Angriffen
- mod_evasive schützt gegen wiederholte Anfragen von einer IP.
- Modul aktivieren:
- a2enmod evasive
- Konfiguration in /etc/apache2/mods-available/evasive.conf:
DOSHashTableSize 3097 DOSPageCount 5 DOSSiteCount 50 DOSBlockingPeriod 600
Schutz vor schädlichen Anfragen (mod_security)
- mod_security filtert potenziell gefährlichen Traffic.
- Modul installieren:
- apt install libapache2-mod-security2
- Beispielregel zum Blockieren von SQL-Injections:
SecRule ARGS "select|union|insert|delete|drop" "id:1001,deny,status:403"
Aufgaben
- Aktiviere SSL und setze eine sichere VirtualHost-Konfiguration um.
- Implementiere IP-Whitelisting für einen sensiblen Bereich.
- Konfiguriere mod_evasive und teste den Schutz gegen Brute-Force.
- Überprüfe die Apache-Header mit curl -I https://example.com.
Warum ist Sicherheit wichtig?
- Schutz vor Datenverlust und unbefugtem Zugriff.
- Verhinderung von Angriffen wie XSS, SQL-Injections und Brute-Force.
- Sicherstellung der Compliance mit Sicherheitsstandards.