SSL with apache2
(Alles direkt generieren: openssl req -new -nodes -keyout mydomain.key -out mydomain.csr -newkey rsa:2048)
Wechseln Sie in das Konfigurationsverzeichnis Ihres Webservers.
cd /usr/local/httpd/conf/
Zunächst erzeugen Sie mit dem Kommando openssl die Schlüsseldaten ihres Servers:
openssl genrsa -des3 -out server.key 1024 Sie werden nun nach dem Kennwort gefragt. Geben Sie ein möglichst kryptisches Kennwort ein und merken Sie es sich gut, z.B.:
wkh589azhz
genrsa: Es wird ein RSA-Schlüssel erzeugt.
-des3: Verschlüsselung mit dem DES3-Algorithmus verschlüsselt gespeichert. Unbedingt angeben, denn ohne diese Option wird Ihr Schüssel unverschlüsselt gespeichert !
-out: name der Ausgabedatei
1024: Die Schlüssellänge beträgt 1024 Bit.
Nun befindet sich die Datei server.key in Ihrem Verzeichnis
Jetzt wird der Serverkey erzeugt. Hier ist wiederum ein Passwort erforderlich. Wir machen vorher vom Key ein Backup und entschlüsseln den Key, damit Apache später nicht bei jedem Start nach dem Passwort verlangt.
openssl rsa -in server.key -out server.key
Die Dateien server.key.secure und server.key befinden sich im Verzeichnis.
Nun müssen wir einen sogenannten "Certificate Signing Request" (CSR) erzeugen.
Hier wird kein Passwort mehr verlangt, da wir den Key bereits entschlüsselt haben.
Erzeugen eines Zertifikates für die CA:
openssl req -new -days 3650 -key server.key -out server.csr -newkey rsa:2048
Country Name (2 letter code) [AU]:DE (falls Sie in Deutschland leben)
State or Province Name (full name) [Some-State]:NRW (ihr Bundesland)
Locality Name (eg, city) []:Köln (Ihre Anschrift halt...)
Organization Name (eg, company) [Internet Widgits Pty Ltd]:IhreFirma (das sollten Sie wissen ;-))
Organizational Unit Name (eg, section) []:CA (Abteilungsbezeichnung oder CA)
Common Name (eg, YOUR name) []:ssl.ihre-domain.de (Name Ihres SSL-Servers)
Email Address []:ihrName@ihreDomain.de (ihre E-Mail-Adresse)
Hinweis: Für den Livebetrieb muss der "Common Name" mit der Host-Adresse des Servers übereinstimmen, der die https-Anfragen bedienen soll.
Die Datei server.csr wurde erzeugt und kann zur Unterschrift versendet werden oder das Zertifikat selber signieren:openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Im Falle, dass Sie Ihr Zertifikat von XRAMP ordern, erhalten Sie eine E-Mail mit einer zip-Datei im Anhang zurück, welche das Zertifikat in Textform enthält. Entpacken Sie die Zip-Datei und laden Sie das eigentlich Zertifikat (IhrDomainname.crt) und, sofern vorhanden, das Comodo intermediate certificate (ComodoSecurityServicesCA.crt) auf Ihren Server. Letzteres wird benötigt, damit der Browser des Nutzers der Zertifizierungsstelle vertraut und keine Nachfrage mehr startet.
Erzeugen Sie ein Verzeichnis ssl.key und ssl.crt.
cd /usr/local/https/conf
mkdir ssl.crt ssl.key
Kopieren Sie das Zertifikat hinein
cp /home/ihr-homeverzeichnis/ssl_ihredomain_de.crt ssl.crt/
Kopieren Sie das Comodo intermediate certificate
cp /home/ihr-homeverzeichnis/ComodoSecurityServicesCA.crt ssl.crt/ca.crt
Kopieren Sie den Serverkey
cp server.key ssl.key
In your apache Site:
SSLEngine On SSLCertificateFile /etc/apache2/keys/yourdomain.crt SSLCertificateKeyFile /etc/apache2/keys/yourdomain.key
