Überprüfen der Signatur eines Pakets

Mit Hilfe der RPM-Technologie ist das Installieren von Anwendungen einfach und schnell möglich - und wenn Sie ein Programm dann doch nicht verwenden möchten, können Sie es problemlos wieder von Ihrem Rechner entfernen.

Die hohe Benutzerfreundlichkeit von RPM ist jedoch mit keinen Einbußen bei der Sicherheit verbunden. Durch die Kombination von RPM und dem Gnu Privacy Guard - auch GnuPG genannt - können Sie sicherstellen, dass das heruntergeladene Paket "vertrauenswürdig" ist.

Angenommen, Sie haben gerade ein Paket mit der Bezeichnung coolapp-1.1.rpm heruntergeladen. Um die Integrität der Datei rasch zu überprüfen, müssten Sie lediglich folgenden Befehl eingeben:

rpm -K coolapp-1.1-1.rpm
		  

Jetzt wird folgende Meldung angezeigt: coolapp-1.1-1.rpm: md5 OK. Diese kurze Meldung gibt an, dass die Datei in Ordnung ist und beim Herunterladen nicht beschädigt wurde.

Das ist eine gute Nachricht - aber wie vertrauenswürdig ist der Entwickler des Pakets? Kennen Sie ihn wirklich? Nun, wenn das Paket signiert wurde und den GnuPG Schlüssel des Entwicklers aufweist, wissen Sie, dass das Paket wirklich vom angegebenen Entwickler stammt.

GnuPG ist ein Dienstprogramm für sichere Kommunikation und stellt einen umfassenden und freien Ersatz für die Verschlüsselungstechnologie von PGP dar. Mit GnuPG können Sie die Echtheit von Dokumenten überprüfen und Daten für den Austausch mit anderen Benutzern verschlüsseln und entschlüsseln. Das Tool ist auch in der Lage, PGP 5.x Dateien zu entschlüsseln und zu überprüfen.

Bei der Installation von Red Hat Linux wird GnuPG standardmäßig installiert. Im Folgenden erfahren Sie, wie Sie GnuPG zum Überprüfen der Herkunft von Paketen verwenden können.

GnuPG verwendet für die Kryptographiefunktionen den Austausch von öffentlichen Schlüsseln. Wenn Sie den Schlüssel eines bestimmten Benutzers überprüfen, können Sie auf diese Weise mit Sicherheit die wahre Identität des Eigentümers des Schlüssels feststellen. Bei der Kryptographie mit öffentlichen Schlüsseln erstellen die Benutzer ein Schlüsselpaar, das aus einem öffentlichen und einem privaten Schlüssel besteht.

Sie sollten Ihren öffentlichen Schlüssel an die Empfänger Ihrer Mails weitergeben oder über Schlüsselserver (spezielle Speicherorte für öffentliche Schlüssel im Internet) zur Verfügung stellen, Sie müssen Ihren privaten Schlüssel jedoch vor fremdem Zugriff schützen.

Erstellen eines neuen Schlüsselpaars

Für die Verwendung von GnuPG müssen Sie zuerst ein neues Schlüsselpaar erstellen, das aus Ihrem öffentlichen und Ihrem privaten Schlüssel besteht. Hierzu können Sie die Option --gen-key am Shell Prompt verwenden.

WichtigGeben Sie Ihren privaten Schlüssel nicht weiter
 

Bitte denken Sie daran, dass Sie zwar Ihren öffentlichen Schlüssel an alle künftigen Empfänger Ihrer Mails weitergeben sollten, Ihren privaten Schlüssel jedoch unter Verschluss halten müssen.

Geben Sie in einem Xterm-Fenster den Befehl gpg --gen-key ein. Da Sie am häufigsten mit Ihrem Benutzeraccount arbeiten werden, sollten Sie diesen Befehl auch eingeben, wenn Sie als "normaler" Benutzer und nicht als Root angemeldet sind. Daraufhin wird ein Begrüßungsbildschirm mit den wichtigsten Optionen und der empfohlenen Standardoption angezeigt, der ähnlich wie folgt aussieht:

gpg (GnuPG) 1.0.1; Copyright (C) 1999 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) ElGamal (sign and encrypt)
Your selection?
		  

In den meisten Bildschirmen, in denen Sie eine Option auswählen müssen, wird die empfohlene Standardoption durch einen Hinweis in Klammern hervorgehoben. Sofern Sie nicht besondere Gründe für andere Einstellungen haben, können Sie die Standardoptionen einfach durch Drücken der Eingabetaste übernehmen.

Im ersten Bildschirm sollten Sie die Voreinstellung (1) DSA and ElGamal übernehmen. Mit dieser Option können Sie unter Verwendung beider Technologien digitale Signaturen erstellen und Daten verschlüsseln (und entschlüsseln). Geben Sie 1 ein, und drücken Sie dann die Eingabetaste.

