9 Sicherheit

Wenn das Netzwerk abgeschirmt ist und alle Benutzer vertrauenswürdig sind, dann braucht der Systemadministrator keine großen Anforderungen an Sicherheitsvorkehrungen des Netzes zu stellen. Die Sicherheit des Netzes beschränkt sich in diesem Fall auf die Stabilität und Verfügbarkeit der Dienste.
Mit der wachsenden Anzahl der Benutzer muß zusätzlich einem jedem seine Privatsphäre garantiert werden. Jeder Benutzer muß sich darauf verlassen können, daß seine persönlichen Daten ausreichend geschützt sind gegenüber dem unerlaubtem Zugriff seitens anderer Benutzer.
Durch den direkten Anschluß ans Internet wächst die Anzahl potentieller Angreifer ins Unermeßliche und somit müssen weitere Schutzmechanismen eingerichtet werden. Mit regelmäßigen Kontrollen des Systems und durch detailliertes Protokollieren der angebotenen Dienste müssen etwaige Angriffe erkannt und ggf. durch entsprechende Gegenmaßnahmen unterbunden werden.

Um dies zu gewährleisten, müssen u.a. folgende Punkte beachtet werden:

Die angewandte Sicherheitspolitik sollte vorher festgelegt werden und den gegebenen Umständen angepaßt sein. Sicherlich spielt hierbei auch der Preis eine nicht unwesentliche Rolle. Je höher die Sicherheitsvorstellungen werden, desto schwieriger wird die Bedienbarkeit und die Handhabung des Systems und dies dürfte wiederum Folgen für die Sicherheit haben.
Falls die Richtlinien zu streng werden, so werden die Schüler sicherlich die angebotenen Dienste nicht in Anspruch nehmen und zu einem der kostenlosen Dienstanbietern wie z.B. www.hotmail.com wechseln.

Beispiel:

Die Benutzer werden gezwungen regelmäßig ihr Paßwort zu ändern und es wird dabei überprüft, daß die letzten zehn Paßwörter nicht wieder verwendet werden. Dies führt sicherlich dazu, daß die Benutzer ihre Paßwörter aufschreiben und in der Schreibtischschublade aufbewahren. Ist dies dann noch wirklich ein Beitrag zur Erhöhung der Sicherheit ?

Weitere Informationen zum Thema Sicherheit sind zu finden unter:

 

9.1 Benutzerverwaltung

Auf das Anlegen eines neuen Benutzers wurde bereits in Kapitel 3.3.2 eingegangen. Falls der Administrator angepaßte Skripts verwenden möchte, kann dazu auch der Befehl useradd verwendet werden. Eine genaue Beschreibung des Befehls wird mit man useradd angezeigt und die Standardeinstellungen werden in /etc/default/useradd eingetragen.

Grundsätzlich sollte aber die Benutzerverwaltung immer mit YaST durchgeführt werden. Folgende Schritte werden dabei automatisch ausgeführt:

Eine weitere Möglichkeit besteht darin, eine WWW - Schnittstelle wie z.B. Webmin [41] (siehe Kapitel 9.9) zu benutzen.
Eine detaillierte Beschreibung der Benutzerverwaltung ist in [42] Kapitel 5 dargestellt.

Jeder Benutzer im System wird über eine eindeutige Zahl identifiziert, die sogenannte Benutzer - ID (UID, User - ID). Beim Anlegen von neuen Benutzern sollte auf eine logische Ordnung geachtet werden. Im LTC werden z.B. folgende Regeln eingehalten:

Systemaccounts (root, ftp, wwwrun, bin, named):

UID < 100

bevorzugte Accounts (Administratoren)

500 < UID < 1000

Lehrer

1000 < UID < 2000

Schüler

2000 < UID

Jeder Benutzer wird einer Gruppe zugeordnet, die ebenfalls einer eindeutigen Zahl, der Group - ID (GID) entspricht. Auch hier ist es sinnvoll eine Regel zu definieren:

privilegierte Gruppen

GID < 100

bevorzugte Accounts (Administratoren)

GID = 100

Lehrer

GID = 101

Schüler

GID = 102

Fachrichtungen (electro, mathe, info, ...)

200 < GID

