Also ich habe einen Server und dazu eine öffentliche IP-Adresse.
Auf diesem Server werden über Apache einige Webseiten gehostet.
Nun funktioniert ja da SSL nur eingeschränkt mit Name-Based-vhosts, weil alle vhosts sich ein Zertifikat teilen.
Warum das so ist, wegen Sockets und so, is klar.
Zur partiellen Lösung, zumindest für Leute mit IPv6 Connectivity, habe ich mir ein IPv6 Subnetz besorgt und DNS entsprechend konfiguriert:
- Code: Select all
;; ANSWER SECTION:
www.spies-it.de. 86333 IN A 84.38.64.166
;; ANSWER SECTION:
www.spies-it.de. 86313 IN AAAA 2001:6f8:1080::1:2
Ein wenig zur Konfiguration:
- Code: Select all
Listen 84.38.64.166:80
Listen 84.38.64.166:443
Listen 172.16.34.1:80
Listen 172.16.34.1:443
Listen [2001:6f8:1080::1:2]:80
Listen [2001:6f8:1080::1:2]:443
- Code: Select all
root@comefrom:~# netstat -taupen | grep apache2
tcp 0 0 84.38.64.166:80 0.0.0.0:* LISTEN 0 26185 5843/apache2
tcp 0 0 172.16.34.1:80 0.0.0.0:* LISTEN 0 26187 5843/apache2
tcp 0 0 84.38.64.166:443 0.0.0.0:* LISTEN 0 26186 5843/apache2
tcp 0 0 172.16.34.1:443 0.0.0.0:* LISTEN 0 26188 5843/apache2
tcp6 0 0 2001:6f8:1080::1:2:80 :::* LISTEN 0 26189 5843/apache2
tcp6 0 0 2001:6f8:1080::1:2:443 :::* LISTEN 0 26190 5843/apache2
"default" vhosts:
- Code: Select all
NameVirtualHost 84.38.64.166:80
NameVirtualHost 84.38.64.166:443
<VirtualHost 84.38.64.166:80>
ServerName www.comefrom.de
ServerAdmin webmaster@comefrom.de
[...]
</VirtualHost>
<VirtualHost 84.38.64.166:443>
ServerName www.comefrom.de
ServerAdmin webmaster@comefrom.de
SSLEngine On
SSLCertificateFile /etc/ssl/certs/www.comefrom.de-cacert-ds.crt
SSLCertificateKeyFile /etc/ssl/private/www.comefrom.de-cacert-ds.key
DocumentRoot /var/www
[...]
</VirtualHost>
Und noch ein paar mehr vhosts auf der 84.38.64.166 (nach dem gleichen Schema).
So, dann hab ich einen vhost, der auch per IPv4 erreichbar ist, zusätzlich IPv6 eingerichtet (DNS funktioniert):
- Code: Select all
<VirtualHost 84.38.64.166:80>
ServerName www.spies-it.de
ServerAdmin webmaster@spies-it.de
[...]
</VirtualHost>
<VirtualHost 84.38.64.166:443>
ServerName www.spies-it.de
ServerAdmin webmaster@spies-it.de
SSLEngine On
SSLCertificateFile /etc/ssl/certs/www.comefrom.de-cacert-ds.crt
SSLCertificateKeyFile /etc/ssl/private/www.comefrom.de-cacert-ds.key
[...]
</VirtualHost>
<VirtualHost [2001:6f8:1080::1:2]:80>
ServerAdmin webmaster@spies-it.de
[...]
</VirtualHost>
<VirtualHost [2001:6f8:1080::1:2]:443>
ServerAdmin webmaster@spies-it.de
SSLEngine On
SSLCertificateFile /etc/ssl/certs/www.spies-it.de-cacert-ds.crt
SSLCertificateKeyFile /etc/ssl/private/www.spies-it.de-cacert-ds.key
[...]
</VirtualHost>
Testweise habe ich mal die NameVirtualHost Directive und alle NameBased SSL VHosts rausgenommen: Ohne Erfolg.
Trotz allem wird auch bei Verbidnung über IPv6 das falsche Zertifikat ausgegeben: http://www.comefrom.de. Was mache ich falsch?
(Dieser Beitrag wurde in ähnlicher Form bereits im linuxforen Forum gepostet. jedoch ohne nenneswerte Rückmeldungen (http://www.linuxforen.de/forums/showthread.php?t=235840).