[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Firefox und Strict-Transport-Security funktioniert! Und wie!


On Sun, Apr 13, 2014 at 01:04:06AM +0200, Raphael Eiselstein wrote:
> Korrekt waere in diesem Fall, die beiden Redirects aus dem
> HTTP-VirtualHost in den HTTPS-VirtualHost zu uebernehmen, d.h. im
> HTTP-VHost ausschliesslich "/" nach "https://wiki.uugrn.org/"; umzuleiten
> und dann im HTTPS-Vhost die alten URIs unter "/wiki/" nach "/"
> umzuleiten. Dann klappt das auch mit HSTS.

Ich haette das vielleicht vorher ausprobieren sollen. 
Genau *DAS* funktioniert nicht (im Reverse-Proxy): 

"Redirect /wiki/" unterliegt scheinbar dem "ProxyPass /".

Ich habe es nun im Wiki-Apache auf wiki.uugrn.lan eingetragen:
<VirtualHost *:443>
    ServerAdmin         wiki@xxxxxxxxx
    ServerName          wiki.uugrn.org

    DocumentRoot        /data/www/wiki.uugrn.org/secure/

    Redirect /wiki/index.php    https://wiki.uugrn.org/index.php
    Redirect /wiki/             https://wiki.uugrn.org/
[...]
</VirtualHost>

Damit tut es dann jetzt auch:
------------------------------------------------
$ curl --output /dev/null --silent -D - http://wiki.uugrn.org/wiki/Hauptseite
HTTP/1.1 302 Found
Server: Apache
Date: Sat, 12 Apr 2014 23:19:27 GMT
Location: https://wiki.uugrn.org/Hauptseite
Content-Length: 217
Content-Type: text/html; charset=iso-8859-1
------------------------------------------------

D.h. der URL http://wiki.uugrn.org/wiki/Hauptseite wird nun an 2 Stellen
korrigiert:

1. im HTTP-Vhost auf dem Reverse-Proxy wird alles 1:1 auf HTTPS
umgeleitet (das, was HTST clientseitig dann auch tut)

2. im VirtualHost auf dem Zielserver wird dann der URI korrigiert fuer
/wiki/index.php und /wiki/.

Noch besser waere es, die ohnehin dort vorhandenen Rewriting-Rules fuer
die MediaWiki-Pretty-URLs so zu erweitern, dass /wiki/index.php und
/wiki/ passend umgeschrieben werden (mit Redirect), transparenter
erscheint wir die Verwendung von "Redirect" anstelle von "RewriteCond"

Gruss
Raphael

PS: MediaWiki mit Pretty-URLs und Article-Namespace direkt unter "/" ist
kein Hexenwerk, auch wenn diverse Anleitungen das (teilweise sogar
falsch) dokumentieren. 

<VirtualHost *:443>
    ServerAdmin         wiki@xxxxxxxxx
    ServerName          wiki.uugrn.org
    DocumentRoot        /path/to/htdocs/
    Redirect /wiki/index.php    https://wiki.uugrn.org/index.php
    Redirect /wiki/             https://wiki.uugrn.org/

    ErrorLog /path/to/logs/error.log
    CustomLog /path/to/logs/access.log common
    CustomLog /path/to/logs/combined.log combined
    TransferLog /path/to/logs/transfer.log

    php_admin_flag safe_mode Off
    php_admin_flag file_uploads On
    php_value upload_max_filesize 16M
    php_admin_flag allow_url_fopen On
    php_value max_input_time 600
    php_value max_execution_time 120

    RLimitCPU 120 240
    RLimitMEM 268435456 536870912
    RLimitNPROC 50 100

    <Directory "/path/to/htdocs/">
        AllowOverride none
        Order allow,deny
        Allow from all

        RewriteEngine On
        RewriteBase /
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule . /index.php5 [L]
    </Directory>

    SetEnv wikiServer satellitehttps

    Include /â?¦/ssl/â?¦/httpd_ssl.conf

    <FilesMatch "\.(cgi|shtml|phtml|php)$">
        SSLOptions +StdEnvVars
    </FilesMatch>
    <Directory "/usr/local/www/apache22/cgi-bin">
        SSLOptions +StdEnvVars
    </Directory>
</VirtualHost>

wobei /â?¦/ssl/â?¦/httpd_ssl.conf einheitlich fuer alle HTTPS-Server so aussieht:

-----------------------------
SSLEngine on

SSLProtocol ALL -SSLv2 -SSLv3
SSLHonorCipherOrder on
SSLCipherSuite HIGH:!ADH:!AECDH:!RC4:!3DES

SSLCertificateFile          /â?¦/ssl/â?¦/server_crt.pem
SSLCertificateKeyFile       /â?¦/ssl/â?¦/server_key.pem
SSLCertificateChainFile     /â?¦/ssl/â?¦/server_intermediate_crt.pem
-----------------------------


-- 
Raphael Eiselstein <rabe@xxxxxxxxx>               http://rabe.uugrn.org/
PGP (neu):            4E63 5307 6F6A 036D 518D  3C4F 75EE EA14 F625 DB4E
.........|.........|.........|.........|.........|.........|.........|..




-- 
UUGRN e.V. http://www.uugrn.org/
http://mailman.uugrn.org/mailman/listinfo/uugrn
Wiki: https://wiki.uugrn.org/UUGRN:Mailingliste
Archiv: http://lists.uugrn.org/