Um zusätzliche Angaben über die Benutzer zu bekommen, sollte der Systemadministrator ein Formular für die gewünschten Informationen entwerfen. Um einen Rechnerzugang zu beantragen, muß der Benutzer dieses Formular ausgefüllt einreichen. Ebenso sollte der Benutzer eine Anleitung erhalten, wie die angebotenen Dienste zu nutzen sind. Eine Kopie der Sicherheitspolitik und den etwaigen Maßnahmen bei Nichtbeachtung wird ebenfalls ausgehändigt.

Beim Anlegen des Benutzers werden einige Konfigurationsdateien aus /etc/skel in dessen Heimatverzeichnis kopiert. Da wegen der Richtlinien im LTC der Benutzer keinen direkten Zugang zum System bekommt, ist das Verzeichnis /etc/skel geleert worden. Für jeden Benutzer wird eine Zeile in der Datei /etc/passwd eingetragen, und falls die Paßwortverschlüsselung aktiviert ist (bei SuSE standardmäßig aktiviert), wird ebenfalls ein Eintrag in der Datei /etc/shadow gemacht. Der Aufbau der beiden Dateien wird mit man 5 passwd und man 5 shadow beschrieben. (Mit man passwd wird hingegen die Syntax des Kommandos angezeigt). In der Datei /etc/shadow können weitere Regeln angegeben werden wie z.B. Dauer der Gültigkeit des Zugangs und Dauer bis zur nächsten Paßwortänderung.

 

9.2 Rechteverteilung - Dateirechte

Das Linux - Dateisystem verfügt über mehr Dateiattribute als beispielsweise das DOS - Dateisystem. So können für jede Datei sogenannte Berechtigungsbits gesetzt werden, mit welchen die Zugriffsrechte jeweils für den Besitzer der Datei, die Gruppenmitglieder und andere Benutzer gesteuert werden.

Mit ls -l werden die Dateiattribute der Dateien zusätzlich angezeigt, z.B.:

10 Attribute können jeder Datei zugeordnet werden. Sie werden in der ersten Spalte angezeigt. (siehe 9.2.2)

Die darauffolgende Zahl zeigt die Anzahl der Unterverzeichnisse in den Verzeichnissen an. Dabei ist darauf zu achten, daß immer die Verzeichnisse . (das aktuelle Verzeichnis) und .. (das übergeordnete Verzeichnis) mitgezählt werden.

Dann wird der Besitzer der Datei und die zugeordnete Gruppe dargestellt. Die Datei profile gehört in obigem Beispiel dem Benutzer claude. Auf diese Datei hat er uneingeschränkte Rechte und kann selbst die Dateiattribute verändern.

Eine umfassende Beschreibung über das Verhalten der Dateien ist in [42] Unix - Philosophie / Dateien dargestellt.

9.2.1 chown

Wie bereits erwähnt wird jede Datei einem Benutzer (dem Eigentümer) und einer Gruppe zugeordnet. Erstellt ein Benutzer eine neue Datei, so wird er als Eigentümer eingetragen.
Wem eine bestimmte Datei gehört, kann auch nachträglich geändert werden mit dem Befehl chown (change owner) Allerdings sind hierzu Superuser - Rechte notwendig.

chown [-R] <Neuer_Besitzer>.<Neue_Gruppe> Datei(en)

Die Option -R wird benutzt um rekursiv mehrere Dateien und Unterverzeichnisse dem neuen Benutzer zuzuordnen.
Weitere Informationen können mit man chown und chown --help angezeigt oder in [42] nachgelesen werden.

 

9.2.2 chmod

Die Dateiattribute werden auch als Dateimodus bezeichnet und können mit chmod (change mode) gesetzt werden. Es gibt 10 Attribute die in 4 Bereiche unterteilt sind.

Verzeichnis:
Benutzer:
Gruppe:
Andere:

gibt an ob es sich um eine Datei oder ein Verzeichnis handelt.
Rechte die der Benutzer (Besitzer der Datei) hat
Rechte die die übrigen Gruppenmitglieder haben
Rechte die alle anderen Benutzer des Systems haben

 

Es können jedem Bereich (Benutzer, Gruppe und Andere) getrennte Zugriffsrechte zugeordnet werden, wobei folgende Rechte beliebig kombiniert werden können.