Wählen Sie dann die Schlüsselgröße bzw. dessen Länge aus. Normalerweise gewährleistet ein längerer Schlüssel zugleich eine größere Sicherheit für Ihre Nachrichten. Die Standardgröße vom 1024 Bit sollte für die meisten Benutzer ausreichend sein, so dass Sie hier die Eingabetaste drücken können.

In der nächsten Option werden Sie gefragt, für welchen Zeitraum der Schlüssel gültig bleiben soll. Normalerweise können Sie auch hier die Vorgabe 0 = key does not expire beibehalten. Wenn Sie einen Zeitpunkt für das Ablaufen des Schlüssels festlegen, müssen Sie daran denken, alle Empfänger sicherer Mails rechtzeitig über das Ablaufdatum zu informieren und einen neuen öffentlichen Schlüssel bereitzustellen.

Ihre nächste Aufgabe besteht darin, eine Benutzer-ID mit Ihrem Namen, Ihrer E-Mail-Adresse und einem optionalen Kommentar zu erstellen. Nachdem Sie dies getan haben, werden die von Ihnen eingegebenen Informationen in einer Übersicht angezeigt.

Sobald Sie Ihre Eingaben bestätigt haben, müssen Sie einen Passsatz eingeben, also ein von Ihnen gewähltes Passwort, mit dem Sie sich als Eigentümer Ihrer neuen Schlüssel ausweisen können.

TipVerwenden Sie einen sicheren Passsatz
 

Ähnlich wie bei der Vergabe von Passwörtern für Ihre Accounts spielt auch die Auswahl eines geeigneten Passsatzes eine große Rolle bei der Sicherheit von GnuPG. Es empfiehlt sich auch hier, für den Passsatz Groß- und Kleinbuchstaben in Verbindung mit Zahlen oder Satzzeichen zu verwenden.

Nachdem Sie Ihren Passsatz eingegeben und bestätigt haben, werden Ihre Schlüssel erstellt. Dabei wird eine ähnliche Meldung wie folgt ausgegeben:

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.
+++++.+++++.++++++++....++++++++++..+++++.+++++.+++++++.+++++++
+++.++++++++++++++++++++++++++++++++++++++..........................++++
	

Wenn keine weitere Ausgabe auf dem Bildschirm erfolgt, wurden Ihre neuen Schlüssel erstellt und im Verzeichnis .gnupg gespeichert. Zum Auflisten Ihrer Schlüssel verwenden Sie den Befehl gpg --list-keys, worauf eine ähnliche Anzeige wie im folgenden Beispiel erfolgt:

[neuerbenutzer@localhost neuerbenutzer]$ gpg --list-keys
/home/neuerbenutzer/.gnupg/pubring.gpg
-----------------------------------------
pub  1024D/B7085C8A 2000-04-18 Ihr Name <sie@ihrisp.net>
sub  1024g/E12AF9C4 2000-04-18
	

Austauschen von Schlüsseln

Nachdem Sie Ihren Schlüsselring erstellt haben, können Sie Ihren öffentlichen Schlüssel mit anderen Benutzern austauschen. Hierzu exportieren Sie Ihren öffentlichen Schlüssel und importieren die öffentlichen Schlüssel anderer Benutzer.

Exportieren von Schlüsseln

Um Ihren Schlüssel zu exportieren, um diesen per Mail zu verschicken oder in eine Webseite einzufügen, verwenden Sie den folgenden Befehl:

gpg --armor --export sie@ihrisp.net
	

Als Ergebnis dieses Befehls wird Folgendes angezeigt:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.0.1 (GNU/Linux)
Comment: For info see http://www.gnupg.org

mQGiBDj8sFIRBACoyF4UucTkkuDV/KIW/kCbyzAx18OKXosVJkn4Sb/zhc/IVxoE
e/idTkzB292CUvN4KGFxCXyE0nKG/Vjc2lHwepsN41IcYQTVXUL0raITYYxyOHQe 
7BJfjW0cYB/tyJLurr+iOB8JFs4HdZcCQzR9aufqcN4ErCVorrAM8k0y5wCggM9G
+Qcr32lplMKXxgf6NLj1O2oCMUwECYrrUTbxE82aZAFuJj55O/QNyv0eWXWeJvzf
oPLBTaxQDp4MaYZUc5qwgxY6sxz9gBUqAJRNUbg2U5lK5A4emNYVRh4tRs6etpaH
+SQpA/4qRhKRHyTRK8CmGRPg9zfMkCVDHFjvA2cDXeN0Rz1Qd3WWWEGg3ytz4Omv 
sYkzMAh0988HMzxWCRKXVPJoNjGHXnyvt44eb5oFE6u/b+RDcNu5FL7V7snXfOfp
GhF+YNq74tt9YFlOEjvQMRKcBXjU6NnZ1pWK7fPs8W1tF2Nzo7Q1UGF1bCBHYWxs
YWdoZXIgKHd3dy5yZWRoYXQuY29tKSA8cGF1bGdhbGxAcmVkaGF0LmNvbT6IVgQT
=NYlu
-----END PGP PUBLIC KEY BLOCK-----
	

