ubuntuusers.de

Du betrachtest eine alte Revision dieser Wikiseite.

ssl-cert

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:


Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/security.png Möchte man die verschlüsselten Protokolle wie HTTPS, IMAPS oder POP3S nutzen, so benötigt man ein SSL-Zertifikat einer CA (Certification Authority). Eigentlich muss solch ein Zertifikat von Firmen oder Organisationen ausgestellt werden, die dafür autorisiert sind. Doch für Testzwecke oder die private Nutzung reicht oft auch ein selbstgeneriertes Zertifikat. Dieses wird durch den Befehl ssl-cert auf dem Rechner erstellt. Allerdings kann der praktische Einsatz durch kleinere Probleme getrübt sein.

Installation

Experten-Info:

Anfang April 2014 ist der Heartbleed-Bug (CVE-2014-0160) in OpenSSL bekannt geworden. Leider hat sich Canonical entscheiden, bis einschließlich Ubuntu 14.04 nicht die aktualisierte Version 1.0.1g oder neuer zu nutzen, sondern nur die Pakete in den offiziellen Paketquellen zu patchen. Seit dem 7. April 2014 stehen diese als Update zur Verfügung. Man sollte sich daher nicht durch die scheinbar betroffene Versionsnummer des Pakets täuschen lassen.

Allerdings wird empfohlen, vor diesem Datum mit Ubuntu 12.04 oder neuer erstellte Zertifikat zu verwerfen und neue zu erstellen.

Durch die Installation [1] des folgenden Pakets wird das Zertifikat sofort erzeugt:

  • ssl-cert

Befehl zum Installieren der Pakete:

sudo apt-get install ssl-cert 

Oder mit apturl installieren, Link: apt://ssl-cert

Nutzung

Man kann diesen Vorgang auch später durch folgenden Befehl wiederholen [2][3]:

sudo make-ssl-cert generate-default-snakeoil 

Die dadurch generierten Dateien werden sofort in die SSL-Schlüssel aufgenommen:

SSL-Zertifikat /etc/ssl/certs/ssl-cert-snakeoil.pem
SSL-Schlüssel /etc/ssl/private/ssl-cert-snakeoil.key

und können dort beispielsweise von Serveranwendungen genutzt werden.

SSL-Zertifikate erneuern

Sollte sich der Rechnername ändern oder das Zertifikat ablaufen, so kann man durch den Befehl:

sudo make-ssl-cert generate-default-snakeoil --force-overwrite 

ein neues Zertifikat erzeugen. Damit das neue Zertifikat verwendet wird, müssen die entsprechenden Dienste neu gestartet werden.

SSL-Zertifikate mit längerer Laufzeit

Um die Laufzeit/Gültigkeit der erstellten Zertifikate von der Voreinstellung 1 Monat auf einen anderen Zeitraum zu ändern, muss man das Shell-Skript /usr/sbin/make-ssl-cert mit einem Editor [4] und Root-Rechten bearbeiten. In dieser Datei nach openssl suchen (ungefähr bei Zeile 124) und die Zeile

openssl req -config $TMPFILE -new -x509 -nodes \

in

openssl req -config $TMPFILE -new -days 365 -x509 -nodes \

ändern. Damit ist das nächste selbst erstellte Zertifikat 365 Tage gültig.

Problembehebung

Wenn ein Zertifikat über die obigen Schritte erneuert wurde (force-overwrite), ist darauf zu achten, dass im Zertifikat der richtige Rechnername eingetragen wird. ssl-cert setzt diesen als CommonName des Zertifikates ein. Der Name kann im laufenden Betrieb mittels des Befehls:

sudo hostname NEUER_NAME 

geändert (die Datei /etc/hostname wird nur beim Systemstart gelesen) oder einfach nur mit hostname ausgelesen werden.

Danach wird versucht, diesen Hostname aufzulösen (mittels /etc/hosts, DNS, etc). Wenn ssl-cert den Namen nicht auflösen kann, bekommt man eine Fehlermeldung, dass der Hostname kein gültiger FQDN ist.

  • SSL - Wikipedia

  • CA - eine eigene Certification Authority betreiben

  • CAcert - Community, die kostenlose SSL-Zertifikate ausstellt

  • Apache/SSL

Diese Revision wurde am 24. Mai 2015 03:00 von ubot erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Sicherheit, Verschlüsselung, SSL, SSL-Cert, Netzwerk, Server, Internet, ungetestet