HTTPS

1) Kurze Anmerkung zur Datenverschlüsslung
2) Erstellung von SSL Zertifikaten mit OpenSSL
3) Benutzung von Zertifikaten in MyServer

Kurze Anmerkung zur Datenverschlüsslung

Datenverschlüsselung wird zum Schutz von Daten, die zwischen Client und Server ausgetauscht werden benutzt. Es gibt zwei Algorithmentypen: symmetrische und asymmetrische Datenverschlüsselungsalgorithmen. Die beiden Algorithmentypen unterscheiden sich dadurch, dass für den symmetrischen Algorithmus der gleiche Schlüssel für das Ver- und das Entschlüsseln benutzt wird. Diese Art von Algorithmen wird nicht von Servern genutzt, die eine hohe Anzahl von Clients haben, weil die Daten aufgefangen und von jedem Client, der den Schlüssel kennt, entschlüsselt werden können und weil die Schlüssel auf sichere Art (zum Beispiel auf einer Diskette) verteilt werden müssen und nicht in einem rießigen Netzwerk, wie dem Internet verteilt werden können. Die asymmetrischen Algorithmen arbeiten anders, die mit einem Schlüssel verschlüsselten Daten, können nur mit dem anderen Schlüssel und viceversa entschlüsselt werden. Jeder kennt den öffentlichen Schlüssel, jedoch nur der Besitzer den privaten Schlüssel. Auf diese Art muss der Schlüsselbesitzer nicht den Schlüssel and bekannte Clients verteilen, sondern kann ihn in einem großen, weitgreifenden Netzwerk verteilen.

Erstellung von SSL Zertifikaten mit OpenSSL

Ein Zertifikat wird benötigt, um Ihre Identität durch eine CA (Certification Authority) zu zertifizieren. Sie können ein Zertifikat benutzen, ohne es bei dritten CA zu registrieren, aber ein Root Zertifizierungs Zertifikat erstellen. Sie finden alles Notwendige in der OpenSSL library: www.openssl.org. Nach der Installation, wechseln Sie in den Binary Ordner und tippen Sie:

openssl genrsa -out server.key

Dies erstellt einen privaten Schlüssel, um Ihre Daten zu verschlüsseln. Danach führen Sie diesen Befehl aus:

openssl req -new -x509 -days 730 -config openssl.cnf -key server.key -out server.pem

Um ein öffentliches Zertifikat zu erstelln: In diesem Beispiel kann das Zertifikat für 730 Tage benutzt werden und der öffentliche Schlüssel ist die server.pem Datei.

Benutzung von Zertifikaten in MyServer

Um Zertifikate in MyServer zu konfigurieren, müssen Sie die zwei Dateien: server.key, server.pem in den certificates Ordner in das MyServer Installationsverzeichnis ablegen. Danach müssen Sie einen virtuellen HTTPS Host in der virtualhosts.xml Datei konfigurieren.

<VHOST>
<NAME>Every connection</NAME>
<PORT>443</PORT>
<SSL_PRIVATEKEY>certificates/server.key</SSL_PRIVATEKEY>
<SSL_CERTIFICATE>certificates/server.pem</SSL_CERTIFICATE>
<PROTOCOL>HTTPS</PROTOCOL>
<DOCROOT>web</DOCROOT>
<SYSFOLDER>system</SYSFOLDER>
<ACCESSESLOG>logs/myServer.log</ACCESSESLOG>
<WARNINGLOG>logs/myServer.err</WARNINGLOG>
</VHOST>

Durch diesen Host, erstellen wir eine HTTPS Abfrage auf Port 443 (Standardport für https) und benutzen die Datei certificates/server.key als privaten Schlüssel und die Datei certificates/server.pem file als öffentlichen Schlüssel.