r:
w:
x:

Leserecht
Schreibrecht
Ausführungsrecht

Das Verzeichnisattribut wird automatisch bei der Erstellung eines Verzeichnisses mit mkdir gesetzt. Die Zugriffsrechte (Modus) können entweder numerisch oder über Kürzel verändert werden.

  1. Numerische Methode:
    Bei der numerischen Methode wird einfach jedes gesetzte Bit als binäre Eins interpretiert und für jeden Bereich als dezimale Zahl angegeben.

    Beispiel:


  2. Methode über Kürzel
    Die Kürzel für die angegebenen Bereiche sind:

    u user
    g group
    o other
    a all (für alle 3)

    = Modus exakt setzen
    - Zugriff entfernen
    + Zugriff hinzufügen


    Beispiel:


Achtung:

Für das Wechseln in ein Verzeichnis reicht das Leserecht nicht aus, sondern es muß auch das Ausführungsrecht gesetzt werden.

Weitere Informationen können mit man chmod und chmod --help angezeigt oder in [42] nachgelesen werden.

 

9.2.3 umask

Bei der Einrichtung des FTP - Servers wurde bereits der Befehl umask verwendet. Mit ihm wird die Voreinstellung der Zugriffsmodi für neue Dateien festgelegt. Der Standardwert ist 022 und kann für jedes Verzeichnis durch Eingabe von umask angezeigt werden.
Wird dann eine neue Textdatei angelegt, für welche keine Ausführungsrechte notwendig sind, dann sind die maximal möglichen Zugriffsrechte 666: rw-rw-rw-. Alle Benutzer haben somit vollen Zugriff auf die Datei.
Durch "Unmaskieren" der Schreibrechte für Gruppenmitglieder und "Andere" mit umask 022 werden diese Attribute bei der Erstellung einer neuen Datei gelöscht:

666 - 022 = 644 : rw-r-r-

Bei der Erstellung eines Verzeichnisses (Ausführungsrechte notwendig) sind die maximalen Rechte 777: rwxrwxrwx.
Mit umask 022 wird das Verzeichnis folgende Attribute haben:

777 - 022 = 755 : rwxr-xr-x

Soll der Zugriff für "Andere" bei der Erstellung entfernt werden, so ist die Maske auf 027 zu setzen:

777 - 027 = 750 : rwxr-x---

 

9.2.4 Speicherplatzbeschränkungen - Quotas

Ein weiterer wichtiger Punkt, der oft unterschätzt wird, ist die Speicherplatzbeschränkung für die Benutzer. Jeder Benutzer könnte beabsichtigt oder auch unbeabsichtigt das gesamte System lahmlegen, indem er die Root - Partition des Servers vollschreibt. Es ist deshalb sinnvoll die Zugriffe für Benutzer auf getrennte Partitionen oder Festplatten zu beschränken.

Aber auch dann sollte man den Benutzern, die nicht so verantwortungsvoll mit Festplattenkapazitäten umgehen, eine Grenze setzen. Durch die Einführung von Quoten wird jedem Benutzer im System eine definierte Speicherkapazität zur Verfügung gestellt. Hiermit hat der Superuser eine Kontrolle über die Plattennutzung der einzelnen Benutzer.

Um die Speicherplatzbeschränkung nutzen zu können, muß das Paket quota aus der Serie ap installiert werden. Die Nutzung dieses Dienstes setzt einen geeigneten Kernel voraus. Die SuSE - Kernel sind standardmäßig mit der Quota - Unterstützung kompiliert worden.

Weitere Informationen zur Installation und Konfiguration sind zu finden unter:

 

9.2.5 Regel der minimalen Rechte

Es gibt zwei grundlegende Vorgehensweisen bei den Zugriffsrechten:

Welche dieser beiden Methoden angewendet wird, ist abhängig von der gewählten Sicherheitspolitik.
Die zweite Vorgehensweise kann vorteilhaft in Puncto Sicherheit eingesetzt werden, wenn es um das Setzen von minimalen Rechten für den Benutzer geht.

