Benutzer-Werkzeuge

Webseiten-Werkzeuge


server:apache

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
server:apache [2011/12/09 14:34]
ewald ServerTokens auf Prod setzen
server:apache [2015/05/24 17:23] (aktuell)
ewald [SSL] SSL-Konfiguration entsprechend weakdh.org-Empfehlungen
Zeile 153: Zeile 153:
 ===== SSL ===== ===== SSL =====
  
-  * SSL-Modul aktivieren:+  * SSL-Modul aktivieren:<​code>​ 
 +# a2enmod ssl 
 +</​code>​ 
 +  * Verzeichnis für Zertifikat und privaten Schlüssel anlegen, Dateien kopieren, Berechtigungen setzen:<​code>​ 
 +# mkdir /​etc/​apache2/​ssl 
 +# chmod 700 /​etc/​apache2/​ssl 
 +# cp disorganized.de.cert disorganized.de.key /​etc/​apache2/​ssl 
 +# chown root:root /​etc/​apache2/​ssl/​* 
 +# chmod 444 /​etc/​apache2/​ssl/​disorganized.de.cert 
 +# chmod 400 /​etc/​apache2/​ssl/​disorganized.de.key 
 +</​code>​ 
 +  * DH-Parameter erzeugen. Bei älteren Apache-Servern (< 2.4.8) muss diese Datei ans Ende des Zertifikats angehangen werden.<​code>​ 
 +openssl dhparam -out dhparams.pem 2048 
 +</​code>​ 
 +  * Starke Verschlüsselung erzwingen:<​code>​ 
 +# vi /​etc/​apache2/​conf.d/​ssl.conf 
 +<​IfModule mod_ssl.c>​
  
-  # a2enmod ​ssl+  # https://​weakdh.org/​sysadmin.html 
 +  SSLProtocol all -SSLv2 -SSLv3 
 +  SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:​ECDHE-ECDSA-AES128-GCM-SHA256:​ECDHE-RSA-AES256-GCM-SHA384:​ECDHE-ECDSA-AES256-GCM-SHA384:​DHE-RSA-AES128-GCM-SHA256:​DHE-DSS-AES128-GCM-SHA256:​kEDH+AESGCM:​ECDHE-RSA-AES128-SHA256:​ECDHE-ECDSA-AES128-SHA256:​ECDHE-RSA-AES128-SHA:​ECDHE-ECDSA-AES128-SHA:​ECDHE-RSA-AES256-SHA384:​ECDHE-ECDSA-AES256-SHA384:​ECDHE-RSA-AES256-SHA:​ECDHE-ECDSA-AES256-SHA:​DHE-RSA-AES128-SHA256:​DHE-RSA-AES128-SHA:​DHE-DSS-AES128-SHA256:​DHE-RSA-AES256-SHA256:​DHE-DSS-AES256-SHA:​DHE-RSA-AES256-SHA:​AES128-GCM-SHA256:​AES256-GCM-SHA384:​AES128-SHA256:​AES256-SHA256:​AES128-SHA:​AES256-SHA:​AES:​CAMELLIA:​DES-CBC3-SHA:​!aNULL:​!eNULL:​!EXPORT:​!DES:​!RC4:​!MD5:​!PSK:​!aECDH:​!EDH-DSS-DES-CBC3-SHA:​!EDH-RSA-DES-CBC3-SHA:​!KRB5-DES-CBC3-SHA 
 +  SSLHonorCipherOrder on 
 +</​IfModule>​ 
 +</​code>​ 
 +  * SSL für Website konfigurieren:<​code>​ 
 +# vi /​etc/​apache2/​sites-available/​disorganized 
 +[...] 
 +<​VirtualHost *:443> 
 +    SSLEngine On 
 +    SSLCertificateFile /​etc/​apache2/​ssl/​nilpferd.disorganized.de.cert 
 +    SSLCertificateKeyFile /​etc/​apache2/​ssl/​nilpferd.disorganized.de.key
  
-  * Verzeichnis für Zertifikat und privaten Schlüssel anlegen, Dateien kopieren, Berechtigungen setzen:+    ServerAdmin webmaster@disorganized.de 
 +    ServerName disorganized.de
  
-  # mkdir /etc/apache2/ssl +    DocumentRoot ​/var/www/​disorganized/​
-  # chmod 700 /​etc/​apache2/​ssl +
-  # cp disorganized.de.cert disorganized.de.key ​/etc/​apache2/​ssl +
-  # chown root:root /​etc/​apache2/​ssl/​* +
-  # chmod 444 /​etc/​apache2/​ssl/​disorganized.de.cert +
-  # chmod 400 /​etc/​apache2/​ssl/​disorganized.de.key+
  
-  * Starke Verschlüsselung erzwingen:+    <​Directory /​var/​www/​disorganized/>​ 
 +        Order allow,​deny 
 +        Allow from all 
 +        AllowOverride none 
 +    </​Directory>​
  
