Frage Mehrere Domains mit SSL auf derselben IP-Adresse


Ich weiß, dass eine dedizierte IP für die Einrichtung von SSL benötigt wird. Was passiert, wenn wir SSL für Domänen hinzufügen, die eine IP teilen? (Namevirtualhost)


23
2018-03-26 10:27


Ursprung


Duplikat von serverfault.com/questions/126072 - grawity


Antworten:


Ich denke, es ist eine gute Idee, zu erklären, was das Problem wirklich mit virtuellen Hosts und SSL / TLS ist.

Wenn Sie über HTTP eine Verbindung zu einem Apache-Server herstellen, senden Sie eine Reihe von HTTP-Headern zusammen. Sie sehen so aus:

GET /index.html HTTP/1.1
 Host: www.nice-puppies.com

Wenn Sie einen virtuellen Hosting-Apache haben, schauen Sie sich das Feld hosts an und holen Sie dann die richtige index.html für Sie. Das Problem ist, wenn Sie SSL / TLS hinzufügen. Der Server richtet die Verschlüsselung ein, bevor Sie Ihre http-Anfrage senden. Daher weiß der Server nicht, ob Sie zu www.nice-puppies.com oder www.evil-haxxor.com gehen, bevor die Authentifizierung / Verschlüsselung abgeschlossen ist. Der Server kann nicht raten (das Senden des falschen Zertifikats führt zu einer unangenehmen Fehlermeldung).

Eine Lösung ist ein Wildcard-Zertifikat (wie oben erwähnt), das für * .nice-puppies.com gültig ist. Auf diese Weise können Sie das gleiche Zertifikat für mehrere Domains verwenden, aber Sie können kein * .com-Zertifikat haben (okay, Sie können das, aber es wäre sehr schlecht für alle anderen), so dass Sie im Allgemeinen eine separate IP-Adresse benötigen HTTPS-Domäne.


28
2018-03-26 11:09



Gute Erklärung, aber Sie könnten ein UC-Zertifikat haben, das mehrere Domains in einem Zertifikat erlaubt - Sam Cogan
Ja, Sie können Unified Communications-Zertifikate (UCC / UC-Zertifikate) haben. Ich hätte sie wahrscheinlich erwähnen sollen. Soweit ich gesehen habe, werden sie hauptsächlich mit Exchange / Office Communication Server verwendet. Und wenn Sie dasselbe Zertifikat für verschiedene Websites verwenden, missbrauchen Sie die x509-Semantik. Aber sie funktionieren auf den meisten TLS-Stacks. - pehrs
Auch SNI. Deine Aussage ist nicht mehr definitiv, pehrs. Ihre Erklärung ist historisch korrekt, spiegelt jedoch nicht mehr die aktuellen Technologien wider. - Warner
SNI funktioniert (noch?) Nicht mit IE6 unter Windows XP. Welche Art von begrenzt den Wert, unter Berücksichtigung des Marktanteils. Ich glaube, der ursprüngliche Benutzer war mehr daran interessiert, was passieren würde, als die Menge von Hacks, die es gibt, um es zu umgehen. - pehrs
Versucht, den Schreibfehler am Ende SHTTP zu HTTPS zu korrigieren, aber dies wurde als zu kleine Bearbeitung abgelehnt. - Stuart


Die wirkliche Lösung für dieses Problem ist "Server Name Indication":

http://en.wikipedia.org/wiki/Server_Name_Indication

Es wird erst allmählich auf Server und Web-Clients ausgeweitet, also ist es nicht wirklich etwas, was Sie jetzt verwenden können, aber hoffentlich wird dies in ein paar Jahren nicht so ein großes Problem sein.


8
2018-03-28 13:46





