Apache2

Aus Info-Theke
Zur Navigation springen Zur Suche springen


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>