Inhaltsverzeichnis

SSL-Verschlüsselung in Apache2 (openssl)

Bei Webservern wie Apache(2) mit wird SSL oder TLS die Hybride Verschlüsselung zur Absicherung des Datenverkehrs eingesetzt.

:!: namensbasierte virtuelle Server sind in Verbindung mit aktuellen Clients mit Unterstützung der TLS-Erweiterung Server Name Indication (SNI) kein Problem 1) Es sollte aber ein Standardhost definiert werden der Client auf die fehlende Unterstützung hinweist.

Siehe auch ssl Zertifikate.

Apache2 Konfiguration für SSL

a2enmod ssl

sichere SSL Einstellungen

Alternativ der Mozilla SSL Configuration Generator.

	SSLEngine On
	SSLProtocol All -SSLv2 -SSLv3
 
	SSLHonorCipherOrder On
	SSLCipherSuite 'EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA:EECDH:EDH+AESGCM:EDH:ECDH+AESGCM:ECDH+AES:ECDH:HIGH:MEDIUM:!RC4:!3DES:!CAMELLIA:!SEED:!aNULL:!MD5:!eNULL:!LOW:!EXP:!DSS:!PSK:!SRP'
 
        SSLCertificateFile /etc/apache2/DATEI.crt
        SSLCertificateKeyFile /etc/apache2/DATEI.key
        SSLCACertificateFile /etc/apache2/intermediate-ca-cert.crt
 
	<IfModule mod_headers.c>
	  Header always set Strict-Transport-Security "max-age=15768000"
	</IfModule>
1)
Für ältere Browser Internet Explorer 6 auf Windows XP, Java 6u45, … muss eine eigene IP pro SSL-geschützter Seite existieren. Der Grund ist das die passende IP Teil des HTTP-Request ist, der nur mit dem passenden Host-Schlüssel entschlüsselt werden kann. Da aber der passende Host erst anhand des HTTP-Request ermittelt wird, kann es an dieser Stelle zu keiner Verifizierung kommen.