3.2. Digitale Signaturen für RHN-Pakete

Alle Pakete, die durch RHN verteilt werden, sollten eine digitale Signatur besitzen. Diese besteht aus einem einzigartigen, privaten Schlüssel und kann mit dem korrespondierenden, öffentlichen Schlüssel verifiziert werden. Nachdem ein Paket erstellt wurde, können die SRPM (Source-RPM) und die RPM-Pakete digital mit einem GnuPG-Schlüssel signiert werden. Bevor das Paket installiert wird, wird mithilfe des öffentlichen Schlüssels festgestellt, ob das Paket von einer vertrauenswürdigen Partei signiert wurde und in der Zwischenzeit auch nicht verändert wurde.

3.2.1. Ein GnuPG-Schlüsselpaar generieren

Ein GnuPG-Schlüsselpaar besteht aus privaten und öffentlichen Schlüsseln. Um ein Schlüsselpaar zu generieren, geben Sie folgenden Befehl als 'root' in einem Shell-Prompt ein:
gpg --gen-key
Wenn Sie diesen Befehl nicht als Root-Benutzer ausführen, erhalten Sie folgende Mitteilung:
gpg: Warning: using insecure memory!
Diese Mitteilung erscheint, da Nicht-Root-Benutzer keine Speicherseiten sperren können. Da Sie Ihren privaten GnuPG-Schlüssel oder Zugangscode geheim halten möchten, generieren Sie das Schlüsselpaar als 'root'. Der Root-Benutzer kann Speicherseiten sperren, was bedeutet, dass die Information nie auf Festplatte gespeichert wird.
Nachdem Sie den Befehl zur Generierung des Schlüsselpaares ausgeführt haben, sehen Sie einen Einführungsbildschirm mit Schlüsseloptionen ähnlich der folgenden:
	gpg (GnuPG) 1.2.6; Copyright (C) 2004 Free Software
	Foundation, Inc.  This program comes with ABSOLUTELY NO
	WARRANTY. This is free software, and you are welcome to
	redistribute it under certain conditions. See the file COPYING
	for details. Please select what kind of key you want: (1) DSA
	and ElGamal (default) (2) DSA (sign only) (4) RSA (sign only)
	Your selection?
Akzeptieren Sie die Standard-Option: (1) DSA und ElGamal. Diese Option ermöglicht es Ihnen, eine digitale Signatur zu erstellen und die Ver-/Entschlüsselung mit zwei verschiedenen Technologien. Tippen Sie 1 und drücken die Enter-Taste.
Wählen Sie als nächstes die Schlüsselgröße aus, welche die Länge des Schlüssels festlegt. Je länger der Schlüssel, desto sicherer sind Ihre Mitteilungen gegenüber Angriffen. Wir empfehlen hierbei mindestens 1024 Bits.
Im Rahmen der nächsten Option werden Sie nach der Gültigkeitsdauer Ihres Schlüssels gefragt. Wenn Sie sich für ein Ablaufdatum entscheiden, dann müssen Sie auch jeden darüber informieren, der Ihren öffentlichen Schlüssel verwendet und nach Ablauf mit einem neuen Schlüssel versorgen. Es wird empfohlen, dass Sie kein Ablaufdatum eingeben. Wenn Sie kein Ablaufdatum eingeben, dann werden Sie nochmals nach einer Bestätigung gefragt:
Key does not expire at all Is this correct (y/n)?
Drücken Sie y, um Ihre Entscheidung zu bestätigen.
Als Nächstes müssen Sie eine Benutzer-ID mit Ihrem Namen, Ihrer E-Mail-Adresse und einem optionalen Kommentar eingeben. Diese Informationen werden einzeln abgefragt. Wenn Sie damit fertig sind, erhalten Sie ein Zusammenfassung der von Ihnen zur Verfügung gestellten Information.
Geben Sie ein Passwort ein, nachdem Sie Ihre Auswahl getroffen haben.

Anmerkung

Wie bei Ihren Account-Passwörtern ist eine gutes Passwort essentiell für ein optimales GnuPG-Sicherheitsverfahren. Ihr Passwort sollte aus Groß- und Kleinbuchstaben, Zahlen und/oder Satzzeichen bestehen.
Wenn Sie Ihren Zugangscode einmal eingegeben und überprüft haben, werden Ihre Schlüssel generiert. Es erscheint eine Meldung ähnlich der folgenden:
We need to generate a lot of random bytes. It is a good idea to perform some
other action (type on the keyboard, move the mouse, utilize the disks) 
during the prime generation; this gives the random number generator a 
better chance to gain enough entropy. 

+++++.+++++.++++++++....++++++++++..+++++.+++++.+++++++.+++++++ +++.
++++++++++++++++++++++++++++++++++++++..........................++++
Sobald die Aktivität auf dem Bildschirm stoppt, befinden sich Ihre neuen Schlüssel im .gnupg-Verzeichnis im Stammverzeichnis von 'root', da Sie den Befehl als 'root' ausgeführt haben. Um Ihre 'root'-Schlüssel aufzulisten, geben Sie folgenden Befehl ein:
gpg --list-keys
Sie erhalten etwa folgende Ausgabe:
/root/.gnupg/pubring.gpg ----------------  pub 1024D/B7085C8A 2002-02-18
 Your Name<you@example.com> 
sub 1024g/E12AF9C4 2002-02-18
Um Ihren öffentlichen Schlüssel abzufragen, verwenden Sie folgenden Befehl:
gpg --export -a 'Your Name' > public_key.txt
Ihr öffentlicher Schlüssel wird in die Datei public_key.txt geschrieben.
Dieser öffentliche Schlüssel ist sehr wichtig. Es handelt sich nämlich dabei um den Schlüssel, der an alle Client-Systeme verteilt werden muss, die angepasste Software via up2date erhalten. Wie dieser Schlüssel eingesetzt werden kann, wird ausführlich im Red Hat Network-Client-Konfigurationshandbuch behandelt.