Bei der Konfiguration der verschiedenen Dienste (WWW, FTP, ...) wird immer der Benutzer angegeben unter welchem der Dienst ausgeführt wird. Im Falle eines Einbrechens in den Server, werden dem Eindringling dann genau die Rechte im System zur Verfügung stehen, die der angegebene Benutzer hat.
Nachdem oben die Zugriffsrechte für Dateien eingeführt wurden, ist es klar, daß der Eindringling kaum Schaden anrichten kann. Eine strukturierte Dateiordnung mit der Vorgehensweise der "minimalen Rechte" wird den Zugriff auf die Daten verhindern. Im schlimmsten Fall könnten Dateien nur gelesen werden.
Es ist also darauf zu achten, möglichst wenige Dienste mit den Rechten des Superusers zu versehen, denn dieser hat uneingeschränkte Rechte im System. Ebenso ist es sinnvoll nicht alle Dienste unter dem gleichen Benutzer laufen zu lassen, da sonst später nicht mehr unterschieden werden kann welcher Dienst auf welche Daten zugegriffen hat.
Für die tägliche Wartungsarbeit sollte sich der Systemadministrator ebenfalls einen Zugang mit beschränkten Rechten einrichten. Dadurch wird ein versehentliches Löschen von wichtigen Systemdateien verhindert.
Falls für administrative Arbeiten Root - Rechte erforderlich sind, kann mit su <user> schnell die Identität gewechselt werden. Wird su (substitute user) ohne Benutzerangabe gestartet, erwartet das System das Paßwort des Superusers.

 

9.3 Systemsicherheit in YaST

In YaST - Administration des Systems - Einstellungen zur Systemsicherheit sind einige sicherheitsrelevante Punkte aus der Konfigurationsdatei /etc/rc.config zusammengestellt.

 

9.4 Grenznetz

Der Sinn und die Einführung eines Grenznetzes ist in Kapitel 7.3.4 beschrieben worden.

 

9.5 INETD und TCP - WRAPPER

Mit dem Internet Super Server inetd werden die Ports des TCP/IP - Protokolls überwacht, und bei einer Anfrage an einen bestimmten Port wird der entsprechende Dienst gestartet. Dadurch werden solche Dienste, die eher selten zum Einsatz kommen, nur bei Bedarf gestartet und belasten den Rechner nicht permanent.
In der Datei /etc/inetd.conf wird angegeben welche Ports überwacht werden sollen und mit welchem Dienst der Rechner auf eine Anfrage reagieren soll. Aus Sicherheitsgründen sollten hier durch Voranstellen des Zeichens "#" alle nicht benötigten Dienste deaktiviert werden. Nach jeder Änderung muß die Konfigurationsdatei neu eingelesen werden mit: /sbin/init.d/inetd reload

Die meisten Dienste werden nicht direkt aufgerufen, sondern über den TCP - Wrapper: /usr/sbin/tcpd. Dieser bietet erweiterte Zugangskontrollen, welche in den beiden Dateien /etc/hosts.allow und /etc/hosts.deny definiert werden. Der Wrapper überprüft, vor dem Starten des Dienstes, ob der Zugriff berechtigt ist. Ist ein entsprechender Eintrag in der Datei hosts.allow vorhanden, wird der Zugriff erlaubt. Falls ein Eintrag in der Datei hosts.deny gefunden wird, so wird der Zugriff abgewiesen. Es ist aber zu beachten, daß zuerst die Datei hosts.allow überprüft wird und falls hier ein zutreffender Eintrag vorhanden ist wird die Datei hosts.deny nicht mehr überprüft.
Die genaue Syntax der beiden Dateien wird mit man 5 hosts_access angezeigt.

Wird von der Regel der minimalen Zugriffsrechte ausgegangen (siehe Kapitel 9.2.5), so wird zuerst in der Datei hosts.deny eine Sperrung aller Dienste eingetragen:

ALL: ALL bedeutet <alle Dienste>: <alle Clients>

Anschließend werden dann die erlaubten Dienste in der Datei hosts.allow eingetragen:

Beispiel:

Nach jeder Änderung kann mit tcpdchk eine Syntaxüberprüfung der beiden Dateien hosts.allow und hosts.deny vorgenommen werden. (siehe auch man tcpdchk)

Es gibt noch weitere Dienste, die diese beiden Dateien benutzen. So kann z.B. auch ein Zugriff auf den NIS - Server nur von bestimmten Rechnern zugelassen werden:

