SSL Proxy einrichten

Mit einem SSL-Proxy ist es möglich, über ein einziges Wildcard-Zertifikat kostengünstig Vielzahl von unterschiedlichen Domains per SSL abzusichern.

Die folgende Beispiel-Konfiguration beschreibt, wie ein SSL-Proxy unter Apache 2 eingerichtet wird.

Datei /etc/apache/sites-available/ssl-proxy

<VirtualHost 1.2.3.4:443>
    ServerName *.ssl-proxy.tld
    SSLEngine on
    SSLCertificateKeyFile /etc/apache2/ssl.key/ssl-proxy_tld.key
    SSLCertificateFile    /etc/apache2/ssl.crt/ssl-proxy_tld.crt
    SSLCACertificateFile  /etc/apache2/ca-bundle

    # Der Document-Root muss nicht existieren
    DocumentRoot /var/www/ssl-proxy

    RewriteEngine On
    RewriteMap   domains      txt:/etc/apache2/sslproxy.map

    RewriteCond  %{HTTP_HOST} ^([^\.]+)\. [NC]
    RewriteRule  ^(.+)$       http://${domains:%1}$1 [P,L]
</VirtualHost>

Datei /etc/apache2/sslproxy.map

# leitet https://example.ssl-proxy.tld/ nach http://www.example.com/ weiter
example www.example.com

# leitet https://foo.ssl-proxy.tld/ nach http://bar.net/ weiter
foo bar.net