Benötigt jede Subdomain ein eigenes SSL-Zertifikat?
41
Ich erstelle einen Websocket-Server, der weiterleben wird ws.mysite.example. Ich möchte, dass der Web-Socket-Server sowohl SSL-verschlüsselt als auch domain.exampleSSL-verschlüsselt ist. Muss ich für jede von mir erstellte Subdomain ein neues Zertifikat erwerben? Benötige ich eine dedizierte IP-Adresse für jede Subdomain, die ich erstelle? Ich werde wahrscheinlich mehr als eine Subdomain haben.
Benötigen Sie ein SSL-Zertifikat für jede Subdomain?
Ja und Nein, es kommt darauf an. Ihr Standard-SSL-Zertifikat gilt beispielsweise für eine einzelne Domain www.domain.example. Es gibt verschiedene Arten von Zertifikaten, die Sie neben dem Standardzertifikat für eine einzelne Domain verwenden können: Wildcard- und Multi-Domain-Zertifikate.
Ein Wildcard-CERT wird wie etwas ausgestellt *.domain.exampleund Kunden werden dies für jede Domain als gültig behandeln , die Ende mit domain.example, wie www.domain.exampleoder ws.domain.example.
Ein Multi-Domain-Zertifikat gilt für eine vordefinierte Liste von Domainnamen. Hierzu wird das Feld "Alternativer Antragstellername" des Zertifikats verwendet. Sie können beispielsweise einer Zertifizierungsstelle mitteilen, dass Sie ein Multi-Domain-Zertifikat für domain.exampleund wünschen ws.mysite.example. Dies würde die Verwendung für beide Domainnamen ermöglichen.
Wenn keine dieser Optionen für Sie funktioniert, benötigen Sie zwei verschiedene SSL-Zertifikate.
Benötige ich eine dedizierte IP für jede Subdomain?
Auch dies ist ein Ja und ein Nein. Es hängt alles von Ihrem Web- / Anwendungsserver ab. Ich bin ein Windows-Typ, daher werde ich mit IIS-Beispielen antworten.
Wenn Sie IIS7 oder älter ausführen, müssen Sie SSL-Zertifikate an eine IP binden, und Sie können nicht mehrere Zertifikate einer einzelnen IP zuweisen. Dies führt dazu, dass Sie für jede Subdomain eine andere IP benötigen, wenn Sie für jede Subdomain ein dediziertes SSL-Zertifikat verwenden. Wenn Sie ein Multi-Domain-Zertifikat oder ein Wildcard-Zertifikat verwenden, können Sie mit der einzelnen IP-Adresse davonkommen, da Sie zunächst nur ein SSL-Zertifikat haben.
Wenn Sie IIS8 oder höher ausführen, gilt dasselbe. IIS8 + bietet jedoch Unterstützung für sogenannte Server Name Indication (SNI). Mit SNI können Sie ein SSL-Zertifikat an einen Hostnamen und nicht an eine IP binden. Der für die Anforderung verwendete Hostname (Servername) gibt an, welches SSL-Zertifikat IIS für die Anforderung verwenden soll.
Wenn Sie eine einzelne IP-Adresse verwenden, können Sie Websites so konfigurieren, dass sie auf Anforderungen für bestimmte Hostnamen reagieren.
Ich weiß, dass Apache und Tomcat auch SNI unterstützen, aber ich kenne sie nicht genug, um zu wissen, welche Versionen dies unterstützen.
Endeffekt
Abhängig von Ihrer Anwendung / Ihrem Webserver und der Art der SSL-Zertifikate, die Sie erhalten können, bestimmen Sie Ihre Optionen.
In diesem Fall sollte SNI verfügbar sein, solange OpenSSL (für nginx) die SNI-Unterstützung unterstützt. Wie im Link in der Antwort von GomoX angegeben.
Pkeenan
Einige einzelne Subdomain-Zertifikate listen alternativ die Hauptdomain auf, sodass Sie möglicherweise www.domain.com und domain.com mit einem Zertifikat auf einer IP-Adresse ausführen können. Berücksichtigen Sie Ihre Zielgruppe, wenn Sie SNI in Betracht ziehen: IE unter XP unterstützt es nicht, was Sie bei einigen Unternehmensbenutzern beeinträchtigen wird, und einige alte mobile Browser wie der Standard-Android-Browser müssen mindestens 2.3.5 berücksichtigen Wenn Sie mobile Geräte als Ziel haben (hier sind viele Android-Geräte mit alten Versionen verfügbar).
David Spillett
@pkeenan - Es wäre gut, wenn die Antwort aktualisiert würde, um die technischen Funktionen widerzuspiegeln, die Hostnamen und Domänen ohne Hostnamen unterstützen - helpdesk.ssls.com/hc/en-us/articles/…
Motiviert
> Kunden behandeln dies als gültig für jede Domain, die mit 'domain.com' endet, wie z. B. 'www.domain.com' oder 'ws.domain.com'. Das lässt mich glauben, dass es auch für gültig wäre abc.def.domain.com, ist das auch der Fall?
Jeff
7
Sie können ein Zertifikat für jede Unterdomäne, ein Zertifikat für mehrere Unterdomänen oder ein Platzhalterzertifikat (für *.yoursite.example) erhalten.
Sie kosten jedoch in der Regel einiges mehr als normale Zertifikate, und da Sie ein einzelnes Zertifikat gemeinsam verwenden, sind sie aus Sicherheitsgründen in der Regel nicht die beste Option, es sei denn, Sie hosten einen anything.mydomain.exampleAnwendungstyp, bei dem sie die einzige praktikable Option sind.
Sie benötigen auch nicht mehrere IP-Adressen, wenn Sie einen SNI-fähigen Webserver haben . Das heißt, SNI wird nur in modernen Browsern unterstützt (IE6 und niedriger funktionieren damit nicht). Aktuelle Versionen von Nginx und Apache unterstützen SNI transparent (fügen Sie einfach SSL-fähige virtuelle Hosts hinzu).
Was meinen Sie mit "unter Sicherheitsgesichtspunkten nicht die beste Option"?
Motivierte
4
Ein einzelnes Zertifikat, das für alle Ihre Hosts freigegeben ist, verwandelt jeden Verstoß gegen ein Zertifikat in eine Sicherheitsbedrohung auf Domänenebene, anstatt nur die Subdomäne zu beeinflussen, an die das Zertifikat angehängt wurde. Das für www.yoursite.com verwendete Zertifikat, bei dem es sich um eine WordPress-Installation handelt, ist beispielsweise dasselbe wie für payments.yoursite.com, bei dem es sich um eine sichere Kreditkartenanwendung handelt. Wenn die erste undicht ist, ist die zweite gefährdet.
GomoX
0
Sie benötigen entweder ein separates Zertifikat für jede Subdomain oder Sie können ein Wildcard-Zertifikat ( *.domain.example) erwerben - teurer, aber sinnvoll, wenn Sie viele Subdomains hosten.
In Bezug auf IPs hängt es davon ab, wie Sie Ihren Server einrichten. Sie können Hostnamenregeln verwenden, um mehrere Sites von derselben IP-Adresse aus zu bedienen, oder eindeutige IP-Adressen für jede einzelne verwenden. Beide Methoden haben Vor- und Nachteile.
abc.def.domain.com
, ist das auch der Fall?Sie können ein Zertifikat für jede Unterdomäne, ein Zertifikat für mehrere Unterdomänen oder ein Platzhalterzertifikat (für
*.yoursite.example
) erhalten.Sie kosten jedoch in der Regel einiges mehr als normale Zertifikate, und da Sie ein einzelnes Zertifikat gemeinsam verwenden, sind sie aus Sicherheitsgründen in der Regel nicht die beste Option, es sei denn, Sie hosten einen
anything.mydomain.example
Anwendungstyp, bei dem sie die einzige praktikable Option sind.Sie benötigen auch nicht mehrere IP-Adressen, wenn Sie einen SNI-fähigen Webserver haben . Das heißt, SNI wird nur in modernen Browsern unterstützt (IE6 und niedriger funktionieren damit nicht). Aktuelle Versionen von Nginx und Apache unterstützen SNI transparent (fügen Sie einfach SSL-fähige virtuelle Hosts hinzu).
quelle
Sie benötigen entweder ein separates Zertifikat für jede Subdomain oder Sie können ein Wildcard-Zertifikat (
*.domain.example
) erwerben - teurer, aber sinnvoll, wenn Sie viele Subdomains hosten.In Bezug auf IPs hängt es davon ab, wie Sie Ihren Server einrichten. Sie können Hostnamenregeln verwenden, um mehrere Sites von derselben IP-Adresse aus zu bedienen, oder eindeutige IP-Adressen für jede einzelne verwenden. Beide Methoden haben Vor- und Nachteile.
quelle