-  # vi /​etc/​apache2/​conf.d/​ssl.conf +    ​<​IfModule mod_rewrite.c>​ 
-  <​IfModule mod_ssl.c>​ +        RewriteEngine on
-   +
-    # http://​www.securityfocus.com/​infocus/​1820 +
-    SSLProtocol -all +TLSv1 +SSLv3 +
-    SSLCipherSuite HIGH:​MEDIUM:​!aNULL:​+SHA1:​+MD5:​+HIGH:​+MEDIUM +
-   +
-  </​IfModule>​ +
- +
-  * SSL für Website konfigurieren:​ +
- +
-  # vi /​etc/​apache2/​sites-available/​disorganized +
-  [...] +
-  <​VirtualHost *:443> +
-      SSLEngine On +
-      SSLCertificateFile /​etc/​apache2/​ssl/​nilpferd.disorganized.de.cert +
-      SSLCertificateKeyFile /​etc/​apache2/​ssl/​nilpferd.disorganized.de.key +
-   +
-      ServerAdmin webmaster@disorganized.de +
-      ServerName disorganized.de +
-   +
-      DocumentRoot /​var/​www/​disorganized/​ +
-   +
-      <​Directory /​var/​www/​disorganized/>​ +
-          Order allow,​deny +
-          Allow from all +
-          AllowOverride none +
-      </​Directory>​ +
-   +
-      ​<​IfModule mod_rewrite.c>​ +
-          RewriteEngine on +
-   +
-          # https://​www.disorganized.de/​... -> https://​disorganized.de/​... +
-          RewriteCond %{HTTP_HOST} ^www.disorganized.de$ [NC] +
-          RewriteRule . https://​disorganized.de%{REQUEST_URI} ​ [R=301,L] +
-      </​IfModule>​ +
-  </​VirtualHost>​ +
- +
-  * Apache neu starten, SSL-Initialisierung überprüfen:​ +
- +
-  # /​etc/​init.d/​apache2 force-reload +
-  # less /​var/​log/​apache2/​error.log +
-  [...] +
-  [info] Loading certificate & private key of SSL-aware server +
-  [...] +
-  [info] Configuring server for SSL protocol +
-  [info] Server: Apache/​2.2.3,​ Interface: mod_ssl/​2.2.3,​ Library: OpenSSL/​0.9.8c +
-  [notice] Apache/​2.2.3 configured -- resuming normal operations +
- +
-  * CA-Root-Zertifikat im DER-Format zum Download bereitstellen (durch die Endung ''​.crt''​ wird gleich der richtige Content-Type verwendet, der einfachen Import per Browser erlaubt, sonst muss eine "​AddType"​-Zeile zur Apache-Konfiguration hinzugefügt werden): +
- +
-  # openssl x509 -inform PEM -outform DER -in ca-cert.pem -out ca-cert.crt +
-  # cp ca-cert.crt /​var/​www/​disorganized/​downloads+
  
 +        # https://​www.disorganized.de/​... -> https://​disorganized.de/​...
 +        RewriteCond %{HTTP_HOST} ^www.disorganized.de$ [NC]
 +        RewriteRule . https://​disorganized.de%{REQUEST_URI} ​ [R=301,L]
 +    </​IfModule>​
 +</​VirtualHost>​
 +</​code>​
 +  * Apache neu starten, SSL-Initialisierung überprüfen:<​code>​
 +# /​etc/​init.d/​apache2 force-reload
 +# less /​var/​log/​apache2/​error.log
 +[...]
 +[info] Loading certificate & private key of SSL-aware server
 +[...]
 +[info] Configuring server for SSL protocol
 +[info] Server: Apache/​2.2.3,​ Interface: mod_ssl/​2.2.3,​ Library: OpenSSL/​0.9.8c
 +[notice] Apache/​2.2.3 configured -- resuming normal operations
 +</​code>​
 +  * CA-Root-Zertifikat im DER-Format zum Download bereitstellen (durch die Endung ''​.crt''​ wird gleich der richtige Content-Type verwendet, der einfachen Import per Browser erlaubt, sonst muss eine "​AddType"​-Zeile zur Apache-Konfiguration hinzugefügt werden):<​code>​
 +# openssl x509 -inform PEM -outform DER -in ca-cert.pem -out ca-cert.crt
 +# cp ca-cert.crt /​var/​www/​disorganized/​downloads
 +</​code>​
 ===== Zertifikat von StartSSL ===== ===== Zertifikat von StartSSL =====
  
Zeile 227: Zeile 224:
  
   * Anleitung: http://​www.heise.de/​security/​artikel/​SSL-fuer-lau-880221.html   * Anleitung: http://​www.heise.de/​security/​artikel/​SSL-fuer-lau-880221.html
 +  * Noch eine Anleitung: http://​jasoncodes.com/​posts/​startssl-free-ssl
   * Privaten Schlüssel generieren:   * Privaten Schlüssel generieren:
  
-  # openssl genrsa -out disorganized.de.key ​2048+  # openssl genrsa -out disorganized.de.key ​4096
  
   * CSR (//​certificate signing request//) erzeugen:   * CSR (//​certificate signing request//) erzeugen:
server/apache.1323437690.txt.gz · Zuletzt geändert: 2011/12/09 14:34 von ewald