Ich möchte eine sichere Verbindung haben, wenn ich mich bei meinem Webmail, phpMyAdmin usw. anmelde .
Deshalb habe ich meine eigenen SSL-Zertifikate bei OpenSSL signiert und Apache angewiesen, Port 443 abzuhören.
Ist das tatsächlich sicher? Werden alle meine Passwörter wirklich durch eine sichere Schicht gesendet? Welchen Unterschied macht es, wenn ich ein SSL-Zertifikat von Verisign kaufe oder mein eigenes unterschreibe? Am Ende des Tages werden sich alle Daten sowieso auf meinem Server befinden. Was ist der große Unterschied?
quelle
Hier dreht sich alles um Vertrauen.
Angenommen, Sie besuchen eine beliebte Website, die ein Zertifikat vorlegt. Auf dieser Website heißt es: "Dies ist, wer ich bin, Sie können mir vertrauen, weil ich dieses Einführungsschreiben von jemandem unterschreiben lasse, dem Sie vertrauen."
In diesem Fall ist die Person, der Sie vertrauen, eine der Zertifizierungsstellen, die (hoffentlich) die Vorarbeit geleistet hat, um die Identität des Präsentators des Zertifikats in Ihrem Namen festzustellen.
Was Sie wirklich vertrauen, ist das Vertrauen des Browsers in das Vertrauen der Zertifizierungsstelle in die Identität der Person, die das Zertifikat vorlegt. Es gibt auch oft mehr als eine Autorität zwischen Ihnen und dem Moderator, daher der Begriff: "Vertrauenskette". [1]
Wenn Sie Ihr eigenes Zertifikat signieren, gibt es keine Vertrauenskette. Ihre Site legt Ihnen Ihr eigenes Zertifikat vor. Wenn Sie Ihr eigenes Zertifikat in Ihrem Browser als eines installieren, dem Sie vertrauen, wird dieses als Autorität behandelt, genau wie die vorinstallierten Zertifikate . Sie haben dann eine Vertrauenskette mit nur einem Glied.
Wenn Sie dann Ihre eigene Website besuchen und Ihr Browser warnt, dass ein nicht vertrauenswürdiges Zertifikat angezeigt wird, sollten Sie Anlass zur Sorge geben, da Sie wie bei jeder anderen Website, die ein nicht vertrauenswürdiges Zertifikat anzeigt, nicht sicher sein können dass Sie mit der realen Site kommunizieren.
Beachten Sie, dass ich die Verschlüsselung noch nicht erwähnt habe. Zertifikate dienen der Authentifizierung der Identität der Partei, mit der Sie kommunizieren. Durch vertrauenswürdige Zertifikate können Sie sicher sein, dass Ihr Geschäft oder Ihre Bank das echte ist. Sobald Sie ihre Identität festgestellt haben, ist die Sicherung der Kommunikation zwischen Ihnen der nächste Schritt. Es kommt vor, dass Zertifikate auch die Schlüssel enthalten, die für diese Sicherheit erforderlich sind. Vorausgesetzt, du hast dein SSL korrekt eingerichtet, ist diese Kommunikation genauso sicher wie bei deinem Shop oder deiner Bank und deine Passwörter sind gleichermaßen geschützt. [2]
[1] Dies ist kein einwandfreies System. Ein freier Markt und ein hochvolumiges Geschäft mit geringen Gewinnspannen führen zwangsläufig zu Kostensenkungen: http://www.theregister.co.uk/2011/04/11/state_of_ssl_analysis/
[2] Zumindest so gut geschützt , dass es für jemanden weitaus billiger ist, in Ihr Haus einzudringen, als zu versuchen, es zu knacken: http://xkcd.com/538/
quelle
Eigentlich selbstsignierte Zertifikate können sicher sein, nur nicht unter dem Modell jetzt verwenden wir.
Unter dem weit verbreiteten CA-Modell (Certificate Authority), das derzeit von allen verwendet wird, besteht der Zweck des von einer vertrauenswürdigen CA signierten Zertifikats darin, eine Authentifizierung bereitzustellen.
Wenn wir eine Bescheinigung erhalten, sehen wir nur Einsen und Nullen von der Buchse in der Wand. Wir haben keine Ahnung, woher diese Einsen und Nullen stammen. Da das Zertifikat jedoch von einer Zertifizierungsstelle signiert ist - etwas, das niemand auf der Welt außer dieser Zertifizierungsstelle kann - und wir darauf vertrauen, dass die Zertifizierungsstelle die Identität des Eigentümers des Zertifikats überprüft, vertrauen wir darauf, dass das Zertifikat von dem stammt, den es beansprucht zu.
Wenn die CA kompromittiert ist oder den Eigentümer nicht korrekt überprüft , sind natürlich alle Wetten deaktiviert.
Allerdings gibt es ein anderes Modell, unter dem selbst signierten Zertifikaten keine Authentizität bieten. Es heißt das Notarmodell .
Im Wesentlichen vertrauen wir nicht einer einzelnen Zertifizierungsstelle, sondern verteilen die Vertrauensstellung an eine beliebige Anzahl von Notaren . Diese Notare durchsuchen das Internet nach Zertifikaten und speichern alle Zertifikate, die sie gesehen haben. Wenn Sie zum ersten Mal eine Site besuchen und das Zertifikat erhalten, fragen Sie eine Reihe global verteilter Notare, welches Zertifikat sie zuletzt gesehen haben. Wenn sie nicht mit dem übereinstimmen, was Sie sehen, könnten Sie Teil eines Man-in-the-Middle-Angriffs sein.
Bei diesem Modell sind selbstsignierte Zertifikate absolut sicher, sofern wir davon ausgehen, dass der Server nicht sofort kompromittiert wird, bevor ein Notar sein Zertifikat jemals einsehen kann.
Das Notarmodell steckt noch in den Kinderschuhen, und es wird zweifellos jemals das CA-Modell übernehmen (muss es eigentlich nicht - sie können zusammen verwendet werden) . Das bisher vielversprechendste Projekt ist Convergence.io , das ein Plugin für Firefox enthält.
quelle
Es geht nicht nur um Vertrauen ...
SSL-Zertifikate können zwei Aufgaben erfüllen: 1) ist der Webserver, mit dem Sie eine Verbindung herstellen möchten; und 2) die Kommunikation zu verschlüsseln.
Sie können Nr. 2 ohne Nr. 1 haben, was Sie erreicht haben. Was dann übrig bleibt, ist die Bestätigung, dass die Box, mit der Sie sich verbinden, die ist, die Sie möchten.
Wenn es MEIN Server ist, habe ich kein Problem damit, ein selbstsigniertes Zertifikat von mir selbst zu verwenden - obwohl das Risiko besteht, dass jemand Dinge fälscht, die mich dazu bringen, eine Verbindung zu ihrem Server herzustellen, anstatt zu meinem. Da sich niemand um mich und meinen Server kümmert und ich hier wenig Wert habe, sehe ich darin kein allzu großes Risiko.
Auf der anderen Seite wäre ich besorgt, wenn es sich nicht um einen Server von mir, sondern um einen von Ihnen handeln würde.
quelle