Benutzer-Werkzeuge

Webseiten-Werkzeuge


Seitenleiste

Was fehlt?

Es liegt in der Natur der Sache: Ein Wiki ist niemals fertig. Wir geben uns große Mühe, mit der Entwicklung Schritt zu halten; lassen Supportanfragen direkt in neue Artikel einfließen … aber auch wir sind nicht perfekt. Wenn du hier nicht fündig wirst: Nicht schmollen - Bescheid sagen! Unter hallo@uberspace.de steht dir unser Team gerne bereit. Hand drauf!

webserver:security

Webserver security

HTTPS erzwingen

Ein kleiner Teil unserer alten Server nutzt mod_ssl, während der Großteil unserer Hosts mit Pound als HTTPS-Frontend arbeit. mod_ssl definiert bei HTTPS-Verbindungen eine Servervariable namens HTTPS, während HTTPS-Verbindungen über Pound eine Umgebungsvariable namens HTTPS bereitstellen. Mit einer .htaccess Datei kannst du für alle Requests, die keine dieser Variablen haben, einen Redirect auf die HTTPS-URL auslösen:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{ENV:HTTPS} !=on
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Wichtig: Die Regeln gehören ganz an den Anfang der .htaccess-Datei. Im Support stoßen wir immer mal wieder darauf, dass es Probleme mit dem Erzwingen von HTTPS in Verbindung mit einer Proxy-Anweisung in der .htaccess gibt. Das basiert auf einem Missverständnis, die Proxy-Anweisung [P] wirkt nämlich gleichzeitig noch wie ein [L], alle nachfolgenden Anweisungen in der .htaccess werden also ignoriert.

Wenn du neben dem HTTPS-Redirect auch einen Login mit Basic-Authentication willst, wird dein Passwort in manchen Fällen ungeschützt übertragen. Um das zu vermeiden, wirf bitte einen Blick auf den htaccess-Artikel.

HTTP response headers

Per uberspace-configure-webserver kannst du unter anderem sicherheitsrelevante HTTP response header an- und ausschalten. Mit –help kannst du dir anschauen, was das Tool alles kann und wie es bedient werden möchte:

[madeleine@neon ~]$ uberspace-configure-webserver --help
invalid syntax or missing feature.
Usage: uberspace-configure-webserver <enable|disable|status> <feature>
 
This shell script configures the vhost.

features:
         error_log
           handles Apache error_log
         
         hsts
           sets Strict-Transport-Security: max-age=15768000
         
         nosniff
           sets X-Content-Type-Options: nosniff
         
         xframe_deny
           sets X-Frame-Options: DENY
         
         xxss_protection
           sets X-Xss-Protection: 1; mode=block

Options:

  -h, --help
         This help message

Im Blog von Scott Helme wird sehr schön zusammen gefasst, welcher Header welche Auswirkungen hat.

webserver/security.txt · Zuletzt geändert: 2016/03/08 13:18 von uber