Das Problem besteht darin, dass das SSL-Zertifikat an die IP-Adresse und nicht an den Hostnamen gebunden ist. Wenn die Verbindung über die IP-Adresse für eine HTTPS-Anforderung hergestellt wird, besteht die erste Maßnahme darin, die SSL-Kommunikation herzustellen, indem das Serverzertifikat und / oder das Clientzertifikat übergeben wird. Während dieser Phase des Verbindungs-Handshakes hat der Apache-Server keine Möglichkeit zu wissen, wofür die Anfrage kommen soll. Dies ist bei HTTP-Verkehr (ohne SSL) anders. Nach dem Verbindungsaufbau kann der Apache-Server die zu verwendende virtuelle Host-Konfiguration bestimmen, wenn der Client die Verbindung sendet Host Kopfzeile oder es wird an den ersten konfigurierten virtuellen Host übergeben.

Wenn Sie mehrere virtuelle Hosts unter derselben Domäne haben, können Sie ein einzelnes Platzhalterzertifikat für die IP-Adresse einrichten und mehrere virtuelle Hosts mit unterschiedlichen Servernamen definieren. Wenn diese Servernamen jedoch nicht unter demselben Domänennamen sind, würden sie Clientserverfehler generieren. Dies würde funktionieren, da das Platzhalterzertifikat für alle Hostnamen unter diesem Domänennamen gültig wäre. Sie benötigen eine andere IP-Adresse, wenn sich die Domänennamen unterscheiden, da das erste für diese IP-Adresse definierte Zertifikat dem für die Verbindung von Clients angegebenen entspricht.


2
2018-03-28 04:25





Dies kann zu einem einzigen SSL-Zertifikat als SAN (Subject Alternative Name) hinzugefügt werden. In meiner excellance musste ich ein Zertifikat der Organisation sll beantragen. Ich habe Globalsign verwendet.


1
2018-03-26 10:56





Tatsächlich können Sie mit moderner Software mehrere HTTPS-Sites über eine einzige IP-Adresse bedienen, indem Sie eine neue Funktion namens "SNI - Server Name Indication" verwenden.

http://en.wikipedia.org/wiki/Server_Name_Indication

http://wiki.apache.org/httpd/NameBasedSSLVHostsWithSNI

Ich muss das noch selbst benutzen, aber es klingt gut für interne und Intranet-Sites. Die meisten modernen Browser unterstützen SNI. IE6 unterstützt SNI nicht, IE7 jedoch.

(Korrektur: 20100426 - SNI wird unter Windows XP überhaupt nicht unterstützt. Windows Vista und höher unterstützen SNI. Siehe "Abschnitt 2.2.3" unter http://msdn.microsoft.com/en-us/library/dd208005%28v=PROT.13%29.aspx#id8 ).


1
2018-04-05 22:09



Bei IE kommt die Unterstützung nicht von der IE-Version, sondern von der zugrunde liegenden OS-Version. Vista und höher unterstützen SNI. XP nicht, also auch mit IE8 unter XP, wirst du SNI nicht bekommen. - Nasko


Ich arbeite an demselben Thema. Als mein Test, IE7 und später (nur in Win7 & Vista) / Chrome / Firefox / Safari / Opera unterstützen "Server Name Indication". In der Tat, wenn der Browser Tsl 1.0 verwendet, unterstützt es "Server Name Indication".


1
2017-12-23 10:05





Ich denke, dass das OP fragt, was passiert, wenn er ein SSL-Zertifikat zu einer IP hinzufügt, die viele virtuelle Hosts hat. Wenn keiner der anderen virtuellen Hosts ein SSL-Zertifikat verwendet, sollte er im Klartext sein.


0
2018-03-26 10:53



Nun, ich bin verwirrt von der Frage. Der Q-Titel sagt schwarz, der Inhalt sagt weiß. - Iraklis
Das ist der Weiße - Iraklis


Ein UC-Zertifikat ist definitiv der richtige Weg: http://www.sslshopper.com/unified-communications-uc-ssl-certificates.html


0
2018-03-26 11:06