Im Katalog suchen

Linux - Wegweiser für Netzwerker

Online-Version

Copyright © 2001 by O'Reilly Verlag GmbH & Co.KG

Bitte denken Sie daran: Sie dürfen zwar die Online-Version ausdrucken, aber diesen Druck nicht fotokopieren oder verkaufen. Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

Wünschen Sie mehr Informationen zu der gedruckten Version des Buches Linux - Wegweiser für Netzwerker oder wollen Sie es bestellen, dann klicken Sie bitte hier.


vorheriges Kapitel Inhaltsverzeichnis Stichwortverzeichnis nächstes Kapitel



Wie Sie Ihr System verwalten

In diesem Buch befassen wir uns hauptsächlich mit Installations- und Konfigurationsfragen. Administration bedeutet aber wesentlich mehr als das — nachdem Sie einen Dienst eingerichtet haben, müssen Sie ihn auch am Laufen halten. Den meisten Diensten müssen Sie nicht besonders viel Aufmerksamkeit schenken, während andere wie Mail und News die Erledigung von Routineaufgaben von Ihnen verlangen, um Ihr System auf dem neuesten Stand zu halten. Diese Aufgaben werden wir in späteren Kapiteln behandeln.

Das absolute Verwaltungsminimum ist die regelmäßige Prüfung der System- und der einzelnen Anwendungs-Logdateien auf Fehler und ungewöhnliche Ereignisse. In der Regel erledigen Sie dies durch das Schreiben einer Reihe administrativer Shell-Skripten, die periodisch von cron aus ausgeführt werden. Die Source-Distributionen einiger bedeutender Anwendungen wie inn oder C News enthalten solche Skripten. Sie müssen diese entsprechend Ihren Anforderungen und Bedürfnissen anpassen.

Die Ausgabe von jedem Ihrer cron-Jobs sollte per E-Mail an einen administrativen Account gesandt werden. Per Voreinstellung senden viele Anwendungen Fehlermeldungen, Benutzungsstatistiken oder Zusammenfassungen von Logdateien an den root-Account. Das macht nur Sinn, wenn Sie sich häufig als root einloggen; besser ist es dagegen, die Mail von root an Ihren persönlichen Account weiterzuleiten, indem Sie einen Mail-Alias einrichten, wie dies in den Kapiteln Kapitel 19 Inbetriebnahme von Exim, und Kapitel 18 Sendmail, beschrieben ist.

Gleichgültig, wie sorgfältig Sie Ihre Site konfiguriert haben, Murphys Gesetz garantiert, daß ein Problem auftauchen wird. Darum bedeutet die Verwaltung eines Systems auch, daß Sie für Beschwerden erreichbar sein müssen. Normalerweise erwarten die Leute, daß der Systemadministrator zumindest als root per E-Mail erreichbar ist, es existieren aber auch andere Adressen, die häufig verwendet werden, um eine Person zu erreichen, die für einen bestimmten Aspekt der Verwaltung zuständig ist. Beispielsweise werden Beschwerden über eine fehlerhafte Mail-Konfiguration üblicherweise an postmaster adressiert. Probleme mit dem News-System werden dem Benutzer, newsmaster oder usenet, mitgeteilt. Mail an hostmaster sollte an die Person weitergeleitet werden, die sich um die grundlegenden Netzwerkdienste und den DNS-Service kümmert (falls vorhanden).

Systemsicherheit

Ein anderer wichtiger Aspekt der Systemadministration in einer Netzwerkumgebung ist der Schutz Ihres Systems vor Eindringlingen. Nachlässig verwaltete Systeme bieten böswilligen Zeitgenossen viele Ziele. Die Angriffe reichen von geknackten Paßwörtern bis hin zum Ethernet-Snooping, und die verursachten Schäden reichen von gefälschten Mails über Datenverlust bis hin zur Verletzung Ihrer Privatsphäre. Wir werden auf die Probleme im einzelnen dort eingehen, wo die Probleme auch wirklich auftreten. Gleichzeitig stellen wir Ihnen einige gängige Schutzmaßnahmen vor.

Dieser Abschnitt beschreibt einige Beispiele und grundlegende Techniken zur System­sicherheit. Natürlich können die behandelten Aspekte nicht alle Sicherheitsthemen im Detail erläutern, denen Sie begegnen könnten; sie dienen bloß dazu, die möglichen Probleme zu verdeutlichen, die auftreten könnten. Aus diesem Grund ist das Lesen eines guten Buches über Systemsicherheit ein absolutes Muß, besonders bei einem vernetzten System.

Die Systemsicherheit beginnt mit guter Systemadministration. Das beinhaltet die Überprüfung von Eigentums- und Zugriffsrechten aller aktiven Dateien und Verzeichnisse, die Überwachung privilegierter Accounts etc. Dafür eignet sich zum Beispiel das Programm COPS. Es überprüft Ihr Dateisystem und gängige Systemdateien auf ungewöhnliche Rechte und andere Anomalien. Es ist auch klug, ein Paßwort-Paket zu verwenden, das verschiedene Vorschriften zur Wahl eines Benutzer-Paßwortes durchsetzt, um es so schwer wie möglich zu machen, es zu erraten. Das Shadow-Paßwort-Paket beispielsweise verlangt, daß ein Paßwort aus mindestens fünf Zeichen besteht und sowohl groß- als auch kleingeschriebene Buchstaben (und Sonderzeichen) enthält.

