ssl 2x vhosts - vhost2 sendet Zertifikat von vhost1

Alles, was den Apache betrifft, kann hier besprochen werden.

Re: ssl 2x vhosts - vhost2 sendet Zertifikat von vhost1

Postby Nobbie » 31. August 2009 17:04

Hast Du eigentlich auf dem Linux-Rechner auch die hosts-Datei angepasst? Wenn nicht, solltest Du dort als erstes auch die beiden Domains und IPs eintragen. Ich weiß nicht, ob nicht ggf. noch ein DNS-Lookup oder Reverse Lookup durchgeführt wird, der würde in jedem Fall scheitern, da auf dem Linux PC die Domains ggf. ja nicht bekannt sind (wenn die hosts Datei nicht angepasst ist).

Ansonsten wäre mein Verdacht, dass einfach die VirtualHosts nicht richtig aufgelöst werden. Vielleicht funktioniert da irgendetwas intern nicht so, wie es gedacht ist und die ServerIP wird immer gleich der physikalischen IP gesetzt - dann würde nämlich immer die erste VirtualHost Angabe ausgeführt, und so sieht es ja auch aus.

Meine Frage: wieso machst Du das überhaupt so umständlich mit den virtuellen IPs? Lass das ganze doch mal weg und richte stattdessen zwei "NameBased" VirtualHosts ein. Und dann arbeitest Du mit nur mit den echten physikalischen IPs, wenn der Fehler dann nicht verschwindet, können wir immer noch weitersuchen.

Im Prinzip ist das ganz einfach, Du wirfst die virtuellen IPs raus (also auch richtig auf dem Linuxrechner rauswerfen), editierst die hosts-Datei auf beiden PCs und weist der Linux-IP beide Domainnamen zu (sowohl abc als auch def). Und die VirtualHosts in der httpd-ssl.conf definierst Du dann so (am besten einfach kopieren):

Code: Select all
Listen 192.168.1.92:443

SSLRandomSeed startup builtin
SSLSessionCache none
SSLMutex default

NameVirtualHost 192.168.1.92:443

<VirtualHost 192.168.1.92:443>

SSLEngine on
SSLProxyEngine on

SSLCertificateFile /opt/lampp/etc/ssl.crt/abc.cert
SSLCACertificateFile /opt/lampp/etc/ssl.crt/abc-intermediate.cert
SSLCertificateKeyFile /opt/lampp/etc/ssl.key/abc.key

ServerName www.abc.de
DocumentRoot /opt/lampp/htdocs/abc
</VirtualHost>

<VirtualHost 192.168.1.92:443>

SSLEngine on
SSLProxyEngine on

SSLCertificateFile /opt/lampp/etc/ssl.crt/def.cert
SSLCACertificateFile /opt/lampp/etc/ssl.crt/def-intermediate.cert
SSLCertificateKeyFile /opt/lampp/etc/ssl.key/def.key

ServerName www.def.de
DocumentRoot /opt/lampp/htdocs/def
</VirtualHost>
Nobbie
 
Posts: 8765
Joined: 09. March 2008 13:04

Re: ssl 2x vhosts - vhost2 sendet Zertifikat von vhost1

Postby endi » 01. September 2009 07:11

Hallo Nobbie,

danke für Deine Hilfe. Habe die zusätzlichen IP-Adressen auf dem Linux-Rechner entfernt. Dann habe ich in dessen hosts die IP-Adressen und Domain-Namen eingetragen. Dann kopierte ich Deine geänderten httpd-ssl.conf Einträge. Die hosts auf meinem WinXP-Rechner habe ich auch angepasst.

Wenn ich dann auf meinem WinXP Rechner im Browser die Seiten aufrufe, hat sich an dem Fehler nichts geändert.

Das mit den virtuellen IPs ist keine Idee von mir. Das hab ich mir ergooglet. Hier einer der Links:

http://www.jappler.com/blog/archive/200 ... s-with-ssl

