Redirect auf 'www' vor SSL-Anforderung

7

Problem

Ich habe derzeit das Problem, dass Ссылка nicht zu Ссылка und zeigt ein nicht vertrauenswürdiges SSL-Zertifikat an.

Damit verbunden ist eine Ruby-on-Rails-Lösung auf 'www' vor force_ssl

umleiten

Frage

Gibt es eine Möglichkeit, auf die www-Domäne umzuleiten, bevor die SSL-Anforderung eintritt?

Ich benutze PHP.

    
williamcarswell 07.06.2012, 09:55
quelle

3 Antworten

20

HTTPS ist HTTP über TLS / SSL (siehe RFC 2818 ), das zuerst die SSL / TLS-Verbindung vor jedem herstellt HTTP-Verkehr wird gesendet. Jede Weiterleitung (über mod_rewrite , benutzerdefinierter PHP-Code oder andere) wird immer angewendet, nachdem die SSL / TLS-Verbindung hergestellt wurde.

Dies wäre eigentlich ein Sicherheitsproblem, da ein Angreifer den Client neu schreiben und umleiten kann, bevor das Zertifikat verifiziert wurde.

Wenn Sie von https://domain.com nach https://www.domain.com umleiten möchten, muss das für https://domain.com erhaltene Zertifikat für domain.com gültig sein (und dann muss das für https://www.domain.com erhaltene Zertifikat für www.domain.com gültig sein) .

(Sie können zwei verschiedene Zertifikate mit Angabe des Server-Namens verwenden, wenn die beiden Hosts unter derselben IP-Adresse bedient werden, aber das ist ziemlich kompliziert.)

Am einfachsten wäre es, ein Zertifikat zu erhalten, das sowohl für domain.com als auch für www.domain.com gültig ist. Dies kann mithilfe eines einzelnen Zertifikats mit mehreren alternativen Antragstellernamen erfolgen. Die meisten Zertifizierungsstellen sollten solche Zertifikate ausstellen können. Manche tun es ohne zusätzliche Gebühr.

    
Bruno 07.06.2012, 11:33
quelle
1

Eine Weiterleitungsantwort wird über das HTTP-Protokoll ausgegeben. Um eine solche Antwort / einen solchen Befehl zu erhalten, muss der Client zuerst eine HTTP-Verbindung herstellen. Wenn der Client versucht, eine HTTP_S_-Verbindung herzustellen, muss die SSL-Verhandlung zuerst abgeschlossen werden.

Mit anderen Worten, nein. Die URL https://domain.com ist für Ihre App ungültig. Kein Kunde sollte über diese Adresse Bescheid wissen und sollte daher nicht versuchen, darauf zuzugreifen. Sie sollten es vermeiden, diese URL irgendwo anzugeben, damit Clients nicht versuchen, darauf zuzugreifen. Tatsächlich scheint es, dass Sie keinen HTTPS-Server für diese Domäne ausführen möchten, daher sollten Sie ihn eigentlich deaktivieren, sodass Clients sich über% HTTPS überhaupt nicht mit domain.com verbinden können.

    
deceze 07.06.2012 10:03
quelle
0

Die beste Lösung, die ich gefunden habe, ist einfach ein neues SSL-Zertifikat mit alternativen Namen zu kaufen, so dass Sie www und nicht-www im selben Zertifikat haben können und beide gültig sind. Auf diese Weise können Sie Ссылка sicher zu https: // transparent und ohne Zertifikatsfehler umleiten.

    
Areeb Soo Yasir 29.02.2016 21:22
quelle

Tags und Links