ypserv:
rpc.ypxfrd:
rpc.yppasswdd:
portmap:

158.64.19.
158.64.19.
158.64.19.
158.64.19.

Für diese Einträge wird tcpdchk allerdings eine Fehlermeldung anzeigen. Bei solchen Diensten, die ebenfalls diese Konfigurationsdateien benutzen können, sollten jeweils die entsprechenden Manuals eingesehen werden.

 


9.5.1 Benachrichtigung über Mail

Um eine Kontrolle über Zugriffe auf nicht erlaubte Ports zu bekommen, wird mit folgendem modifiziertem Eintrag (alles in einer Zeile) in der Datei hosts.deny:

ALL : ALL : spawn (/usr/sbin/safe_finger -l @%h | /usr/bin/mail -s "PROBE %d from %c" root@ltc.lu )&

bei jedem nicht autorisiertem Zugriff eine Mail an einen beliebigen Benutzer (hier: root@ltc.lu) gesendet.


9.6 Time - Server

Um z.B. Konfigurationsproblemen auf den Grund zu gehen, ist man oft auf die Zuverlässigkeit der protokollierten Daten angewiesen. Besonders bei der Aufteilung der Dienste auf mehrere Rechner, ist eine synchrone Protokollierung und damit die gleiche Zeiteinstellung auf allen Rechnern extrem wichtig.
Diese Synchronisation kann in regelmäßigen Abständen manuell vorgenommen werden, oder durch automatische Anpassung von einem zentralen Rechner. Ein solcher Rechner, der die Zeit im Netz vorgibt, wird als Time - Server bezeichnet. Die anderen Rechner im Netz werden dann immer auf dessen Zeit eingestellt.
Durch den permanenten Anschluß ans Internet kann natürlich auch die Zeit im lokalen Netz an einen entfernten Rechner angepaßt werden. Dadurch entsteht die Möglichkeit, die eigenen Rechner auf die Atomuhr, ohne zusätzliche Hardware, einzustellen. Zu diesem Zweck bieten einige öffentliche Time - Server ihre Dienste an: http://www.eecis.udel.edu/~mills/ntp/servers.htm

 

9.6.1 Interne Synchronisation

Bei der Installation von SuSE - Linux wurden bereits zwei wichtige Einstellungen vorgenommen:

Dies kann auch nachträglich verändert werden in YaST - Administration des Systems - Zeitzone einstellen.

Es ist also darauf zu achten, daß auf dem Rechner zwei unterschiedliche Uhren laufen:

 

9.6.2 Einrichten eines Time - Servers

Um den Zeitdienst auf einem Linux - Rechner zur Verfügung zu stellen, kann einfach die bereits in /etc/inetd.conf eingetragene Zeile durch Entfernen des Zeichens "#" aktiviert werden.

time stream tcp nowait root internal
#time dgram udp wait root internal

Es können zwei Protokolle für diesen Dienst benutzt werden: TCP und UDP.

 

9.6.3 Einrichten der Linux - Clients

Mit folgendem Befehl wird die Systemzeit mit der Zeit des Time - Servers synchronisiert:

netdate [tcp|udp] <Rechner>

Das Standardprotokoll ist UDP. Wenn TCP verwendet werden soll, so muß dies mit angegeben werden. Anschließend sollte auch die lokale Hardwareuhr mit hwclock -(u)w aktualisiert werden, damit bei einem Neustart die Uhrzeit nicht einen völlig anderen Wert annimmt. (siehe man netdate)

Da nicht alle Rechneruhren gleichmäßig laufen, entsteht im Laufe der Zeit eine Zeitverschiebung (Drift) zwischen den einzelnen Rechnernuhren. Um nicht regelmäßig eine manuelle Synchronisation vornehmen zu müssen, kann ein weiterer Dienst eingerichtet werden, der die lokale Uhrzeit permanent an die des Time - Servers anpaßt. Dies wird mit dem sogenannten NTP - Protokoll erreicht (Net Time Protocol). Dazu muß das Paket xntp aus der Serie n mit YaST installiert werden.

