Apache2
SSL-Unterstützung für Subdomains
Problem
Die SSL-Verbindung muss bereits aufgebaut werden, wenn der Header nicht bekannt ist. Daher kann es für verschiedene Virtual-Hosts nur ein Zertifikat geben: Der Virtual-Host steht ja im Header.
Es gibt allerdings "Wildcard-Zertifikate", die alle Subdomänen abdecken.
Zertifikat erstellen
mkdir /etc/apache2/keys cd /etc/apache2/keys openssl genrsa -out apache.key 2048 openssl req -new -key apache.key -out apache.csr openssl x509 -req -days 365 -in apache.csr -signkey apache.key -out apache.crt
Wichtig: Beim "Common Name" muss als Wert die Wildcard-Domäne angegeben werden, z.B. *.f-r-e-i.de
Konfiguration
# /etc/apache2/sites-available/default-ssl <IfModule mod_ssl.c> NameVirtualHost *:443 <VirtualHost *:443> SSLEngine on SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP SSLCertificateFile /etc/apache2/keys/apache.crt SSLCertificateKeyFile /etc/apache2/keys/apache.key ServerAdmin admin@f-r-e-i.de ServerName "f-r-e-i.de" DocumentRoot "/home/www/frei" <directory /home/www/frei> Order allow,deny Allow from all Options Indexes MultiViews FollowSymLinks </directory> </VirtualHost> ... </IfModule>