Da ich das ganze erst kürzlich mehrfach hinter mir hatte hier eine kleine Anleitung:
Du benötigst für die Domain um die es geht eine eigene IP. Du kannst über diese IP natürlich mehrere vHosts laufen lassen, aber nur einen einzigen SSL-Verschlüsselten Host. Theoretisch kannst du natürlich auch mehrere über eine IP laufen lassen, aber es wird immer eine Fehlermeldung beim User ankommen!
Hierbei ist noch zu beachten dass du wirklich für jede URL eine eigene IP und ein eigenes Zertifikat benötigst!
https://example.com ist NICHT das selbe wie
https://www.example.com!
So, nun zum eigentlichen. Ich hab meine Zertifikate hier gekauft:
http://psw.net/ssl.cfm
Eigentlich ist es egal welches du nimmst, ich hab mich für Limitbreaker entschieden; kein Zwischenzertifikat und unterstützung durch die meisten Geräte.
Wenn du bei der Bestellung angelangt bist, findest du auch dort genügend Hilfestellung. Allerdings wird es etwas kompliziert wenn du das ganze wirklich unter Windows laufen lassen willst. XAMPP liefert OpenSSL zwar mit, aber es kann keine Konfiguration geladen werden. Vielleicht kann hier jemand anders was dazu sagen, wie das ganze zu konfigurieren ist.
Der Befehl würde dann übrigens so aussehen:
- Code: Select all
openssl req -new -nodes -keyout dateiname.key -out dateiname.csr
Du erhälst einmal einen Key, dieser bleibt auf dem Server und ist sehr wichtig. Ohne diesen Key kann die SSL-Verbindung nicht aufgebaut werden. Die zweite erstellte Datei ist die CSR-Datei, diese sendest du an die Zertifizierungsstelle zum Signieren. Damit die das machen können, musst du einen Nachweis über deine Person beifügen. Du kannst einfach deinen Perso oder deinen Reisepass einscannen und als Bild mitsenden (die haben ein spezielles Feld im Forumlar genau dafür).
Dann wird an die ausgewählte Adresse (du hast die auswahl zwischen ein paar Adressen, alle enden auf die Domain!) eine Bestätigungsmail geschickt, in der du einen Link anklicken musst. Dieser Schritt funktioniert nicht immer automatisch. Wenn diese E-Mail nicht kommt, dann kannst du mit denen einen Chat starten (steht in der ersten Mail - die kommt garantiert). Dann schicken die die Mail nochmal raus (hab ich auch schon gemacht - ist alles kein Problem). Allerdings sitzen die in Amerika, kann also sein dass die schon Feierabend haben, dann musst du bis zum nächsten Tag warten, dann passiert das aber meist schon automatisch. Wenn du diesen Link bestätigt hast, bekommst du nach ca. 30 - 60 minuten dein Zertifikat. Dieses speicherst du dann ebenfalls auf dem Server ab.
Du hast dann also schlussendlich zwei Files:
example_com.key und example_com.crt
Diese packst du in einen beliebigen Ordner, z.B. C:\certificates und dann packst du das hier in deine httpd-ssl.conf:
- Code: Select all
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl .crl
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:logs/ssl_scache(512000)"
SSLSessionCacheTimeout 300
<VirtualHost IP:443>
DocumentRoot "C:/xampp/htdocs/"
ServerName example.com:443
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile "C:/certificates/example_com.crt"
SSLCertificateKeyFile "C:/certificates/example_com.key"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
</VirtualHost>
Ich hoffe zumindest dass das funktioniert, hab das unter Windows noch nie getestet, unter Debian läuft's ganz wunderbar.
Für jedes neue Zertifikat kopierst du einfach den VirtualHosts-Block, passt die IP, die Domain und die zwei Dateipfade an.
Dann noch schauen ob der Include-Befehl für diese Datei auch in der httpd.conf aktiviert ist und den Server neu starten. Jetzt sollte die Domain auch per https erreichbar sein.
mfg glitzi