Der Dienst ermittelt in regelmäßigen Abständen die Verschiebung der beiden Uhren, lokal und remote, und gleicht somit den Takt der eigenen Systemuhr an. Die Abweichung wird in der Datei /etc/ntp.drift abgespeichert. Ist die Differenz aus irgendeinem Grund zu groß, so kann keine Korrektur vorgenommen werden. Um beim Start die Differenz klein zu halten, sollte die Uhr zuerst manuell mit netdate abgeglichen werden.
Die Konfiguration des Dienstes wird in der Datei /etc/ntp.conf vorgenommen. Hier wird der gewünschte Time - Server eingetragen. Weitere Informationen zur Konfiguration sind unter /usr/doc/packages/xntp zu finden.

Um den Dienst bei jedem Neustart zu aktivieren, müssen in der Konfigurationsdatei mit YaST - Administration des Systems - Konfigurationsdatei verändern folgende Werte verändert werden:


9.6.4 Einrichten der Windows - Clients

Windows Rechner können nicht direkt auf den Linux Time - Server zugreifen. Es gibt aber auch NTP fähige Programme für Windows. Allerdings bietet sich an, Samba als Time - Server zu konfigurieren. Dies erfolgt durch folgenden Eintrag in der Konfigurationsdatei /etc/smb.conf:

time server = true

Nach einem Neustart des Samba - Dienstes wird auf den Windows Clients mit:

 

9.7 issue und issue.net

Beim Anmelden an den verschiedenen Konsolen wird jeweils ein Begrüßungstext angezeigt:


Welcome to SuSE Linux 6.0 (i386) - Kernel 2.0.36 (ttyp1).

beethoven login:

Dieser Begrüßungstext ist für die lokalen Konsolen in der Datei /etc/issue und für telnet Anmeldungen in der Datei /etc/issue.net gespeichert. Die Standardanzeige gibt einem potentiellen Angreifer bereitwillig Auskunft über das verwendete System und Kernel - Version.
Hier kann der Administrator einen angepaßten Willkommenstext hinterlegen.

 

9.8 login.defs

In der Datei /etc/login.defs kann der Superuser viele weitere Einstellungen zum Systemverhalten bei der Anmeldung vornehmen. Hier werden nur einige Beispiele angegeben, da die Datei sehr gut kommentiert ist. Eine genaue Beschreibung wird mit man login.defs angezeigt.

 

9.9 Webmin

Webmin [41] ist eine WWW - Schnittstelle die es ermöglicht viele administrative Arbeiten und Änderungen an Konfigurationsdateien von einem beliebigen Rechner im Netz mit einem Browser durchzuführen.

Seit der Version 0.72 ist es möglich, administrative Arbeiten zu delegieren. Es können weitere Webmin - Benutzer eingerichtet werden, denen genau definierte Rechte zugeordnet werden können. So kann z.B. ein administratives Konto angelegt werden mit welchem Informatiklehrer nur Schülerkonten verwalten können.

Das Programm (zur Zeit in der Version 0.73) kann unter http://www.webmin.com/webmin heruntergeladen werden. Die Datei wird in ein Verzeichnis z.B. /opt kopiert und mit folgendem Befehl entpackt:

tar xfvz webmin-0_73_tar.gz

Anschließend wird in dem neuen Verzeichnis webmin-0.73 das Installationsprogramm gestartet mit:

./setup.sh

Alle voreingestellten Werte können übernommen werden. Nach der Auswahl des Betriebssystems und der Eingabe eines Paßwortes ist das neue Programm betriebsbereit und unter http://beethoven.ltc.lu:10000 erreichbar.


Bild 9.1 Die WWW-Schnittstelle Webmin

Um den Zugriff auf das Programm einzuschränken, sollte unter "Webmin Configuration" - "IP Access Control" eine Einschränkung der IP - Adressen eingetragen werden.

Für weitere Informationen regelmäßig zu erhalten, sollte ein Eintrag in die Mailingliste von Webmin vorgenommen werden:
http://www.webmin.com/webmin/mailing.html


9.10 USV

