. .

Erstellung und Installation eines SSL-Zertifikats für Apache


Das verwendete System ist ein Dual-Opteron mit dem Kernel 2.6.19-ck2-r3.

Ich beschreibe hier kurz, wie man selbst ein Zertifikat für einen Webserver erstellt, um SSL-Verbindungen erlauben zu können.
In Benutzung ist Apache Version 2.0.59.

Zuerst benötigt Ihr ein RSA Zertifikat:

openssl genrsa -out /etc/apache2/ssl/sysalyser.de/server.key 1024

Da ich mehrere virtuelle Server unter Apache laufen lasse, habe ich zuerst den Ordner /etc/apache2/ssl/sysalyser.de/ erstellt.
Dies bleibt Euch natürlich frei, wohin Ihr die Zertifikate speichern wollt.
Als nächstes braucht Ihr eine Art Zertifikatsantrag, um dies einer Zertifizierungsstelle übermitteln zu können (ganz theoretisch):

openssl req -new -key /etc/apache2/ssl/sysalyser.de/server.key -out /etc/apache2/ssl/sysalyser.de/server.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‚.‘, the field will be left blank.

—–
Country Name (2 letter code) [AU]:DE
State or Province Name (full name) [Some-State]:BAVARIA
Locality Name (eg, city) []:SOB
Organization Name (eg, company) [Internet Widgits Pty Ltd]:PRIVATE
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []:sysalyser.de
Email Address []:julian.hofmann@sysalyser.de
Please enter the following ‚extra‘ attributes to be sent with your certificate request
A challenge password []:
An optional company name []:

Wie Ihr seht, müsst Ihr einige Angaben machen. Im Prinzip ist es egal, was Ihr dort eintippt – allerdings wirken unvollständige oder offensichtlich
falsche Angaben nicht gerade vertrauenswürdig.

Wichtig ist die Angabe bei „Common Name (eg, YOUR name) []:“. Hier müsst Ihr Euere richtige Domain eintragen, also die, die der Benutzer im
Browser eingibt (ohne www.).

Seid Ihr mit diesem Schritt fertig, schätze ich mal, dass Ihr Euch doch lieber selbst zertifizieren wollt:

openssl x509 -req -days 999 -in /etc/apache2/ssl/sysalyser.de/server.csr \
-signkey /etc/apache2/ssl/sysalyser.de/server.key \
-out /etc/apache2/ssl/sysalyser.de/server.crt

Hiermit habt Ihr die Erstellung des Zertifikats abgeschlossen.

Ihr braucht selbstverständlich nicht immer den absoluten Pfad angeben, wenn Ihr Euch in das Verzeichnis bewegt, in das die Dateien abgelegt werden sollen.

Daher fürs schnelle copy & paste:

openssl genrsa -out server.key 1024
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 999 -in server.csr -signkey server.key -out server.crt

Klar ist, dass der Apache noch nichts damit anfangen kann, dass das Zertifikat erstellt wurde.
Daher öffnet die Datei /etc/apache2/httpd.conf oder diejenige, die Euer Apache einliest:

vim /etc/apache2/httpd.conf

 

# /etc/apache2/httpd.conf

<VirtualHost 62.75.155.130:443>

DocumentRoot „/var/www/web5/html“

ServerAdmin julian.hofmann@sysalyser.de
ServerName sysalyser.de
ServerAlias www.sysalyser.de

SSLEngine on
SSLCertificateFile /etc/apache2/ssl/sysalyser.de/server.crt
SSLCertificateKeyFile /etc/apache2/ssl/sysalyser.de/server.key

AddLanguage de .de

<Directory „/var/www/web5/html“>

Order allow,deny
Allow from all

</Directory>
</VirtualHost>

Somit wäre das alles. Sofern Ihr nicht vergessen habt, Eueren Server auf Port 443 (oder auf welchem Euer Apache lauschen soll) einzustellen. Dies ist
die Option „Listen 443″ in der httpd.conf. Ist der Port nicht genannt, müsst Ihr dies in die Datei einfügen.

Vergesst auch nicht, den Apache neu zu starten; das Flag „-DSSL“ nicht vergessen, ansonsten kann der Apache mit den „SSL…“-Angaben nichts
anfangen.


Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>