SSL-Zertifikate

Aus Doku-Wiki
Zur Navigation springenZur Suche springen

Übersicht zum Thema SSL-Zertifikate

Es gibt zwei Möglichkeiten, wie man zu einem SSL-Zertifikat kommt.

  1. Offizielle Zertifizierungsstelle CA
  2. Eigene Zertifizierungsstelle CA
  • Um verschlüsselte Verbindung im Internet für Kunden anzubieten,
    sollte man ein Zertifikat bei einer offiziellen Zertifizierungsstelle kaufen.
    Das verhindert, dass der Kunden, der die Seite aufruft, Mmeldungen über ein Fehlerhaftes Zertifikat erhält.
  • Um verschlüsselte Verbindungen im internen Bereich anzubieten, kann amn sich die jährlichen Kosten für das offizielle Zertifikat sparen,
    wenn eine eigene Zertifizierungsstelle installiert wird. Dies ist unter Windows, wie auch unter Linux (sihe unten) möglich.

Eigene CA

Eine eigene CA zu installieren, gibt es unter Linux, wie immer, viele Möglichkeiten:

  1. [TinyCA]
  2. OpenSSL

In diese Doku wird auf die CA mittels OpenSSL eingegangen.

Installation

aptitude openssl

Verzeichnisse

  1. Konfiguration: /etc/ssl/
  2. Hilfs-Script: /usr/lib/ssl/misc/CA.sh
  • In der Datei /etc/ssl/openssl.cnf können Anpassungen für die eigene CA vorgenommen werden:
[ CA_default ]
dir             = ./MY-CA              # Where everything is kept
. . .
default_days    = 3650                 # how long to certify for
. . .
countryName                     = Country Name (2 letter code)
countryName_default             = DE

Wie hier zu sehen, kann jeder Wert der bei der Erstellung des Zertifikates abgefragt wird, mit einem Defaultwert vorbelegt werden.
Dazu wird in einer zweiten Zeile hinter den Wert (z.B. countryName) ein _default gesetz und mit eigenem Inhalt gefüllt.
OpenSSL bringt das Script CA.sh und CA.pl mit. Die Scripte sind gleich.

  • Setzt man folgenden Link auf dieses Script, kann es von überall aufgerufen werden:
ln -s /usr/lib/ssl/misc/CA.sh /usr/sbin

CA erstellen

# CA.sh -newca
  1. Es folgen nun abfragen zu den Eigenschalften der CA.
  2. Nach eingabe einer Phassphrase für die CA wird die CA im aktuellen Verzeichnis erstellt

Server-Zertifikat erstellen

Server-Request

# openssl req -newkey rsa:1024 -nodes -keyout newreq.pem -out newreq.pem

Hier müssen wieder Angaben zum Zertifikt gemacht werden.
WICHTIG: Es muss beim -Common Name (eg, YOUR name)- der Servername mit Domain angegeben werden.

Server-Request mit CA Zertifizieren

# CA.sh -sign

Mit diesem Befehl wird das Server-Zertifikat von der CA unterschrieben.

Extrahieren der Phassphrase aus dem Request

# openssl rsa -in newreq.pem -out Server01key.pem

Danach kann das Zertifikat newcert.pem in Server01cert.pem umbenannt werden,
so dass man später noch weiss, für welchen Server dass Zertifikat erstellt wurde.

# mv newcert.pem Server01cert.pem


Offizielle CA