Apache2 Workshop Sicherheit: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 29: Zeile 29:
  
 
´
 
´
 
== Zugriffsbeschränkungen durch IP-Whitelist ==
 
* Nur bestimmte IPs erhalten Zugriff:
 
<pre>
 
<Directory /var/www/secure>
 
    Require ip 192.168.1.100 10.0.0.0/24
 
</Directory>
 
</pre>
 
  
 
== Schutz vor Brute-Force-Angriffen ==
 
== Schutz vor Brute-Force-Angriffen ==

Version vom 23. März 2025, 15:50 Uhr

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"

´

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.