NOTE: CentOS Enterprise Linux is built from the Red Hat Enterprise Linux source code. Other than logo and name changes CentOS Enterprise Linux is compatible with the equivalent Red Hat version. This document applies equally to both Red Hat and CentOS Enterprise Linux.
Linuxtopia - CentOS Enterprise Linux Sicherheitshandbuch - Sicherheits-Updates
Wenn Sicherheitsrisiken in einer Software entdeckt werden, muss die Software ge�ndert werden, um das m�gliche Sicherheitsrisiko auszuschlie�en. Ist das Paket Teil einer Red Hat Enterprise Linux Distribution, die derzeit unterst�tzt wird, liegt es im Interesse von Red Hat, Inc., so schnell wie m�glich aktualisierte Pakete herauszugeben, die Sicherheitsl�cher stopfen. Wird die Mitteilung eines Sicherheitsrisikos von einem Patch begleitet (oder Code, der den Fehler behebt), wird der Patch auf das Red Hat Enterprise Linux Paket angewandt, von unserem Qualit�tssicherungsteam getestet und als Errata-Update herausgegeben. Enth�lt die Ank�ndigung keinen Patch, arbeitet ein Red Hat Entwickler mit dem Herausgeber des Pakets zusammen, um das Problem zu l�sen. Wurde das Problem behoben, wird das Paket getestet und als Errata-Update herausgegeben.
Wenn Sie ein Paket verwenden, f�r das ein Sicherheits-Errata-Report herausgegeben wurde, wird strengstens empfohlen, dass Sie Ihre Sicherheits-Errata-Pakete sobald wie m�glich aktualisieren, um die Zeit, die Ihr System angreifbar ist, zu minimieren..
3.1. Pakete aktualisieren
Wenn Sie Pakete auf Ihrem System aktualisieren, ist es wichtig, das Update von einer vertrauensw�rdigen Quelle herunterzuladen. Ein Cracker kann leicht eine Version eines Paketes nachbauen (mit der gleichen Versionsnummer des Pakets, das theoretisch das Problem l�sen sollte), mit einem anderen Sicherheitsrisiko im Paket, und dieses im Internet ver�ffentlichen. Falls dies geschieht, kann durch Sicherheitsma�nahmen wie das Abgleichen der Pakete gegen die urspr�nglichen RPMs dieses Risiko nicht entdeckt werden. Es ist daher wichtig, dass Sie RPMs nur von Quellen wie Red Hat, Inc. herunterladen und die Signatur des Pakets pr�fen, um sicherzustellen, dass es wirklich von dieser Quelle entwickelt wurde.
Red Hat bietet zwei M�glichkeiten, um Informationen �ber Sicherheitsupdates zu erhalten:
Gelistet und erh�ltlich zum Download von Red Hat Network
Gelistet und ungelinkt auf der Red Hat Errata-Webseite
Hinweis
Mit der Red Hat Enterprise Linux Produktlinie beginnend, k�nnen aktualisierte Pakete nur von Red Hat Network heruntergeladen werden. Obwohl die Red Hat Errata Website aktualisierte Informationen enth�lt, so enth�lt diese nicht die eigentlichen Download-Pakete.
3.1.1. Red Hat Network benutzen
Red Hat Network erm�glicht Ihnen, den gr��ten Teil des Update-Prozesses zu automatisieren. Es stellt fest, welche RPM-Pakete f�r Ihr System ben�tigt werden, l�dt diese von einer sicheren Quelle herunter, pr�ft die RPM-Signatur, um festzustellen, ob diese nicht unbefugt ge�ndert wurden, und aktualisiert diese. Die Paketinstallation kann sofort erfolgen oder auf einen bestimmten Zeitpunkt verlegt werden.
Red Hat Network ben�tigt von Ihnen ein Systemprofil von jeder Maschine, die aktualisiert werden soll. Dieses Systemprofil enth�lt Hardware- und Softwareinformationen �ber das System. Diese Informationen werden vertraulich behandelt und werden an niemanden weitergegeben. Sie werden nur ben�tigt, um festzustellen, welche Errata-Updates auf Ihr System angewendet werden k�nnen. Ohne diese kann Red Hat Network nicht feststellen, ob Ihr System aktualisiert werden muss. Wenn ein Sicherheits-Errata (oder ein anderes Errata) herausgegeben wird, schickt Red Hat Network Ihnen eine E-Mail mit einer Beschreibung der Errata, sowie eine Liste mit Informationen, welche Teile Ihres Systems betroffen sind. Um das Update anzuwenden, k�nnen Sie den Red Hat Update Agent verwenden oder ein Update �ber die Webseite https://rhn.redhat.com planen.
Tipp
Red Hat Enterprise Linux enth�lt das Red Hat Network Alert Notification Tool, ein Symbol im Panel, das sichtlich Hinweise f�r verf�gbare Updates f�r ein Red Hat Enterprise Linux-System anzeigt. Weitere Informationen �ber das Applet finden Sie unter folgender URL: https://rhn.redhat.com/help/basic/applet.html
Bevor Sie jegliche Sicherheits-Errata installieren, stellen Sie sicher, dass Sie alle Anweisungen im Errata-Report gelesen und diese genau befolgt haben. Allgemeine Anweisungen �ber das Anwenden von �nderungen durch ein Errata-Update finden Sie unter Abschnitt 3.1.5.
3.1.2. Verwenden der Red Hat Errata-Webseite
Wenn Sicherheits-Errata-Berichte ver�ffentlicht werden, werden diese auf der Red Hat Errata-Webseite unter https://www.redhat.com/apps/support/errata/ bekanntgegeben. Sie k�nnen auf dieser Seite das Produkt und die Version f�r Ihr System ausw�hlen und dann Security oben auf der Seite ausw�hlen, um nur Red Hat Enterprise Linux Sicherheitsinformationen anzuzeigen. Beschreibt die Zusammenfassung in einer dieser Informationen ein Paket, das auf Ihrem System verwendet wird, klicken Sie auf die Zusammenfassung f�r weitere Details.
Die Detail-Seite beschreibt das Sicherheitsproblem und gibt alle n�tigen Anweisungen, die zus�tzlich zur Aktualisierung des Pakets befolgt werden m�ssen, um das Sicherheitsloch zu stopfen.
Um das/die aktualisierte(n) Paket(e) herunterzuladen, klicken Sie auf den Paketnamen und speichern Sie diese(s) auf der Festplatte. Es wird dringend empfohlen, dass Sie ein neues Verzeichnis, wie z.B. /tmp/updates erstellen und dort die heruntergeladenen Pakete speichern.
3.1.3. Signierte Pakete verifizieren
Alle Red Hat Enterprise Linux Pakete sind signiert mit dem Red Hat, Inc. GPG-Schl�ssel. GPG steht f�r GNU Privacy Guard oder GnuPG, einem freien Softwarepaket, welches dazu dient, die Authentizit�t von Dateien zu gew�hrleisten. Zum Beispiel: Ein Private Key (Secret Key) von Red Hat h�lt das Paket verschlossen, wohingegen der Public Key das Paket verifiziert und freischaltet. Im Falle, dass der Public Key, vertrieben durch Red Hat nicht mit dem Private Key im Laufe der RPM-Verifizierung �bereinstimmt, so kann dies bedeuten, dass das Paket in irgendeiner Form ge�ndert worden ist und dies ein Sicherheitsrisiko darstellen k�nnte.
Die RPM-Utility in Red Hat Enterprise Linux versucht automatisch die GPG Signatur einer RPM vor der Installation zu verifizieren. Wenn der Red Hat GPG-Schl�ssel noch nicht installiert worden ist, dann sollten Sie diesen jetzt von einer sicheren, statischen Quelle wie einer Red Hat Enterprise Linux CD-ROM installieren.
Unter der Annahme, das die CD-ROM in /mnt/cdrom gemountet ist, k�nnen Sie den folgenden Befehl zum Importieren des Schl�ssels in den Keyring oder Schl�sselring verwenden (eine Datenbank bestehend aus zuverl�ssigen Schl�sseln auf dem System).
rpm --import /mnt/cdrom/RPM-GPG-KEY
Um eine Liste aller installierten Schl�ssel f�r die RPM-Verifikation anzuzeigen, f�hren Sie folgenden Befehl aus:
rpm -qa gpg-pubkey*
F�r den Red Hat Schl�ssel enth�lt das Output folgendes:
gpg-pubkey-db42a60e-37ea5438
Um Details �ber einen bestimmten Schl�ssel anzuzeigen, verwenden Sie den Befehl rpm -qi, gefolgt vom Output des vorhergehenden Befehls:
rpm -qi gpg-pubkey-db42a60e-37ea5438
Es ist von gr��ter Wichtigkeit, dass Sie die Signatur der RPM-Dateien verifizieren, bevor Sie diese installieren. Dieser Schritt versichert Ihnen, dass die RPMs der Red Hat, Inc. Version nicht ver�ndert wurden. Um alle heruntergeladenen Pakete gleichzeitig zu pr�fen, geben Sie folgenden Befehl ein:
rpm -K /tmp/updates/*.rpm
F�r jedes einzelne Paket erhalten Sie im Falle einer erfolgreichen Verifikation den Output gpg OK. Falls dies nicht der Fall ist, so �berpr�fen Sie, ob Sie den richtigen Red Hat Public Key verwenden und verifizieren Sie die Quelle des Inhalts. Pakete, welche die GPG-Verifizierung nicht bestehen, sollten nicht installiert werden, da die M�glichkeit besteht, dass diese von einem Dritten ver�ndert wurden.
Nachdem der GPG-Schl�ssel verifiziert und alle Pakete im Zusammenhang mit dem Errata-Bericht heruntergeladen wurden, k�nnen Sie diese als Root angemeldet in einem Shell-Prompt installieren.
3.1.4. Signierte Pakete installieren
Die Installation f�r die meisten Pakete kann sicher durch den folgenden Befehl erfolgen (Kernel-Pakete ausgenommen):
rpm -Uvh /tmp/updates/*.rpm
F�r Kernel-Pakete sollten Sie den folgenden Befehl verwenden:
rpm -ivh /tmp/updates/<kernel-package>
Ersetzen Sie <kernel-package> im vorhergehenden Beispiel mit dem Namen der Kernel-RPM.
Nachdem die Maschine mithilfe des neuen Kernels sicher neu gestartet ist, kann der alte Kernel mit dem folgenden Befehl entfernt werden:
rpm -e <old-kernel-package>
Ersetzen Sie <old-kernel-package> im vorhergehenden Beispiel mit dem Namen der �lteren Kernel-RPM.
Hinweis
Es ist keine Voraussetzung, dass der alte Kernel entfernt wird. Der standardm��ige Boot Loader, GRUB, erlaubt die Installation mehrerer Kernel, welche dann von einem Men� w�hrend des Bootvorganges ausgew�hlt werden k�nnen.
Wichtig
Bevor Sie jegliche Sicherheits-Errata installieren, stellen Sie sicher, dass Sie alle Anweisungen im Errata-Report gelesen und diese genau befolgt haben. Allgemeine Anweisungen �ber das Anwenden von �nderungen durch ein Errata-Update finden Sie unter Abschnitt 3.1.5.
3.1.5. Anwenden der �nderungen
Nachdem Sie die Sicherheitserrata �ber das Red Hat Network oder die Red Hat Errata-Webseite heruntergeladen und installiert haben, ist es wichtig, die �ltere Software zu stoppen und die neue Software zu verwenden. Die Vorgehensweise h�ngt von der Art der Software ab, die aktualisiert wurde. Die folgende Liste stellt die allgemeinen Kategorien der Software dar und gibt Anweisungen f�r das Verwenden der aktualisierten Versionen nach einem Paket-Upgrade.
Hinweis
Im allgemeinen ist ein Neustart der beste Weg, sicherzustellen, dass die aktuellste Version eines Softwarepakets verwendet wird. Diese Option ist jedoch nicht immer f�r den Systemadministrator verf�gbar.
Applikaitonen
User-Space Applikationen sind alle Programme, die durch einen Systembenutzer ausgel�st werden. Gew�hnlicherweise werden diese Applikationen nur verwendet, wenn ein Benutzer, ein Skript oder ein automatisierter Task diese startet und nicht lange ausf�hrt.
Wird solch eine Applikation aktualisiert, stoppen Sie alle Instanzen dieser Applikation auf dem System und starten Sie das Programm neu, um die aktualisierte Version zu verwenden.
Kernel
Der Kernel ist die Kern-Softwarekomponente f�r das Red Hat Enterprise Linux Betriebssystem. Er verwaltet den Zugang zum Speicher, zum Prozessor und zu Peripherieger�ten, sowie plant alle Aufgaben.
Durch dessen zentrale Rolle kann der Kernel nur durch ein Herunterfahren des Computers neu gestartet werden. Daher kann eine aktualisierte Version des Kernels nicht verwendet werden, bis das System neu gestartet wird.
Shared-Bibliotheken
Shared-Bibliotheken sind Einheiten von Code, wie z.B. glibc, die von einer Reihe von Applikationen und Softwareprogrammen gemeinsam verwendet werden. Applikationen, die Shared-Bibliotheken verwenden, laden normalerweise den gemeinsamen Code beim Starten der Applikation, so dass alle Applikationen, die die aktualisierte Bibliothek verwenden, neu gestartet werden m�ssen.
Um festzustellen, welche laufenden Applikationen mit einer bestimmten Bibliothek verkn�pft sind, verwenden Sie den Befehl lsof wie im folgenden Beispiel:
lsof /usr/lib/libwrap.so*
Dieser Befehl gibt eine Liste aller laufenden Programme aus, die TCP Wrappers f�r die Host-Zugangskontrolle verwenden. Alle aufgelisteten Programme m�ssen angehalten und neu gestartet werden, wenn das tcp_wrappers-Paket aktualisiert wird.
SysV Services
SysV Services sind best�ndige Server-Programme, die w�hrend es Bootens gestartet werden. Beispiele f�r SysV Services sind sshd, vsftpd und xinetd.
Da sich diese Programme normalerweise im Speicher aufhalten, solange die Maschine gebootet wird, muss jeder aktualisierte SysV Service nach dem Upgrade des Pakets angehalten und neu gestartet werden. Dies kann �ber das Services Configuration Tool oder durch das Anmelden an einem Shell-Prompt und Eingeben des Befehls /sbin/service wie im folgenden Beispiel:
/sbin/service <service-name> restart
Ersetzen Sie im vorhergehenden Beispiel <service-name> mit dem Namen des Services, wie z.B. sshd.
Im Kapitel Zugangskontrolle f�r Services imRed Hat Enterprise Linux Handbuch zur System-Administration finden Sie weitere Informationen zum Services Configuration Tool.
xinetd Services
Services, die vom Super-Service xinetd verwaltet werden, werden nur ausgef�hrt, wenn eine aktive Verbindung vorliegt. Beispiele von Services, die von xinetd gesteuert werden, sind Telnet, IMAP und POP3.
Da neue Instanzen dieser Services durch xinetd jedesmal gestartet werden, wenn eine neue Anfrage empfangen wird, werden die Verbindungen, die nach einem Upgrade entstehen, durch die aktualisierte Software verwaltet. Bestehen jedoch aktive Verbindungen zur der Zeit, zu der von xinetd verwaltete Services aktualisiert werden, werden diese von der �lteren Version der Software verwaltet.
Um �ltere Instanzen eines bestimmten xinetd-Services zu stoppen, aktualisieren Sie das Paket f�r den Service und stoppen Sie dann alle Prozesse, die zur Zeit laufen. Pr�fen Sie zuerst welche Prozesse laufen mit dem Befehl ps und geben Sie dann den Befehl kill oder killall ein, um alle aktuellen Instanzen dieses Service zu stoppen.
Wenn zum Beispiel Sicherheits-Errata imap-Pakere herausgegeben werden, aktualisieren Sie die Pakete und geben Sie folgenden Befehl als root ein:
ps -aux | grep imap
Dieser Befehl gibt alle aktiven IMAP-Sitzungen aus. Individuelle Sitzungen k�nnen dann durch den folgenden Befehl beendet werden:
kill -9 <PID>
Ersetzen Sie im vorhergehenden Beispiel <PID> durch die Prozess-Identifikationsnummer (zu finden in der zweiten Spalte des ps Befehls) f�r eine IMAP-Sitzung.
Um alle aktiven IMAP-Sitzungen zu beenden, geben Sie den folgenden Befehl ein:
killall imapd
Im Kapitel TCP Wrappers und xinetd im Red Hat Enterprise Linux Referenzhandbuch finden Sie weitere Informationen zu xinetd.