Wenn Sie einen Dienst über das Netzwerk verfügbar machen, sollten Sie sicherstellen, daß Sie ihm die “geringsten Privilegien” zuweisen, d.h. ihm keine Dinge erlauben, die für seine Arbeit nicht benötigt werden. Zum Beispiel sollten Programme die UID nur, wenn unbedingt nötig, auf root oder einen anderen privilegierten Account einstellen dürfen. Zum Beispiel sollten Programme nur dann unter root-Berechtigung laufen, wenn unbedingt nötig. Wenn ein Dienst nur für eine sehr eingeschränkte Anwendung eingesetzt werden soll, sollten Sie nicht zögern, ihn so restriktiv zu konfigurieren, wie es diese spezielle Anwendung zuläßt. Sollen andere beispielsweise direkt von Ihrer Maschine booten können, müssen Sie TFTP (Trivial File Transfer Protocol) installieren, damit Benutzer grundlegende Konfigurationsdateien aus Ihrem /boot-Verzeichnis herunterladen können. Wird es nun aber ohne Beschränkungen verwendet, erlaubt TFTP jedem Benutzer überall auf der Welt jede allgemein lesbare Datei von Ihrem System herunterzuladen. Sollte dies nicht in Ihrem Sinne sein, warum also nicht den TFTP-Dienst auf das /boot-Verzeichnis beschränken?1

Diesen Gedanken fortführend, könnten Sie verschiedene Dienste auch auf die Benutzer bestimmter Hosts, wie beispielsweise Ihres lokalen Netzwerks, einschränken. In Kapitel 12 Wichtige Netzwerk-Features, stellen wir tcpd vor, das dies für eine ganze Reihe von Netzwerkanwendungen tut. Weiterentwickelte Methoden der Zugriffsbeschränkung auf ausgewählte Hosts oder Dienste erforschen wir in Kapitel 9 TCP/IP-Firewall.

Ein weiterer wichtiger Punkt ist die Vermeidung “gefährlicher” Software. Natürlich ist jede Software potentiell gefährlich, weil sie fehlerhaft sein kann, was clevere Leute ausnutzen könnten, um sich Zugang zu Ihrem System zu verschaffen. Solche Dinge kommen vor, und es gibt einfach keinen vollständigen Schutz davor. Dieses Problem betrifft freie und kommerzielle Software gleichermaßen.2 Programme, die besondere Privilegien benötigen, sind naturgemäß gefährlicher als andere, weil jedes Schlupfloch dramatische Konsequenzen nach sich ziehen kann.3 Wenn Sie einen Netzwerkdienst anbieten, der ein setuid-Programm benötigt, müssen Sie doppelt vorsichtig sein, nichts in der Dokumentation zu übersehen, damit Sie nicht versehentlich ein Sicherheitsloch öffnen.

Einen weiteren Grund zur Sorge sollten Ihnen Programme bereiten, die Logins oder die Ausführung von Kommandos mit begrenzter Authentifizierung ermöglichen. Die Befehle rlogin, rsh und rexec sind zweifellos alle nützlich, bieten allerdings nur sehr eingeschränkte Authentifizierungsprüfungen der Gegenstellen an. Die Authentifizierung verläßt sich auf die Korrektheit des Hostnamens der Gegenstelle, der von einem Name-Server abgefragt wird (darauf gehen wir später näher ein) und abgefangen werden kann. Heutzutage sollte es die Standardvorgehensweise sein, alle r-Kommandos komplett aus dem System zu entfernen und durch ssh-Tools zu ersetzen. Diese benutzen ein wesentlich zuverlässigeres Authentifizierungsverfahren und stellen obendrein weitere Dienste zur Verfügung, wie z.B. Verschlüsselung und Komprimierung.

Sie können niemals ausschließen, daß Ihre Sicherheitsvorkehrungen nicht doch fehlschlagen, egal, wie sorgfältig Sie waren. Sie sollten daher sicherstellen, daß Sie Eindringlinge frühzeitig erkennen. Die Überprüfung der Logdateien ist ein guter Ansatzpunkt, aber der Eindringling ist möglicherweise so clever und entfernt alle Spuren. Andererseits existieren Tools wie tripwire, geschrieben von Gene Kim und Gene Spafford, mit denen Sie überprüfen können, ob bei lebenswichtigen Systemdateien der Inhalt oder die Zugriffsrechte verändert wurden. tripwire berechnet verschiedene Checksummen dieser Dateien und speichert sie in einer Datenbank. Bei nachfolgenden Läufen werden die Checksummen erneut berechnet und mit den gespeicherten verglichen, um Veränderungen zu erkennen.




1.

Wir kommen darauf noch in Kapitel 12 Wichtige Netzwerk-Features, zurück.

2.

Es gab tatsächlich kommerzielle Unix-Systeme (für die man übrigens sehr viel Geld hinlegen mußte), die mit einem setuid-root-Shell-Skript auf den Markt kamen. Das ermöglichte Anwendern, mit einem ganz einfachen Trick root-Privilegien zu ergattern.

3.

1988 brachte der RTM-Wurm einen großen Teil des Internet zum Teil dadurch zum Erliegen, daß er eine Lücke in einigen sendmail-Programmen ausnutzte. Diese Lücke wurde schon seit langem geschlossen.


vorheriges Kapitel Inhaltsverzeichnis Stichwortverzeichnis nächstes Kapitel


Weitere Informationen zum Linux - Wegweiser für Netzwerker

Weitere Online-Bücher & Probekapitel finden Sie in unserem Online Book Center


O'Reilly Home|O'Reilly-Partnerbuchhandlungen|Bestellinformationen
Kontakt|Über O'Reilly|Datenschutz

© 2001, O'Reilly Verlag