Man kann die beste Hardware einsetzen und die komplexesten Konfigurationen vornehmen, aber bei einem Stromausfall hilft dies alles nichts. Um diesem unvorhersehbaren Ereignis zuvorzukommen, kommt man um den Einsatz einer USV (Unterbrechungsfreie StromVersorgung) nicht herum.
Die Aufgabe der USV ist es, bei kurzen Ausfällen oder Spannungsschwankungen, die Stromversorgung aufrechtzuerhalten sowie bei längeren Ausfällen die Server sicher herunterzufahren. Die Konfiguration unterscheidet sich sehr von der verwendeten Hardware, deshalb wird an dieser Stelle auf entsprechende Literatur verwiesen.

Im LTC wird eine USV von APC [44] verwendet. Seit Anfang September 99 steht auch für Linux die Software PowerChute plus v4.5 zum Download bereit:
http://www.apcc.com/products/management/pcp_linux.cfm

 

9.11 Datensicherung

Die regelmäßige Sicherung der Daten ist wichtig, um im Falle eines Festplattenausfalls, den endgültigen Verlust der Daten zu vermeiden. Linux bietet mehrere Möglichkeiten Backups zu erstellen.

Das Programm tar erinnert stark an die bekannten DOS - Komprimierungstools, allerdings ist die standardmäßige Ausgabe nicht eine Datei sondern ein Standard - Bandlaufwerk. Es können aber auch Dateiarchive erstellt werden mit der Option f. Dieses Programm verfügt nicht über ein Manual, jedoch über eine Infoseite, in der die Beschreibung zu finden ist. Um diese Art von Dokumentationen anzuzeigen, muß das Paket texinfo aus der Serie a installiert werden. Dann wird mit info tar die Beschreibung angezeigt. Eine Zusammenfassung der Optionen wird mit tar --help angezeigt.

Ein weiteres oft eingesetztes Programm ist cpio. Mit man cpio wird eine ausführliche Beschreibung angezeigt.

An dieser Stelle wird aber weder auf die einzelnen Programme exakt eingegangen, noch werden die verschiedenen Backup - Strategien vorgestellt. Dies ist ausführlich in [42], Kapitel 10 Datensicherung und Wiederherstellung, beschrieben. Es soll nur eine einfache Möglichkeit angegeben werden, Daten zu sichern und ggf. wiederherzustellen.

Bei der Installation von Linux mit YaST werden jeweils Pakete installiert. Die Auswahl der installierten Pakete kann bei der Paketauswahl auf eine Diskette gespeichert werden, so daß bei einer erneuten Installation genau die gleichen Pakete wieder installiert werden können, ohne die gesamte Auswahl zu wiederholen. Es macht daher wenig Sinn alle Daten der Festplatte zu sichern. Allerdings kann hiermit nur die Grundinstallation, ohne die abgeänderten Konfigurationsdateien und ohne die Daten der Benutzer, wiederhergestellt werden.

Mit YaST - Administration des Systems - Backups erstellen, wird genau dieses Problem berücksichtigt. Es werden nur diejenigen Dateien gesichert, welche von den, im Paket enthaltenen, Originaldaten abweichen. Außerdem bietet das Programm auch an, nach Dateien auf der Festplatte zu suchen die nicht mit YaST installiert oder erstellt wurden.

Beim Start des Menüpunktes kommt zuerst eine Auswahl an Dateisystemen und Verzeichnissen, die NICHT gesichert werden sollen. So kann der Administrator verhindern, daß per NFS eingebundene Verzeichnisse oder CD - Laufwerke gesichert werden.

Anschließend wird mit dem Programm tar eine Archivierung in eine Datei vorgenommen, dessen Name frei gewählt werden kann, jedoch mit kompletten Pfad angegeben werden muß. Die übliche Endung solcher Dateien ist .tar oder bei zusätzlich komprimierten Dateien .tar.gz oder .tgz.

Um die Sicherung bei einem Festplattenausfall nicht zu verlieren, empfiehlt es sich die erstellte Datei auf einen anderen Rechner zu übertragen (FTP, NFS) oder auf einem Bandlaufwerk zu speichern.

Wenn alle Daten wieder hergestellt werden müssen, wird zuerst eine Neuinstallation vorgenommen wie in Kapitel 3 beschrieben. Es wird aber nicht die vorgegebene Minimalinstallation geladen, sondern die zuvor auf der Diskette gespeicherte Paketauswahl.

