Red Hat und Fedora Core Linux Systemupdates


1. Einleitung

Damit Ihr Linux System gegen Angreifer möglichst gut abgesichert ist, sollten Sie unbedingt die jeweils aktuellen Sicherheits-Updates einspielen.

Die aktuellen Sicherheitsupdates werden auf diversen Mailing Listen angekündigt:

Die aktuellen Updates für Fedora Core und RedHat (7.2, 7.3, 8.0, 9) finden Sie auch am Zentralen Informatikdienst der Universität Innsbruck unter der Adresse ftp://zid-luxinst.uibk.ac.at/dist/updates/.

2. yum

2.1. Installation

Für (semi)automatische Updates empfehlen wir das Programm yum („yellowdog updater, modified“).

Vor der Installation von yum stellen Sie sicher, dass das Paket rpm-python installiert ist. Falls Sie Red Hat Linux 8.0 einsetzen, benötigen Sie das Paket rpm404-python.

Für Red Hat Linux 7.x und 8.0 Systeme finden Sie die Pakete unter ftp://zid-luxinst.uibk.ac.at/mirror/yum/1.0/. Die Pakete enden auf „_73.noarch.rpm“ für Red Hat 7.x beziehungsweise „_80.noarch.rpm“ für Red Hat Linux 8.0.

Für Red Hat Linux 9 erhalten Sie die Pakete unter ftp://zid-luxinst.uibk.ac.at/mirror/yum/2.0/.

yum ist in Fedora Core bereits enthalten.

2.2. Konfiguration

Für RedHat 7.x, 8.0 und 9 wird das Paket standardmäßig so installiert, dass ein automatisches nächtliches Update erfolgt. Wir empfehlen, dies zu deaktivieren und die Updates manuell vorzunehmen. Dazu müssen Sie den entsprechenden Dienst deaktivieren:

/sbin/service yum stop
/sbin/chkconfig yum off

 Dieser Schritt bei Fedora Core. Dort ist das yum nightly update standardmäßig deaktiviert.

Nun müssen Sie yum noch mitteilen, wo sich die RPM Pakete der Distribution sowie die Updates befinden. Editieren Sie dazu die Datei /etc/yum.conf und ersetzen die Abschnitte „[base]“ und „[updates]“ durch Folgendes:

RedHat 7.x, 8.0, 9

[base]
name=Red Hat Linux $releasever base
baseurl=ftp://zid-luxinst.uibk.ac.at/dist/orig/$releasever/all/$basearch

[updates]
name=Red Hat Linux $releasever updates
baseurl=ftp://zid-luxinst.uibk.ac.at/dist/yum/updates/redhat/$releasever/$basearch

Außerdem sollten Sie in einen Abschnitt zum Update von yum selbst einfügen:

[yum]
name=yum updates (uibk)
baseurl=ftp://zid-luxinst.uibk.ac.at/dist/yum/updates/yum/$releasever

Fedora Core

[base]
name=Red Hat Linux $releasever base
baseurl=ftp://zid-luxinst.uibk.ac.at/dist/fedora/$releasever/$basearch/all

[updates]
name=Red Hat Linux $releasever updates
baseurl=ftp://zid-luxinst.uibk.ac.at/dist/yum/updates/fedora/$releasever/$basearch

 Wenn Sie die Firewall entsprechend unseren Vorschlägen erstellt haben (Verbindungsaufbauten anderer werden nicht zugelassen), müssen Sie das FTP „connection tracking“ Modul für iptables aktivieren. Fügen Sie dazu der Datei /etc/rc.d/rc.local am Ende folgende Zeile hinzu:

/sbin/modprobe ip_conntrack_ftp

yum sollte nun fertig konfiguriert sein. Testen Sie dies nun, indem Sie folgenden Befehl ausführen:

yum list updates

Nachdem yum die Header der installierten RPM Pakete heruntergeladen hat (was nur beim ersten Aufruf in diesem Umfang passiert), werden die für Ihr System verfügbaren Updates aufgelistet.

Wir empfehlen, noch einen cron Job zu erstellen, der einmal pro Nacht auf verfügbare Updates prüft. Erstellen Sie dazu die Datei /etc/cron.daily/yum-checkupdates mit folgendem Inhalt:

#!/bin/sh

yum -d -2 -R 20 clean
yum -d -2 -R 20 list updates | \
grep -vi "No Packages Available"

Setzen Sie diese Datei nun noch auf ausführbar:

chmod 755 /etc/cron.daily/yum-checkupdates

Vorausgesetzt, dass Sie die Mailweiterleitung für root richtig konfiguriert haben, sollten Sie nun einmal pro Nacht ein Mail erhalten, das die verfügbaren Updates auflistet.

2.3. Verfügbare yum Sektionen

yum kann an der Universität Innsbruck mit der beschriebenen Konfiguration zur Zeit für folgende Systeme verwendet werden:

  • Red Hat Linux 7.3
  • Red Hat Linux 8.0

  • Red Hat Linux 9

  • Fedora Core 1

  • Fedora Core 2

  • Fedora Core 3

2.4. Verwendungsbeispiele

Eine Liste der verfügbaren Updates erhalten Sie wie folgt:

yum list updates

Die Ausgabe sieht wie in folgendem Beispiel aus:

Name                                     Arch       Version
----------------------------------------------------------------------
kernel                                   i686       2.4.20-20.7
kernel-smp                               i686       2.4.20-20.7
kernel-source                            i386       2.4.20-20.7
postfix                                  i386       1.1.12-0.7
unzip                                    i386       5.50-31

Um alle Pakete des Systems auf den neuesten Stand zu bringen, verwenden Sie:

yum update

Um einzelne Pakete auf den neuesten Stand zu bringen, geben Sie diese zusätzlich als Parameter an, zum Beispiel:

yum update kernel kernel-source

Wie bei den anderen Befehlen überprüft yum die Abhängigkeiten und löst diese automatisch auf.

Mit yum können Sie auch nicht installierte Pakete einer Distribution einfach installieren. Zum Beispiel:

yum install kernel-utils

Auch hier werden wieder die Abhängigkeiten überprüft. Sind zusätzliche Pakete notwendig, werden diese ebenfalls für die Installation vorgeschlagen.

 Achtung: Standardmäßig werden mit yum update die aktuellen Kernelpakete zusätzlich zu den bereits installierten Kernelpaketen installiert, d.h. die alten Kernelpakete werden nicht deinstalliert. Es wird empfohlen, zuerst den Rechner mit dem neuen Kernel zu booten, zu testen und dann gegebenenfalls die alten Kernelpakete zu deinstallieren.

3. Entfernen von autoupdate

Sollten Sie das zuvor von zuvor dokumentierte und empfohlene autoupdate installiert haben, können Sie dieses nun entfernen:

rpm -e autoupdate autoupdate-cfg-autoupdate autoupdate-cfg-redhat
rm -rf /var/spool/autoupdate/

4. finally()

yum ist ein mächtiges Werkzeug, mit dem noch eine Reihe anderer Aktionen möglich sind. Details erfahren Sie mit man yum und man yum.conf.