Sobald es mit dem Apachen in Richtung SSL und VirtualHost geht, findet man Artikel noch und nöcher mit etwa diesem Inhalt:
"Nein, mehrere SSL-Zertifikate auf einem Apachen geht nur mit mehreren IP-Adressen!!!". Die hab ich ja und trotzdem geht es nicht. :cry:

Andreas
endi
 
Posts: 16
Joined: 05. May 2006 06:42

Re: ssl 2x vhosts - vhost2 sendet Zertifikat von vhost1

Postby endi » 01. September 2009 08:07

Hey Nobbie,

Du bist der Beste. Hab die letzten Änderungen rückgängig gemacht und plötzlich ging es. Das hat mich stutzig gemacht. Da hatte ich sofort die hosts-Einträge im Verdacht. Der Hinweis mit den Hosts-Einträgen auf dem Linux-Apachen war der entscheidende Rat zur Lösung. Wenn die nicht stimmen, tritt der Fehler auf. Ich danke Dir tausendmal. :lol:


Andreas
endi
 
Posts: 16
Joined: 05. May 2006 06:42

Re: ssl 2x vhosts - vhost2 sendet Zertifikat von vhost1

Postby Nobbie » 01. September 2009 10:07

>Nein, mehrere SSL-Zertifikate auf einem Apachen geht nur mit mehreren IP-Adressen!!!"

Ob das wirklich so ist?

Ein zusätzliches Problem ist bei Deiner Konfiguration nämlich gewesen, dass Du den ServerName im VirtualHost nicht angegeben hattest. Und der muss ja gegen das Zertifikat abgeglichen werden. Ich weiß nun nicht, ob Apache dann einfach den Hostname nimmt (glaub ich aber nicht), oder ob er einen Reverse Lookup macht (welche Domain gehört zu dieser IP, die im VirtualHost definiert ist). Und dieser Reverse Lookup geht sowieso in die Hose, wenn die hosts-Datei nicht angepasst wurde. Sie geht aber auch (halb) in die Hose, wenn mehrere Domain die gleiche IP besitzen, weil dann ggf. der falsche Domainnamen ermittelt wird.

Aber wenn der ServerName im VirtualHost angegeben wird, braucht Apache (zumindest theoretisch) keinen Reverse Lookup zu machen. Das würde ich in jedem Fall noch einmal ausprobieren (in Verbindung mit NameBased VirtualHosts).

Außerdem gibt es noch die Option "Use CanonicalName" mit den Werten "On" oder "Off", diese entscheidet mit darüber, wie ein ServerName konstruiert wird. Auch im Umfeld von VirtualHosts. Das wäre auch noch einen Test wert, ob man mit Hilfe dieser Option (ich weiß nicht auswendig, welcher Wert was bewirkt - am besten liest Du mal selbst die Doku und/oder probierst einfach aus) und mit Angabe des ServerName nicht doch auch bei nur einer IP zwei verschiedene Zertifikate unterstützen kann (was ich momentan noch glauben würde). Gerade im Umfeld "Massenhosting" (wo ja alle Domains die gleiche IP bekommen) würden ja tonnenweise IPs verbraten werden, nur um für jeden Kunden ein Zertifikat bereitstellen zu können. Das würde eigentlich den ganzen Sinn und Vorteil des NameBased VirtualHosts in Frage stellen, wenn man dann doch verschiedene IPs benötigt.

Auch wenn Deine Testumgebung "Online" geht, wirst Du ja keine zwei IPs mehr besitzen, und dass Du heute (im LAN) virtuelle IPs zusätzlich zuweisen kannst, wird Dir später nicht mehr möglich sein, denn die Domains www.abc.de und www.def.de werden ja sicherlich nachher die gleiche (öffentliche) IP bekommen.
Nobbie
 
Posts: 8765
Joined: 09. March 2008 13:04

Previous

Return to Apache

Who is online

Users browsing this forum: No registered users and 2 guests