TipEinfaches Speichern der Ausgabe
 

Sie können den Textblock mit dem öffentlichen Schlüssel einfach durch Umleiten der Ausgabe in eine Datei speichern. Auf diese Weise können Sie den Inhalt der Datei in eine E-Mail oder eine Webseite einfügen. Um die Ausgabe in eine Datei mit der Bezeichnung meinschlüssel.txt in Ihrem Home-Verzeichnis umzuleiten, hängen Sie > meinschlüssel.txt an den Befehl an:

gpg --armor --export sie@ihrisp.net > meinschlüssel.txt

Sie können den Inhalt der Datei meinschlüssel.txt immer dann einfügen, wenn Sie Ihren Schlüssel an andere Benutzer senden möchten.

Importieren von Schlüsseln

Wenn Sie den öffentlichen Schlüssel eines anderen Benutzers importieren, fügen Sie diesen Schlüssel Ihrem Schlüsselring hinzu. Wenn Sie dann später ein Dokument oder eine Datei von einem anderen Benutzer herunterladen, können Sie die Authentizität dieses Dokuments anhand des entsprechenden Schlüssels in Ihrem Schlüsselring überprüfen.

Zum Importieren eines Schlüssels verwenden Sie die Option --import. Um die Vorgehensweise zu erläutern, soll nun der öffentliche Schlüssel von Red Hat heruntergeladen und importiert werden. Wenn Sie künftig ein Paket von Red Hat überprüfen möchten, können Sie hierzu diesen Schlüssel verwenden.

Sie finden den Schlüssel von Red Hat unter http://www.redhat.com/about/contact.html. Sie können ihn über Ihren Browser herunterladen, indem Sie beim Klicken auf den Link zum Herunterladen gleichzeitig die Umschalttaste drücken und dann auf OK klicken, um die Datei (beispielsweise redhat2.asc) zu speichern. Importieren Sie daraufhin den Schlüssel am Shell Prompt mit dem folgenden Befehl:

gpg --import redhat2.asc	    
	  

Sie werden dann mit einer Meldung darüber informiert, dass der Schlüssel "verarbeitet" wurde. Um zu überprüfen, ob der Schlüssel hinzugefügt wurde, geben Sie gpg --list-keys ein. Daraufhin wird der gerade von Red Hat heruntergeladene Schlüssel zusätzlich zu Ihren eigenen Schlüsseln angezeigt.


[neuerbenutzer@localhost neuerbenutzer]$ gpg --list-keys
/home/neuerbenutzer/.gnupg/pubring.gpg
-----------------------------------------
pub  1024D/DB42A60E 1999-09-23 Red Hat, Inc <security@redhat.com>
sub  2048g/961630A2 1999-09-23
	

TipSchlüssel müssen nicht unbedingt Links sein
 

Mitunter ist es nicht möglich, einen Schlüssel in der beschriebenen Weise über einen Link herunterzuladen. In diesem Fall können Sie jeden beliebigen Schlüssel als Textdatei speichern. Solange Sie sich an den Namen und den Speicherort der Datei erinnern, können Sie den Schlüssel problemlos in Ihren Schlüsselring importieren.

Prüfen von Paketen

Der Befehl zum Überprüfen eines heruntergeladenen Pakets (rpm --K Dateiname) hat sich seit dem Erstellen Ihrer GnuPG-Schlüssel und dem Hinzufügen des Schlüssels von Red Hat nicht geändert. Nach dem Einfügen des Schlüssels von Red Hat in Ihren Schlüsselring wird jedoch eine geringfügig andere Meldung auf dem Bildschirm ausgegeben: md5 gpg OK. Das bedeutet, dass das Paket nicht beschädigt wurde und Sie darüber hinaus dem Anbieter des Pakets, in diesem Fall Red Hat, trauen können.

Hier finden Sie weitere Informationen

Natürlich weisen GnuPG und Verschlüsselungstechnologie noch wesentlich mehr Aspekte auf, als hier behandelt werden konnten. Um all diese Themen zu behandeln, würde dieses Buch wohl nicht ausreichen... Wenn Sie mehr über diese Thematik erfahren möchten und unter anderem Informationen zum Schlüsselmanagement benötigen oder das richtige Importieren und Exportieren von Schlüsseln lernen möchten, können Sie in Kapitel 13 weiterlesen.