Jetzt müssen nur die von der Originalinstallation abweichenden Konfigurationsdateien und persönliche Dateien wiederhergestellt werden. Dazu muß die Datensicherung entweder per NFS eingebunden werden oder per FTP wieder auf den lokalen Rechner übertragen werden. Mit folgendem Befehl werden dann alle Daten wieder zurückgewonnen:

tar xfvz <Archivname> -C /

Verwendete Optionen:

x:
f:
v:
z:
-C:

auspacken
Dateiarchiv (sonst Bandlaufwerk)
Anzeige der bearbeiteten Daten
komprimiertes Archiv
Angabe des Zielverzeichnisses

Somit wurde das komplette System wiederhergestellt.


9.12 Überwachen des Systems

Der Superuser sollte sich regelmäßig die Log - Daten ansehen, um besondere Vorkommnisse am System zu erkennen. Die meisten Programme, welche Protokolldateien führen, speichern ihre Daten im Verzeichnis /var/log ab. Allerdings ist dies, bei den schnell anwachsenden Dateilängen, eine mühselige Aufgabe. Um dem Administrator die Arbeit zu erleichtern stehen deshalb diverse Programme zur Verfügung.

Die System - Log - Dateien werden vom Dämon syslogd erzeugt, welcher mit der Konfigurationsdatei /etc/syslog.conf an die gegebenen Umstände angepaßt werden kann. So kann z.B. festgelegt werden, daß bestimmte Einträge zusätzlich auf einem Terminal oder einem Drucker ausgegeben werden. Eine detaillierte Beschreibung wird mit man syslog.conf angezeigt.

Ein weiteres Paket logsurf aus der Serie ap installiert das Programm logsurfer mit welchen auch Aktionen (Mail versenden, Skript ausführen, ...) auf genau festgelegte Ereignisse definiert werden können. Das Verhalten wird in der Datei /etc/logsurfer.conf festgelegt, mögliche Parameter werden mit man logsurfer.conf erklärt.

Zur Auswertung der Log - Dateien des Apache - Servers empfiehlt sich der Einsatz von webalizer. Dieses Programm erzeugt eine graphische Darstellung der Zugriffe auf den Server, die dann mit einem beliebigen Browser angezeigt werden können. Das Paket webalizer aus der Serie n kann zu jedem Zeitpunkt installiert werden. Das Programm ist in /usr/doc/packages/webalizer/README ausführlich beschrieben und die Konfiguration wird in /etc/webalizer.conf vorgenommen. Falls die Standardpfade in der Konfigurationsdatei noch richtig sind, wird mit webalizer die erste Statistik erstellt und kann dann unter folgender Adresse abgerufen werden:

http://beethoven.ltc.lu/webalizer/

Zur Ansicht der Netzwerkauslastung kann das Programm iptraf aus der Serie n eingesetzt werden, allerdings kann dieses Programm nur an der Konsole ausgeführt werden. Dagegen bietet ntop zusätzlich eine WWW - Schnittstelle, so daß von einem beliebigen Rechner die Netzwerkauslastung beobachtet werden kann. Beim Start an der Konsole wird mit der Taste "h" eine kleine Hilfeseite angezeigt. Um den Zugriff übers Netz zu starten, muß ein Port (Standard=3000) reserviert werden. Die Startparameter können in der Konfigurationsdatei /etc/rc.config oder mit YaST verändert werden. Mit /sbin/init.d/ntop {start|stop|status} wird das Programm als Dämon im Hintergrund gestartet. Weitere Informationen sind in /usr/doc/packages/ntop/README und ./FAQ sowie man ntop zu finden. Da die angezeigten Daten doch recht vertraulich sein können, wird das Programm mit einer Benutzerabfrage gestartet. Im Heimatverzeichnis des Superusers werden die Benutzer in der Datei .ntop eingetragen.

Hier noch einige Programme die Informationen über das System ausgeben:

top:
w:
free:
ps:

die aktuelle Auslastung des Systems mit allen Prozessen
alle angemeldeten Benutzer und deren Systemnutzung
Festplattenauslastung
Auskunft über laufende Prozesse

Weitere Informationen jeweils im entsprechen Manual.

 

Home
1999 Claude Leniger claude.leniger@ltc.lu