Apache Webserver – Mehrere SSL Zertifikate auf einer IP


SNI ( Server Name Indication )

Um auf einem Webserver mehrere HTTPS Seiten zu betreiben, muss der Apache besonders konfiguriert werden.

Dazu wird SNI ( Server Name Indication ) genutzt.

/etc/apache2/ports.conf

Dazu muss zuerst in der Datei /etc/apache2/ports.conf unterhalb von mod_ssl der NameVirtualHost *:443 hin zu gefügt werden.

Listen 80
NameVirtualHost *:80 

Listen 443 
NameVirtualHost *:443

/etc/apache2/sites-available/default-ssl.conf

Danach müssen in der Datei /etc/apache2/sites-available/default-ssl.conf folgende Einträge gemacht werden.

	NameVirtualHost *:443
	SSLStrictSNIVHostCheck off

    
	      ServerAdmin webmaster@server1.de
	      ServerName *.server1.de
	      ServerAlias *.server1.de
	      SSLEngine on
	      SSLCertificateFile    /etc/apache2/certs/server1.de.crt
	      SSLCertificateKeyFile /etc/apache2/certs/server1.de.key
    
    

	      ServerAdmin webmaster@server2.de
	      ServerName *.server2.de
	      ServerAlias *.server2.de
	      SSLEngine on
	      SSLCertificateFile    /etc/apache2/certs/server2.de.crt
	      SSLCertificateKeyFile /etc/apache2/certs/server2.de.key
    

In dieser Konfiguration ist es besonders wichtig, das

  • der VirtualHost *:443 und nicht server1:443 drin stehen hat.
  • der ServerAlias gesetzt ist

Jetzt apache2 neu starten.

Danach ist unter https://server1.de und https://server2.de jeweils eine getrennte Seite mit eigenem SSL Zertifikat erreichbar.