Kapitel 2 Ein vielseitiger Linux-Server............................................................................... 2 2.1 Motivation – oder: Warum ausgerechnet Linux? ........................................... 2 2.2 Aufgaben Ihres Netzwerkservers .....

................................................................ 5 2.3 Installation des Basissystems ............................................................................. 6 2.3.1 Installation von SUSE Linux ........................................................................10 2.3.2 siegfried ......................................................................................................19 2.4 Erste Schritte mit dem Webmin ..........................................................................24 2.4.1 Die Kategorie Webmin ................................................................................26 ..................................................................................28 2.4.2 Die Kategorie System 2.4.3 Die Kategorie Server ...................................................................................32 2.4.4 Die Kategorie Netzwerk ...............................................................................35 2.4.5 Die Kategorie Hardware ..............................................................................36 2.4.6 Die Kategorie Cluster ..................................................................................43 2.4.7 Die Kategorie Sonstiges ..............................................................................44 2.5 DHCP-Server ....................................................................................................45 .........................................................................................52 2.6 Samba als Fileserver 2.6.1 Linux als Server ..........................................................................................52 2.6.2 Windows als Client ......................................................................................59 2.6.3 Linux als Client ............................................................................................60 .....................................................................................63 2.6.4 Windows als Server 2.7 Drucken im Netzwerk .........................................................................................63 2.7.1 Drucker am Server einrichten ......................................................................64 2.7.2 PDF-Drucker einrichten ...............................................................................67 2.7.3 Netzwerkdrucker am Client einrichten .........................................................68 2.8 Mailserver ..........................................................................................................68 2.8.1 Mails mit Postfix verschicken .......................................................................69 ........................................................................70 2.8.2 Mails mit Postfix empfangen 2.8.3 Mails mit Postfix über einen Provider verschicken .......................................73 2.8.4 Postfächer aus dem Internet holen ..............................................................74 ......................................................77 2.8.5 Clients im LAN an den Server anbinden 2.9 Voicemails mit vbox ...........................................................................................82 2.9.1 Vbox mit ISDN .............................................................................................82 2.9.2 Vbox mit einem analogen Modem ...............................................................88 2.9.3 Alternativen .................................................................................................90 2.10 Groupwareserver .............................................................................................90 2.10.1 Vorbemerkungen .......................................................................................91 2.10.2 Installation .................................................................................................91 2.10.3 Konfiguration .............................................................................................92 2.10.4 PHProjekt benutzen ..................................................................................96 2.11 MLDonkey: Tauschbörsentalente .....................................................................97 2.11.1 Tauschbörsen ...........................................................................................98 2.11.2 MLDonkey einrichten .................................................................................98 .....................................................................................................101 2.12 Timeserver 2.12.1 Zeitservice aufsetzen ..............................................................................103 2.12.2 Zeitsynchronisierung beim Systemstart ...................................................104 2.12.3 Clients an den Zeitserver anbinden .........................................................104 2.12.4 Andere Zeitdienste als NTP .....................................................................105 2.13 Ein Backupkonzept für den Netzwerkserver ...................................................107 2.13.1 Wozu Backup? ........................................................................................107 ....................................................................................................108 2.13.2 Backup 2.13.3 Restore ...................................................................................................109 2.13.4 Disaster Recovery ...................................................................................109

Kapitel 2 Ein vielseitiger Linux-Server
Ihr LAN funktioniert, doch Sie wollen mehr Komfort für sich und die Benutzer? Sie werden in diesem Kapitel erfahren, wie leicht Sie einen Server einrichten können, der Ihnen das Leben sehr viel angenehmer macht.

2.1 Motivation – oder: Warum ausgerechnet Linux?
Administratoren – ob zu Hause oder im Beruf – richten ihren Benutzern im Netzwerk Dienste ein, die von diesen dann bei Bedarf genutzt werden können. Diese Dienste werden zentral auf einem oder mehreren Rechnern installiert. Für den Serverbetrieb gibt es viele Betriebssysteme. Seit Jahren macht dabei ein Betriebssystem durch hohe Zuwachsraten auf sich aufmerksam, da es stabil und gleichzeitig sehr kostengünstig ist: Linux. Linux ist ein freies Betriebssystem. Frei bedeutet hier in erster Linie quelloffen. Das heißt, neben den lauffähigen Programmen werden immer auch die dazugehörigen Quellcodes veröffentlicht. Eine große Anzahl von Programmierern auf der ganzen Welt arbeitet unentgeltlich an der Weiterentwicklung. Deshalb entwickelt sich Linux so rasant und ist gleichzeitig eines der sichersten Betriebssysteme: Der Quellcode der Programme wird von vielen Entwicklern geschrieben und von unzähligen Augen korrekturgelesen. Der Kern des Betriebssystems (Kernel) und die meisten Anwendungen stehen unter der GPL (GNU Public License). Das bedeutet, die Software darf frei verwendet und für beliebige Zwecke angepasst werden. Keine Innovation der letzten Zeit hat die IT-Branche annähernd so durcheinander gewirbelt wie das Betriebssystem mit dem kleinen Pinguin als Logo (vgl. Abbildung 14.1). Es darf mit Spannung erwartet werden, wie sich der Neuling in Zukunft gegen die vielen etablierten Betriebssysteme behaupten wird.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.1 Tux, der Linux-Pinguin Eine Lizenz für Windows 2003 Server inklusive zehn Client-Lizenzen kostet ab 1 400 e. Allerdings ist zu bedenken, dass Windows 2003 erst ein Jahr alt ist und nach den aktuellen Microsoft-Vorstellungen1 ab Juni 2008 nicht mehr voll unterstützt wird. Nach dem 30. Juni 2010 ist dann endgültig Schluss, das gilt auch für die großen Varianten von Windows 2003. Windows 2003 Server bietet Ihnen aus heutiger Sicht (März 2004) nur vier Jahre Investitionssicherheit. Es ergibt sich also ein Abschreibungsbetrag von 350 e jährlich. Hinzu kommen Kosten für Handbücher und Support. Sie können alle Basisfunktionen des Windows-2003-Servers auch mit einem Linux-Server abbilden. Ich möchte Ihnen daher hier eine Alternative zum teuren Windows 2003 Server vorstellen. Eine SUSE-Distribution kostet ca. 60 e, und zweimal pro Jahr erscheint eine neue Version mit aktualisiertem Softwarebestand. welches Linux? Ich habe mich entschieden, zum einen SUSE Linux in der Version 9.0 als Grundlage für das Buch zu verwenden, da die Distribution aus Nürnberg im deutschsprachigen Raum am weitesten verbreitet ist. Zum anderen befindet sich auf der Buch-DVD ein vollständiges und von mir um einige interessante Funktionalitäten erweitertes siegfried. Diese Distribution ist

eine von mir angepasste Version des Linux-auf-einer-CD-Projektes KNOPPIX. KNOPPIX wird unter anderem von Klaus Knopper entwickelt und gepflegt. Es basiert auf dem DebianWoody-Zweig und bietet Ihnen die Möglichkeit, in das Betriebssystem Linux hineinzuschnuppern, ohne eine Installation auf der Festplatte vornehmen zu müssen. Wenn siegfried Sie überzeugt hat, können Sie später das komplette System mit wenigen Schritten von der Buch-DVD auf Ihre Festplatte kopieren. Sollte Ihnen weder siegfried noch SUSE Linux zusagen, können Sie das Ziel eines leistungsfähigen Linux-Servers leicht auch mit einem anderen Linux-Derivat erreichen. Webmin Soweit möglich, habe ich für alle Arbeiten in diesem Kapitel den Webmin 1.130 (http://www.webmin.com) verwendet. Dieses Werkzeug gibt es für viele UNIXe. Es liefert für alle Betriebssysteme eine einheitliche Administrationsoberfläche, bei der unerheblich ist, welches UNIX oder Linux ich darüber administriere. Der Webmin ist für viele Linuxe verfügbar. Die Installationsdateien liegen auf der Buch-DVD im Verzeichnis /software/administration/linux/webmin. Eine Installationsanleitung für andere Linuxe als SUSE finden Sie im Internet auf der Homepage http://www.webmin.com. Der Webmin soll die anderen Konfigurationstools nicht ersetzen, sondern nur ergänzen. Selbstverständlich können Sie unter SUSE auch weiterhin den YaST2 nutzen oder die Konfigurationsdateien mit dem vi editieren. Kommandozeile und vi Mit dem Webmin haben Sie im Prinzip bereits alles, was Sie zu einer ordentlichen Administration des Servers brauchen. Wenn Sie nicht bereits ein gestandener UNIXer – oder Linuxer – sind, möchten Sie vielleicht jetzt oder später einmal wissen, was im Hintergrund passiert und wie Sie etwas tiefer in das System hinabsteigen. Dafür müssen Sie zwangsläufig auf der Kommandozeile und mit einem geeigneten Editor arbeiten. Das ist am Anfang sehr gewöhnungsbedürftig, lohnt sich aber. Ich kenne niemanden, der die Kommandozeile als Administrationswerkzeug gegen seine Maus zurücktauschen möchte. Eine Hilfe für den Anfang finden Sie in Kapitel 17, Linux-Werkzeuge. Der angeblich höhere Installations- und Konfigurationsaufwand wird in nicht selten ausgerechnet von Microsoft bezahlten Studien und Gutachten als Gegenargument zu Linux genannt. Er ist dank guter Hilfe von SUSE (insbesondere YaST2) und Programmen wie Webmin meiner Meinung nach nicht größer als bei jedem Windows-Server. Zusätzlich entfallen die massiven Sicherheitsprobleme von Windows. Die Liste der bekannten Sicherheitslücken wird fast täglich länger. Daher ist es erforderlich, mindestens einmal monatlich neue Servicepacks und Hotfixes einzuspielen. Es entstehen dadurch sehr hohe Administrationskosten, auf Lebensdauer des Produktes gesehen (total cost of ownership = TCO). Fazit Sie bekommen all diese Funktionen für den Preis einer Distribution von 60 e. Sollte Ihnen die Lösung nicht gefallen, können Sie immer noch eine 1.400 e teure Windows-2003-ServerLizenz kaufen, ohne dass Ihnen Ihr Chef vorwerfen könnte, Sie hätten Geld verschwendet.

Wenn Sie den Linux-Server einmal eingerichtet haben, werden Sie nur noch minimalen Administrationsaufwand haben. Sie sollten allerdings regelmäßig Sicherungen (Backups) der Daten durchführen.

2.2 Aufgaben Ihres Netzwerkservers
Sie wissen besser als ich, welche Aufgaben ein Netzwerkserver in Ihrem LAN erfüllen muss. Ich könnte mir zum Beispiel folgende nutzbringenden Anwendungen vorstellen: DHCP-Server: Der DHCP-Server (ISC) verteilt dynamische und möglicherweise auch statische IP-Adressen. Fileserver: Stellt Netzlaufwerke bereit, auf denen Daten abgelegt und dann zentral gesichert werden. Druckspooler: Jeder Benutzer im LAN sollte auf jedem Drucker drucken können. Möglicherweise gibt es auch zentrale Drucker, z. B. Etagendrucker. Das schließt auch das Erzeugen von PDF-Dokumenten ein. Mailserver: Die E-Mail-Konten der Mitarbeiter im LAN liegen auf dem Netzwerkserver. Bei Bedarf holt dieser Mails ab und verschickt sie in das Internet. Der Zugriff auf die Konten erfolgt mittels IMAP. Anrufbeantworter: Ihr PC ersetzt den herkömmlichen Anrufbeantworter und nimmt Nachrichten entgegen. Darüber hinaus kann er die Nachrichten noch vielseitig weiterverarbeiten, z. B. als Mail verschicken. Groupwareserver: Termine und Besprechungen planen und verwalten Sie mit EDVUnterstützung. Downloadserver: Mit einem Dienst auf dem Netzwerkserver verwenden Sie ihn als Downloadmanager im Internet. Timeservice: Ihr Server synchronisiert die Zeit im LAN. Sie brauchen sich nicht mehr um die Umstellung von Sommer- auf Winterzeit und umgekehrt zu kümmern, und alle PCUhren laufen synchron. Netzwerkmanagement: Applikationen wie Ntop vermitteln Ihnen einen Überblick über die Lage im LAN. Intranetserver: Bieten Sie Ihren Kollegen mittels HTTP-Server ein Intranetangebot (z. B. Firmen-News, Infos über neue Vorschriften, Fotos von der Weihnachtsfeier). DNS: Die Namensauflösung im LAN geschieht nicht mehr nur über eine lokale HOSTSDatei, sondern wird von einem Dynamic Name Service (DNS) übernommen. Domänencontroller: Benutzer- und Computerkonten werden nicht auf jedem PC einzeln angelegt, sondern zentral auf dem Netzwerkserver. Das ist sicherlich keine abgeschlossene Liste, sie könnte beliebig verlängert werden. Meiner Meinung nach lohnt ein zentraler Netzwerkserver erst richtig, wenn Sie mit ihm mehr als sieben PCs versorgen können, weil erst dann durch die Zentralisierung von Aufgaben Zeit und Sicherheit (Backup) gewonnen werden können. Ausdrücklich nicht auf diesen Server gehört eine Routingfunktion. Dieser Server sollte weder Webserver, Proxy, Router noch Firewall sein. Auf ihm liegen viele wichtige Daten, daher sollte er nicht direkt aus dem Internet erreichbar sein; das müsste er aber sein, wenn er Proxy, Router, Firewall oder Internet1 -Webserver wäre. Ein solcher Server ist angreifbar.

Ausgerechnet auf diesen Server auch Ihre Daten zu legen, wäre aus diesem Grund äußerst mutig. nicht Inhalt des Buches Ich werde Ihnen in diesem Abschnitt vorstellen, wie Sie die ersten sechs Punkte der obigen Aufzählung realisieren können. Auf Netzwerkmanagement, Webserver, DNS und Domänencontroller gehe ich nicht ein. Das Thema Netzwerkmanagement habe ich an geeigneter Stelle (vgl. Kapitel 10, Netzwerkadministration) ausreichend behandelt, und das Thema Intranetserver ist nicht Bestandteil dieses Buches. Ein DNS-Server ist technisch sehr interessant, allerdings lohnt sich sein Einsatz erst ab einer Anzahl von 20 Clients. Seine Administration ist aufwändig, und bei einem ersatzlosen Ausfall kann kein Rechner im LAN mehr vernünftig arbeiten. In kleineren Netzwerken hat sich die regelmäßige Verteilung und Pflege einer aktuellen HOSTS-Datei (vgl. Kapitel 5.6, Namensauflösung) für die Namensauflösung in IP-Adressen daher als praktischer erwiesen. Ähnliches gilt auch für den Domänencontroller. Mit Samba kann man die Funktionalität eines Domänencontrollers abbilden. Benutzer und Computer können zentral verwaltet werden. Das macht bei größeren Installationen durchaus Sinn – allerdings ebenfalls erst in Dimensionen, in denen auch der Einsatz eines DNS-Servers wirklich sinnvoll ist.

2.3 Installation des Basissystems
Bevor Sie mit der Installation loslegen, sollten Sie sich noch kurz Zeit für einige wenige Überlegungen nehmen. Bootlaufwerk Ihr Rechner sollte über ein bootfähiges Laufwerk verfügen. Sie benötigen für KNOPPIX und siegfried ein DVD-Laufwerk. Sollten Sie über entsprechenden Hardware nicht verfügen, müssen Sie mithilfe eines CD-Brenners das entprechende Image aus dem Verzeichnis /isoimages der Buch-DVD jeweils auf eine CD brennen. Bei nicht bootfähigen CD-Laufwerken finden Sie Hilfe auf der DVD im Verzeichnis KNOPPIX. Mit dem Programm mkfloppy.bat erzeugen Sie eine Bootdiskette. SUSE braucht ein CD- oder DVD-Laufwerk. Die Hilfe bei nicht bootfähigen CD-Laufwerken finden Sie auf der ersten CD in der Textdatei /boot/LIESMICH. Wenn die Installation von SUSE über das Netzwerk erfolgen soll, reicht ein Diskettenlaufwerk aus. Festplattenkapazität Im Wesentlichen muss genügend freier Festplattenplatz vorhanden sein. Ob dieser Platz bereits als Partition organisiert ist oder es sich um freien Speicherbereich am Ende des Datenträgers handelt, ist nicht wichtig. Wie viel Platz tatsächlich benötigt wird, hängt stark von der vorgesehenen Verwendung des Systems ab. Wichtig ist auch, welchen Bustyp Sie verwenden. IDE-Festplatten sind zwar kostengünstig, jedoch für den Dauerbetrieb ungeeignet. Bei einem Einsatz des Servers von deutlich mehr als acht Stunden am Tag sollten Sie auf SCSI-Festplatten setzen (vgl. http://www.tecchannel.de/hardware/964). Diese sind allerdings teurer, und Sie benötigen außerdem einen SCSI-Controller, der im Gegensatz zu einem IDE-Controller gewöhnlich nicht auf dem Motherboard vorhanden ist. Aufteilung und Verwendung der Festplatten

Sie werden die Festplatte für die Linux-Installation in Partitionen unterteilen müssen. Dieses ist ein entscheidender Schritt, für den Sie sich genügend Zeit nehmen sollten. Andere Entscheidungen – wie z. B. die Softwareauswahl – sind natürlich auch wichtig, doch kann man sie später leichter korrigieren als die Partitionierung. Ich möchte Ihnen zwei anspruchsvolle Möglichkeiten vorstellen. Es handelt sich einerseits um ein RAID1 und andererseits um den Logical Volume Manager (LVM). Beide kommen ursprünglich aus professionellen Anwendungsbereichen, sind aber mit Linux jetzt sogar in einige Privathaushalte eingezogen. Sowohl der Software-RAID als auch der LVM sind völlig optional. Ich beschreibe Sie nur, weil ich Ihnen den Weg zu einem möglichst ausfallsicheren und performanten Server aufzeigen möchte. RAID Sie sollten den vorhandenen Festplattenplatz möglichst effektiv nutzen. Mit einem RAID halten Sie alle Daten gespiegelt auf zwei oder mehreren Festplatten vor und haben so eine höhere Datensicherheit und eventuell auch eine bessere Performance. Ein Hardware-RAIDController übernimmt diese Aufgabe. Falls Sie einen solchen nicht besitzen, können Sie diese Vorteile ebenso gut auch mit einem Software-RAID nutzen. Sie binden dazu Partitionen zu Mirror Devices. Es existieren verschiedene RAID-Techniken. Am gebräuchlichsten sind RAID0, RAID1 und RAID5. RAID0 (Striping) verteilt die Datenblöcke (Chunks) auf zwei Festplatten. Dadurch hat man keinerlei Fehlertoleranz. RAID1 (Mirroring) bedeutet, dass alle Datenblöcke gespiegelt in mindestens zwei Partitionen vorgehalten werden. RAID5 ist vereinfacht dargestellt der Versuch, die Geschwindigkeitsvorteile von RAID0 und die Sicherheit von RAID1 zu vereinen. RAID5 benötigt mindestens drei Partitionen auf verschiedenen Festplatten und ist schwer zu administrieren. Ich beschränke mich in diesem Buch auf das RAID1. Den Zustand des RAIDs können Sie mit dem Webmin oder dem Kommando cat /proc/mdstat jederzeit überprüfen. Ein RAID ist erst ab zwei Festplatten sinnvoll. Spiegeln Sie zwei Partitionen auf einer Festplatte, haben Sie nicht nur keinen Gewinn, Sie verlieren sogar Performance, und wegen doppelter Schreibzugriffe verkürzt sich die Lebensdauer Ihrer Festplatte. Mit einer Festplatte können Sie aber trotzdem den Logical Volume Manager nutzen. LVM Sie haben außerdem die Möglichkeit, Ihre Partitionen oder Mirror Devices mit dem LVM flexibler zu verwalten. Der LVM wurde nach dem Vorbild des Logical Volume Managers von Hewlett Packard’s HP-UX entwickelt. Er stellt eine Volume Group (VG) als Speicherplatzpool zur Verfügung, aus der nach Belieben Logical Volumes (Lvols) geschnitten werden können. Die Logical Volumes ersetzen aus Sicht des Filesystems die Partition. Sie können diese logischen Bereiche im laufenden Betrieb vergrößern und verkleinern. Wenn Sie dann noch ein entsprechendes Dateisystem2 einsetzen, können Sie ohne großen Aufwand einen zu klein gewordenen Datenbereich anpassen. Aber auch und gerade dann gilt: Niemals ohne Backup arbeiten! Hauptspeicher und Prozessor Mir ist völlig klar, dass Sie sich nicht extra einen Computer für den Netzwerkserver anschaffen werden. Allerdings dürfen Prozessor und Hauptspeicher auch nicht zu klein gewählt werden. Ich empfehle für den Netzwerkserver einen Pentium mit mindestens 64 MByte Hauptspeicher. Sollten Sie auf den Luxus einer grafischen Konsole nicht verzichten wollen, sollten es mindestens 128 MByte sein. Ich persönlich nutze zu Hause noch einen Pentium mit 90 Mz und 32 MByte Hauptspeicher als Fileserver. Das Tower-Gehäuse dient

nebenbei als eine Sammelstelle für alte Festplatten. Bei der Installation von SUSE Linux auf diesem System waren enorme Anstrengungen nötig, da die Installation mit so wenig Hauptspeicher nur über Umwege zu schaffen ist. Und der Aufruf des YaST2-Moduls für das Softwaremanagement erinnert mich dann an meinen Wahlspruch: In der Ruhe liegt die Kraft! Anforderungen Es macht selbstverständlich einen Unterschied, ob Sie nur Ihre mp3-Musikdateien oder aber sensible Daten vieler Kollegen aus Ihrem Büro auf dem Server ablegen wollen. Abhängig von Aufgaben des Servers und Ihren persönlichen Ansprüchen an die Verfügbarkeit, Leistungsfähigkeit und Sicherheit müssen Sie sich mehr oder weniger Gedanken zu folgenden Fragen machen:
Wie hoch sind meine Ansprüche und die Ansprüche der anderen Nutzer an die Performance und die Kapazität eines Fileservers? Wo könnte ein Engpass entstehen? Lohnt sich eventuell eine Investition in SCSI-Festplatten und eine schnellere Netzwerkinfrastruktur oder reicht meine alte Hardware? Was passiert und wie gehe ich vor, wenn der Server aufgrund eines Hardwaredefekts ausfällt? Wie hoch darf die Ausfallzeit maximal sein und wer kümmert sich, wenn ich nicht da bin, um die Behebung des Fehlers? Reicht mir eine Wiederherstellung der Daten aus einem Backup bei einem Plattenausfall oder lohnt es sich, die Daten mittels teurem Hardwareraid oder günstigerem Softwareraid auf zwei Festplatten gespiegelt vorzuhalten? Ist der physikalische Standort des Servers gut gewählt?

entweder ... Sollten Sie einen sehr professionellen Server aufbauen wollen, dann empfehle ich Ihnen, SUSE Linux und nicht siegfried einzusetzen. Die Möglichkeiten, mit dem YaST2 schon bei der Installation tief in das Betriebssystem einzugreifen und die Rootpartition3 zu spiegeln oder den LVM zu verwenden, sind bei siegfried nicht gegeben. Sie erhalten dann ein von Grund auf selbst konzipiertes System. ... oder Dafür ist siegfried auf der Buch-DVD bereits von mir etwas vorkonfiguriert, und Sie brauchen sich um die Installation und primäre Konfiguration verschiedener Softwarepakete wie dem Webmin nicht zu kümmern. Software-RAID und Logical Volume Manager können Sie für den Datenbereich auch nutzen und bequem mit dem Webmin administrieren. Die Installation ist allerdings nicht so sauber wie die von SUSE Linux. Über den »Umweg« des ISO-Filesystems auf der CD sind einige Feinheiten, zum Beispiel auf der Ebene der Dateiberechtigungen, verloren gegangen. Für einen privaten Netzwerkserver zu Hause sollte das allerdings nicht von Belang sein. Partitionsnamen Die von Windows bekannten Laufwerksbuchstaben gibt es unter Linux nicht. Sämtliche Hardwarekomponenten sind über Gerätedateien ansprechbar. Diese geben an, über welchen Controller und welche Festplatte die einzelne Partition erreichbar ist. Die Namen der IDEFestplatten und Laufwerke beginnen mit hd, die der SCSI-Festplatten gewöhnlich mit sd. Danach folgt ein kleiner Buchstabe, der fortlaufend vergeben wird und bei IDE-Systemen den Master /dev/hda und den Slave /dev/hdb am primären IDE-Bus sowie den Master /dev/hdc

und den Slave /dev/hdd am sekundären IDE-Bus beschreibt. Am Schluss steht die Partitionsnummer, wobei für primäre Partitionen und die erweiterte Partition die 1 bis 4, für logische Laufwerke Zahlen ab 5 vergeben werden. Linux erkennt auch Windows-Partitionen. Es ist ohne großen Aufwand möglich, Festplatten mit Daten in einer NTFS- oder FAT16/32-formatierten Partition in einem Linux-System ohne neue Formatierung in das Dateisystem zu integrieren und die Daten so zu übernehmen. Der LILO (Linux Loader) kann auf Wunsch auch ein bereits installiertes Windows Betriebssystem starten. Möchten Sie einzelne bestehende Partitionen oder ganze Festplatten unversehrt in Ihr neues System übernehmen, seien Sie besonders achtsam! Machen Sie unter allen Umständen vorher eine Datensicherung! Mountpoint Sie entscheiden, wo neue oder bereits vorhandene Filesysteme ins Dateisystem eingehängt (gemountet) werden. Dabei gehen Sie immer von einer Wurzel (engl. root) im Dateisystem aus, die durch ein / symbolisiert wird. Swap Neben den einzelnen Filesystemen für das Betriebssystem oder für Ihre eigenen Daten müssen Sie außerdem ein Swap-Filesystem einrichten. Diesen Platz nutzt Linux, um bei Bedarf Speicherseiten auszulagern. Windows-Betriebssysteme bedienen sich dafür der Auslagerungsdatei. Aufteilung Eine Serverkonfiguration umfasst regelmäßig mehrere Partitionen. Die richtige Größe der Partitionen hängt von vielen Faktoren ab. Eine mögliche Partitionierung für eine 20 GByte große Festplatte zeigt die folgende Tabelle: Tabelle 2.1 Mögliche Verteilung der Filesysteme auf einer Festplatte
Mountpoint Größe /boot swap / /var /tmp /home 2 GByte 4 GByte 2 GByte Verwendung Filesystem zum Auslagern von Speicherseiten Betriebssystem und Programme Druckerwarteschlangen, Protokolldateien. E-Mails, VBoxNachrichten u. v. m. 20 MByte Kernel und wichtige Dateien für den Bootvorgang

0,5 GByte vorübergehend verwendete Dateien 11,5 GByte Heimatverzeichnisse der Benutzer

Hardwareunterstützung
Linux unterstützt einen riesigen Hardwarezoo. Es gibt Linux-Derivate für Ihren Handheld (http://familiar.handhelds.org/) genauso wie für Computer mit einem PA-RISC Prozessor von Hewlett Packard (http://www.parisc-linux.org/). Dennoch ist es nicht ganz auszuschließen, dass einige Hardwarekomponenten im Zusammenspiel mit Linux schlicht nicht funktionieren

oder nicht ihre volle Leistung entfalten. Dies kann insbesondere auf sehr neue Komponenten zutreffen. Achten Sie also bereits bei der Anschaffung darauf, ob die jeweilige Hardware unterstützt wird. Dabei können Testberichte aus Computerzeitschriften und die Suchmaschine im Internet eine wichtige Informationsquelle sein. SUSE SUSE bietet auf der Internetseite http://hardwaredb.suse.de eine Hardwaredatenbank an. Sollte Ihre Komponente dort nicht vertreten sein, könnte Sie trotzdem unterstützt werden. Eine Auflistung in der Hardwaredatenbank gibt lediglich einen Hinweis darauf, ob der Betrieb der Hardware mit SUSE Linux getestet wurde. KNOPPIX – und damit auch der Ableger siegfried – haben beim Booten von der CD/DVD ein völlig anderes Bootkonzept als SUSE Linux. KNOPPIX erkennt während der Bootphase die Hardware automatisch und holt die entsprechenden Treiber in den Speicher. Ist Ihr RAIDController nicht dabei, haben Sie Pech gehabt. Sie können durch Booten von der DVD jederzeit gefahrlos ausprobieren, ob und wie siegfried mit Ihrer Hardware zurechtkommt. Hilfe und Ansprechpartner findet man im Internet auf den Seiten http://www.linuxtag.org/forum und http://www.knoppix.net Stellen Sie aber bitte nur dann Fragen an die Foren, wenn KNOPPIX Ihre Hardware nicht erkennt. Sollte die Hardware nur mit siegfried ein Problem haben (und mit KNOPPIX nicht), ist natürlich das Buchforum diesem Buch auf der Seite http://www.galileo-computing.de der richtige Platz, um Probleme loszuwerden. Logbuch Es ist manchmal schwierig für Dritte zu erkennen, wie man selbst ein System eingerichtet hat. Im Idealfall läuft Ihr Netzwerkserver auch längere Zeit ohne Eingriffe von außen. Wenn Sie nach einiger Zeit dann einen Fehler beheben müssen, können Sie sich bestimmt nicht mehr genau daran erinnern, wie Sie das System usprünglich eingerichtet haben.
In jedem Fall sollten Sie die von Ihnen ausgeführten Konfigurationsschritte möglichst genau dokumentieren. So können Sie später beispielsweise die Partitionierung der Festplatten und die Konfiguration der einzelnen Hardwarekomponenten leicht nachvollziehen.

2.3.1 Installation von SUSE Linux
Jeder, der früher einmal ein SUSE-Linux-Betriebssystem mit dem YaST1 aufgespielt hat, wird mir zustimmen, dass die Installation mit dem YaST2 erheblich benutzerfreundlicher geworden ist. Durch Booten von der ersten CD oder DVD gelangen Sie in das Installationsmenü (vgl. Abbildung 14.2).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.2 Installationsmenü von SUSE Linux Sie benötigen den Menüpunkt Manual Installation nur dann, wenn Sie ein Kernelmodul (Treiber) für einen SCSI-Controller oder andere für die Installation benötigte Hardware laden müssen. Mit Auswahl von Installation hingegen geht es direkt los. Sprachauswahl Die erste Frage, mit der sich der YaST2 an Sie wendet, ist die Frage nach Ihrer Muttersprache. Diese wird dann zugleich die Sprache für die weitere Installation. Außerdem orientieren sich später viele grafische Anwendungen wie die Benutzeroberfläche KDE daran, was Sie hier auswählen. Tastatur und Maus Ihre Maus und ihre Tastatur werden im Normalfall erkannt. Es kann aber passieren, dass die Maus falsch oder gar nicht erkannt wird und manuell konfiguriert werden muss. Sie müssen dann vorerst mit (ÿ__) innerhalb des YaST2 navigieren. Sie erhalten eine Übersicht mit Vorschlägen des YaST2 betreffend der Konfiguration von Tastatur, Maus, Partitionierung, Software, Systemstart und Zeitzone. Im Prinzip könnten Sie die Vorschläge einfach akzeptieren und den YaST2 die restliche Arbeit machen lassen. Wenn Sie die Vorschläge optimieren möchten, dann sollten Sie auf Ändern klicken und ein Themenfeld wählen (vgl. Abbildung 14.3). Partitionierung Partitionieren heißt, den freien Festplattenplatz oder bereits bestehende Partitionen in einzelne Linux-Partitionen aufzuteilen oder umzuwandeln. Den gut gemeinten Vorschlag des YaST2 werden Sie Ihren eigenen Vorstellungen anpassen wollen. Sie dürfen sich dabei ruhig einmal verklicken, da zunächst noch keine Ihrer Änderungen auf die Festplatte geschrieben wird. Seien Sie trotzdem vorsichtig und nehmen Sie sich Zeit! Bei einem versehentlichen Überschreiben der Partitionstabelle einer Festplatte können Daten verloren gehen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.3 Konfiguration der Installation mit dem YaST2 Software-RAID und Logical Volume Manager An dieser Stelle können Sie ein Software RAID einrichten, wenn Sie über mehr als eine Festplatte in Ihrem Server verfügen und Ihre Daten nicht von der Gesundheit einer einzelnen Festplatte abhängig machen wollen. Das Einrichten von Mirror Devices und der Umgang mit dem LVM erfordert selbst bei Verwendung des YaST2 etwas Übung. Wenn Sie schon erfahren im Umgang mit Betriebssystemen sind, finden Sie sich bestimmt schnell zurecht. Ich verzichte bewusst auf eine detaillierte Beschreibung, da zum Paket von SUSE Professional 9.0 ein Handbuch gehört, in dem Sie auf den Seiten 25 ff. genauere Informationen finden. Nach der Installation bieten sowohl YaST2 als auch Webmin einen guten Überblick über die RAID-Konfiguration und das Volume-Management (vgl. Abschnitt 14.4.5, Die Kategorie Hardware). In diesem Buch möchte ich das Einrichten nur anhand von zwei Beispielen erläutern. Filesysteme Die verwendbaren Filesysteme sind überaus zahlreich. Unter anderem bietet YaST2 neben dem bewährten ext2-Filesystem auch neuere wie zum Beispiel xfs. Ich benutze meistens ext2 in der /boot-Partition und empfehle reiserfs oder xfs für alle anderen Partitionen. Auf den Seiten 560 ff. im SUSE-Linux-Administrationshandbuch sind die wichtigsten Dateisysteme unter Linux beschrieben. Auch wenn Sie jetzt vielleicht enttäuscht sind, kann ich Ihnen keinen Vorschlag für eine immer gute Partitionierung und ein besonders gutes Filesystem machen, da das stark von Ihrer Hardware und den Anforderungen an den Server abhängt. Allerdings steht außer Frage, dass Sie ein etwa 20 MByte großes /boot- und ein ausreichend großes Swap-Filesystem einrichten sollten. Früher hat man sich bei der Größe des SwapFilesystems in etwa an der doppelten Größe des Hauptspeichers orientiert. Das ist nicht immer richtig, reicht aber für unseren Netzwerkserver als Daumenwert aus. Mindestens sollten Sie dem System 512 MByte gönnen. Im Zweifel können Sie sich auch am Vorschlag des YaST2 orientieren. Mit vier GByte für die Rootpartition sind Sie in jedem Fall auf der sicheren Seite. Dann richten Sie mindestens ein großes Filesystem für Daten ein, wenn der Server als Dateiserver dienen soll. Hier können Sie das Dateisystem /home verwenden, das die Heimatverzeichnisse der Benutzer beinhaltet. Ich persönlich lege bei meinen Systemen Wert darauf, daß die Dateisysteme /var und /tmp wegen relativ häufiger Schreibzugriffe verschiedenster Prozesse des Betriebssystems ebenfalls existieren. Dabei sollten Sie an das

Druckerspooling denken, wenn Sie den Server zum Druckserver machen wollen. Die zu druckenden Dateien werden vom Druckerspooler im /var-Filesystem zwischengespeichert. Ein einzelner Druckauftrag kann leicht 100 MByte groß werden. Auch die PDF-Dateien des PDF-Druckers (Kapitel 14.7, Drucken im Netzwerk) landen wie die Nachrichten des Anrufbeantworters (Kapitel 14.9, Voicemails mit vbox) im /var-Filesystem. Beispiel für Einsteiger Sie haben eine IDE-Fesplatte (18 GByte groß) und möchten ein Filesystem für einen Fileserver zu Hause anlegen. Die Vorschläge des YaST2 möchten Sie weitestgehend übernehmen und nach Ihren eigenen Vorstellungen leicht ergänzen. Sie klicken auf Partitionierung • Den Vorschlag für die Partitionierung abändern. In der Übersicht wird Ihnen auffallen, dass der Vorschlag von SUSE auf eine separate /bootPartition verzichtet. Das ist meiner Meinung nach nicht ideal, aber auch nicht tragisch. Der gesamte Festplattenplatz ist mit einer Root- und einer Swappartition belegt. Wenn Sie also einzelne andere Partitionen anlegen möchten, dann müssen Sie zunächst diese Partition verkleinern. Dazu markieren Sie die durch den Mountpoint / erkennbare Partition und klicken auf Bearbeiten. Unter der Überschrift Größe tragen Sie im Feld Ende die Größe der Rootpartition ein, z. B. +4G für eine vier GByte große Rootpartition. Für weitere Partitionen sollten Sie nun zunächst eine erweiterte Partition anlegen. Das ist empfehlenswert, da die Anzahl der primären Partitionen auf einer Festplatte begrenzt ist. Dazu klicken Sie auf Anlegen • Erweiterte Partition und bestätigen danach zweimal mit OK. In der erweiterten Partition legen Sie nun die logischen Partitionen für das /var-Filesystem, das /tempFilesystem und das /home-Filesystem an. Das können Sie jeweils durch einen Klick auf Anlegen erreichen. Zunächst wählen Sie den Mountpoint /var aus der Liste und tragen die gewünschte Größe der Partition ein, z. B. +2G. Danach klicken Sie auf OK. Bei der /tmpPartition ist als Besonderheit zu beachten, dass Sie den Eintrag /tmp nicht aus der Liste der Mountpoints auswählen können. Sie müssen den Mountpoint von Hand eintragen. Als Größe können Sie z. B. +512MB eintragen. Die Partition für das /home-Filesystem erstellen Sie entsprechend. Wenn Sie den Eintrag für die Größe dieser als vorerst letzten angelegten Partition nicht verändern, wird automatisch der restliche noch freie Plattenplatz belegt. Beispiel für Profis Sie haben zwei SCSI-Festplatten (je 18 GByte groß) und möchten ein Filesystem für einen Fileserver in Ihrer Firma anlegen. Damit Sie keinen Ärger mit dem Chef bekommen, wollen Sie die Daten spiegeln. Und um für die stetig wachsende Datenmenge gewappnet zu sein, werden Sie den Logical Volume Manager einsetzen. Jeder der fünf Kollegen und Nutzer des Fileservers soll etwa zwei GByte Platz in seinem Heimatverzeichnis nutzen können. Partitionierung für RAID1 und LVM Sie klicken auf Partitionierung • Partitionen nach eigenen Vorstellungen anlegen • Weiter • Erweiterte Einstellungen • Manuelle Aufteilung (Partitionierung) • Weiter. Sie gelangen zu einer Übersicht Ihrer beiden Festplatten. Da Sie die beiden Festplatten komplett für Linux nutzen wollen, markieren Sie jeweils die Festplatten /dev/sda und /dev/sdb und benutzen dann die Schaltfläche Löschen, um sämtliche Einträge in den Partitionstabellen zu entfernen. Dann klicken Sie auf Anlegen • /dev/sda • OK • Primäre Partition • OK. Sie ändern das Dateisystem dieser Partition auf ext2 und tragen im Feld Ende +20M ein, um eine zwanzig MByte große Partition zu erstellen. Als Mountpoint wählen Sie /boot. Dann bestätigen Sie mit OK und legen nach diesem Vorbild eine Partition gleicher Größe auf der Festplatte /dev/sdb an. Sie entscheiden sich bei dieser Partition allerdings für Nicht formatieren und löschen

außerdem den Mountpoint. Auf diese Art haben Sie eine Backup-Partition für Ihre /bootPartition erstellt. Das Spiegeln der /boot-Partition ist genauso wie die Integration in den Logical Volume Manager mit dem YaST2 nicht möglich. Im nächsten Schritt partitionieren Sie den restlichen Plattenplatz, indem Sie zwei Partitionen für das Software-RAID anlegen. Dazu klicken Sie auf Anlegen • /dev/sda • OK • Primäre Partition • OK • Nicht formatieren. In der Auswahl Dateisystem-ID nehmen Sie 0xFD Linux RAID. Die gleiche Prozedur wiederholen Sie mit der anderen Festplatte. Alle notwendigen physikalischen Partitionen sind damit bereits angelegt. RAID1 Die Partitionen werden nun zu einem logischen Mirror Device verbunden. Dazu klicken Sie auf Raid • Raid anlegen • Raid 1 • Weiter und fügen die Partitionen /dev/sda2 und /dev/sdb2 zu Ihrem RAID-Verbund hinzu. In der nächsten Maske klicken Sie wieder Nicht formatieren. Andere Einstellungen sollten Sie nur ändern, wenn Sie genau wissen, was Sie tun. Mit OK bestätigen Sie und gelangen zurück zur Übersicht. Der Spiegel ist damit fertig. LVM Dieses Mirror Device soll nun dem LVM übergeben werden. Durch einen Klick auf LVM gelangen Sie in die Konfiguration des Logical Volume Managers. Sie geben Ihrer VolumeGruppe einen Namen und fügen zu ihr das Mirror Device /dev/md0 hinzu. Mit einem Klick auf Weiter • Hinzufügen erreichen Sie den Ort, an dem Sie zuerst ein Logical Volume für das Swap-Filesystem einrichten (vgl. Abbildung 14.4). Sie taufen das Logical Volume z. B. auf den Namen lvolswap, wählen als Dateisystem Swap aus und klicken auf OK. Das nächste Logical Volume ist für die Rootpartition – Sie ahnen es bereits: Der Name lautet lvolroot. Der Mountpoint des vier GByte großen Root-Filesystems ist /. Die vom YaST2 getroffene Vorauswahl für reiserfs als Filesystem ist in Ordnung. Auf gleiche Weise legen Sie dann noch die anderen Logical Volumes an (512 MByte für /var, 256 MByte für /tmp). Das Logical Volume für die Daten der Benutzer /home sollten Sie sich für den Schluss aufbewahren. Sie müssen dann nicht rechnen, sondern können einfach auf max klicken, um sämtlichen verbliebenen Platz in der Volume-Gruppe zu belegen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.4 Logical Volume Management mit dem Yast2

Bei Bedarf können Sie später weitere Festplatten einbauen, sie partitionieren, spiegeln und die Volume-Gruppe dann mit dem Webmin um ein weiteres Mirror Device erweitern (vgl. Kapitel 14.4.5, Die Kategorie Hardware). Software Sie können jetzt oder später die Software anpassen, die YaST2 installieren soll. Falls Sie es gleich jetzt erledigen wollen, wählen Sie bitte zusätzlich zur Standardsoftware über einen Klick auf Software • Standard-System • Erweiterte Auswahl... • Filter • Selektionen die folgenden Punkte aus:
einfacher Webserver Netzwerk/Server C/C++ Compiler und -Werkzeuge

Über die Suchfunktion Filter • Suche (vgl. Abbildung 14.5) finden Sie nun noch die folgenden zusätzlichen Pakete und wählen sie aus:
dhcp-client courier-imap mgetty mldonkey kmldonkey sox glame metamail

Auf die gleiche Art und Weise wählen Sie nun noch Pakete ab, die mit anderen in Konflikt stehen:
imap imap-lib Nach einem Klick auf Akzeptieren werden Sie vom YaST2 über eventuelle automatische Anpassungen der Softwareauswahl informiert.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.5 Paketsuche mit dem YaST2 Systemstart Beim Punkt Systemstart kann der Bootloader eingerichtet werden. Der YaST2 schlägt im Allgemeinen vor, den Bootloader GRUB in den Master Boot Record (MBR) der ersten Festplatte zu schreiben. Der GRUB ist im Vergleich zum LILO (Linux Loader) mächtiger und bietet beim Booten noch mehr Eingriffsmöglichkeiten. Nur wenn Sie – aus welchem Grund auch immer – mehrere Betriebssysteme auf dem Rechner installiert haben, sollten Sie GRUB oder LILO zunächst nicht in den MBR sondern auf Diskette /dev/fd0 schreiben. Wenn Sie den Bootvorgang dann getestet haben, können Sie den GRUB bzw. LILO mit dem Webmin in den MBR kopieren (vgl. Kapitel 14.4.5, Die Kategorie Hardware). Zeitzone Sollte die automatische Einstellung der Zeitzone falsch sein, wählen Sie einfach eine andere aus. Eine nicht korrekte Zeitzone ist kein Beinbruch, sie kann später leicht korrigiert werden. Nach diesen ganzen Schritten kann nun der Installationsvorgang angestoßen werden. Installation starten Nachdem alle Einstellungen Ihren Vorstellungen entsprechen, klicken Sie einfach auf Weiter. Bevor Sie jedoch die nun folgende Frage beantworten, sollten Sie kurz in sich gehen. Die grün unterlegte Warnung ist der letztmögliche Zeitpunkt, die Installation ohne weitere Auswirkungen zu verlassen. Erst wenn Sie diese übergehen, beginnt die Installation. Sie können jetzt in Ruhe einen Kaffee trinken oder dabei zusehen, wie der YaST2 die ihm aufgetragene Arbeit ausführt. Während der Installation wird das System einmal durchgestartet, und YaST2 bittet Sie kurz darauf, Benutzer anzulegen und eventuell vorhandene weitere Hardwarekomponenten zu konfigurieren. Benutzer und Passwörter Zunächst wird ein Passwort für den Benutzer root vergeben. Dieser ist der Adminstrator des Betriebssystems und verfügt über alle Rechte. Außerdem muss noch ein normaler Benutzer angelegt werden. Mit diesem sollten Sie vorsichtshalber immer arbeiten, wenn Sie nicht gerade Änderungen am System vornehmen wollen.

weitere Hardwarekomponenten An dieser Stelle erledigen Sie unter anderem die Netzwerkkonfiguration Ihres Servers (vgl. Abbildung 14.6). Die genaue Handhabung des YaST2 bei der Einrichtung der Netzwerkadapter wird in Kapitel 9.3, Linux einrichten, beschrieben. Sie können an dieser Stelle auch bestimmen, ob automatisch während des Bootvorganges ein VNC-Server gestartet werden soll. Mehr zu VNC erfahren Sie in Kapitel 10.3.3, Virtual Network Computing VNC.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.6 Das Netzwerk wird erstmalig eingerichtet. Vorsicht, Falle Achten Sie unbedingt darauf, dass externe Geräte eingeschaltet sind! Internetverbindung Den nun folgenden Test der Internetverbindung können Sie entweder ablehnen oder durchführen lassen (vgl. Abbildung 14.7). Wenn Sie akzeptieren und alles richtig konfiguriert ist, lädt der YaST2 Softwareupdates aus dem Internet und installiert diese auf Ihrem System. Das Online-Update des YaST2 hat meiner Erfahrung nach aber auch ein paar Macken: In seltenen Fällen kann es mehr Schaden anrichten als Nutzen bringen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.7 Die Online-Update-Funktion des YaST2 Benutzerauthentifizierung Danach bestimmen Sie die Methode der Benutzerauthentifizierung. Wenn Sie nicht über einen NIS-, NIS+- oder LDAP-Server verfügen – und davon gehe ich aus – wählen Sie den Einzelplatzrechner (vgl. Abbildung 14.8).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.8 Wahl des Authentifizierungsverfahrens Im letzten von mir dokumentierten Schritt werden Sie gebeten, die Daten eines »normalen« Benutzers einzugeben (vgl. Abbildung 14.9). Mit diesem Benutzer können Sie sich später erstmalig am System anmelden. Die Option Automatische Anmeldung sollten Sie unbedingt deaktivieren. Sie können dafür die Option Systemmail empfangen aktivieren. In diesem Fall empfangen Sie E-Mails vom Betriebssystem, die ansonsten im Postfach des Benutzers root eventuell über einen längeren Zeitraum nicht gelesen würden.
Glückwunsch! Sie haben die SUSE-Linux-Installation überstanden!

Webmin Jetzt installieren Sie den Webmin. Sie finden den Webmin in der Version 1.130 für SUSE Linux auf der Buch-DVD im Verzeichnis /software/administration/linux/webmin. Für die Installation kopieren Sie den Webmin zunächst ins Verzeichnis /tmp. Danach können Sie mit dem Kommando (Achtung, großes »U«!) rpm -U /tmp/webmin-1.130-1.noarch.rpm den Webmin installieren. Von jedem PC im LAN können Sie nun über die URL http://<NetzwerkserverIP>:10000 auf den Netzwerkserver zugreifen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.9 Ein erster Benutzer wird angelegt. Der Webmin merkt sich bei seiner Installation das Passwort des Benutzers root zu diesem Zeitpunkt. Eine Änderung des Passwortes für den Linux-Benutzer root hat keinen Einfluss auf das Passwort des Webmin-Benutzers root. SSL Wenn Sie mit SSL-Verschlüsselung arbeiten möchten, finden Sie unter http://www.webmin.com/ssl.html Informationen dazu, welche Schritte nötig sind.

2.3.2 siegfried
Bei der Installation von siegfried auf der Festplatte werden Sie große Unterschiede zu der Installation von SUSE Linux feststellen. Das liegt daran, dass KNOPPIX/siegfried nicht im klassischen Sinne installiert, sondern eher ausgepackt und kopiert wird. Das tut der Qualität des Systems allerdings keinen Abbruch. Das Herzstück von KNOPPIX ist eine gute Hardwareerkennung. Damit kann KNOPPIX während des Bootens von der Buch-DVD die vorhandene Hardware scannen und lädt in Abhängigkeit davon die entsprechenden Kernelmodule. Nach der Installation auf die Festplatte verzichtet KNOPPIX/siegfried auf diesen umständlichen Weg. Die für den Bootvorgang notwendigen Dateien, insbesondere die boot loader initialized RAM disk (/boot/initrd), in der für den Bootvorgang wichtige Kernelmodule und Programme liegen, werden beim Installieren passend erzeugt.

Software Die bei KNOPPIX 3.3 bereits enthaltene Software ist sehr umfangreich. Ich habe für siegfried noch folgende Softwarepakete hinzugefügt:
webmin cups-pdf phprojekt phpsysinfo ntop courier-imap mgetty mgetty-voice postfix postfix-tls libsasl-modules libsasl2-modules sasl-bin sasl2-bin ntp-simple iputils-tracepath vnc-java netio metamail lame mldonkey-gui mldonkey-server gnudip vlc

Das Paket OpenOffice habe ich entfernt, um mehr Platz für siegfried zu bekommen. siegfried sollte wie KNOPPIX komplett auf eine CD passen. Legen Sie einfach die Buch-DVD in Ihr Laufwerk und booten Sie von der DVD. Nach einiger Zeit sehen Sie den Bootprompt boot:.

Sie erhalten mit den Funktionstasten (F2) und (F3) Hilfe zum Booten von KNOPPIX oder siegfried. Mit der Eingabe von siegfried bootet siegfried automatisch, und Sie sehen nach dem Bootvorgang eine grafische Oberfläche, wie Sie sie ähnlich auch von anderen Betriebssystemen kennen (vgl. Abbildung 14.10).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.10 Die KDE unter siegfried kein DVD-Laufwerk? Auf der Buch-DVD liegen im Verzeichnis /iso-images die Dateien knoppix.iso und siegfried.iso. Diese Dateien können Sie an einem anderen Computer mit jedem gängigen Brennprogramm auf eine CD brennen. Webmin Der Webmin ist installiert und von mir so konfiguriert, dass Sie von jedem PC im LAN darauf zugreifen können. Sie müssen dem Server wie in Kapitel 9.3, Linux einrichten, beschrieben eine Netzwerkkonfiguration verpassen, dann können Sie mit der URL http://<NetzwerkserverIP>:10000 direkt loslegen und sich mit dem Benutzer admin und dem Passwort $admin anmelden. ... überzeugt? Sie haben siegfried von der Buch-DVD getestet und wollen es auf der Festplatte installieren? Zuerst öffnen Sie eine Shell. Mit dem Kommando su root /usr/local/bin/knx-hdinstall führen Sie das Kommando zum Installieren von siegfried auf der Festplatte mit den Rechten des Superusers root aus. Von nun an sorgt ein kleines Skript für den weiteren Verlauf der Installation. Sie werden zunächst informiert, dass sich das Skript noch im Entwicklungsstadium befindet. Dieses ist für Projekte im Rahmen der GPL allerdings völlig normal und sollte Sie an dieser Stelle nicht beunruhigen: Im Gegensatz zu den Entwicklern vieler kommerzieller Produkte überlegen es sich Entwickler der Open Source-Gemeinde gewöhnlich lieber dreimal, bevor sie ihr Produkt als fehlerfrei bezeichnen. Trotzdem sind Sie letztlich natürlich immer selbst dafür verantwortlich, was Sie tun!

Im nächsten Schritt wählen Sie die Festplatte aus, auf der Sie siegfried installieren möchten (vgl. Abbildung 14.11)

Hier klicken, um das Bild zu Vergrößern Abbildung 2.11 Die Festplatte für die Installation (hier: Maxtor IDE) cfdisk Für die von Ihnen ausgewählte Festplatte wird nun das Utility cfdisk gestartet. Dieses ist der schwierigste Teil der Installation. Sie müssen zwei Partitionen anlegen. Eine Swap- und eine Rootpartition. Dabei navigieren Sie mit (¼) und (½) zwischen den Partitionen und noch freiem Bereich auf der Festplatte. Mit (Pfeil_Æ) und (Pfeil_æ) wechseln Sie zwischen den ausführbaren Kommandos. Dabei bezieht sich das ausgewählte Kommando immer auf den grau unterlegten Bereich der Festplatte (vgl. Abbildung 14.12).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.12 cfdisk partitioniert die SCSI-Festplatte /dev/sda Sie haben eine Festplatte, die Sie komplett für Siegfried verwenden möchten. Zunächst entfernen Sie alle vorhandenen Partitionen, indem Sie [Löschen] auswählen und danach mit (¼) die nächste Partition auswählen. Diesen Vorgang wiederholen Sie, bis alle Partitionen gelöscht sind. Im Anschluss legen Sie im freien Bereich mit Neue • Primäre eine neue Partition an, die etwa doppelt so groß ist wie Ihr Hauptspeicher. Sie entscheiden sich mit Anfang, die Partition an den Anfang der Festplatte zu legen. Das ist sinnvoll, da der Zugriff auf die ersten Blöcke einer Festplatte schneller sein kann. Nun wählen Sie Typ und geben als

Dateisystemtyp 82 für Linux swap ein. Danach gehen Sie mit (¼) wieder in den freien Bereich und legen schließlich eine Partition an, die mindestens zwei GByte groß sein sollte, und geben ihr mit Bootbar ein Bootflag. Mit Schreib. speichern Sie die neue Partitionstabelle, und mit Ende verlassen Sie cfdisk. Wenn Sie möchten, können Sie weitere Partitionen nach der Installation komfortabel mit dem Webmin anlegen. Swap Im nächsten Dialog bestätigen Sie die Verwendung einer Swappartition. Daraufhin erhalten Sie eine Liste der vorhandenen Partitionen vom Typ Linux swap. Die von Ihnen eingerichtete wählen Sie aus (vgl. Abbildung 14.13). Im Anschluss schreibt cfdisk ein Filesystem auf diese Partition.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.13 Die swap-Partition für siegfried (hier: SCSI) ... und die Rootpartition Danach wählen Sie als Rootpartition die zweite mit dem cfdisk eingerichtete Partition und wählen im darauf folgenden Schritt ein Filesystem für diese Partition aus (vgl. Abbildung 14.14). Hier sollten Sie reiserfs oder das modernere xfs wählen. Display Manager Nach Abschluss des Kopiervorganges müssen Sie entscheiden, ob Sie an der Konsole grafisch arbeiten wollen oder lieber auf der Kommandozeile. Ich empfehle Ihnen, den Display Manager nicht automatisch während des Bootvorganges starten zu lassen, da er nicht unerheblich Ressourcen verbraucht und üblicherweise nicht benötigt wird. Abhängig von Ihrer Auswahl startet der siegfried-Netzwerkserver nach dem Booten automatisch im Runlevel 5 (mit Display Manager) oder im Runlevel 3 (ohne Display Manager). Sie können dann allerdings als root mit dem Kommando init 5 oder über Webmin-Modul System • System-Start und -Stop in den Runlevel 5 wechseln und den Display Manager starten.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.14 Das Filesystem für die Rootpartition Netzwerk Weiterhin ist der Hostname zu bestimmen, und die Netzwerkkonfiguration wird Ihren Angaben entsprechend vorgenommen. Das dafür notwendige Grundwissen wird im ersten Teil des Buches vermittelt (vgl. Kapitel 9.3, Linux einrichten). root Danach legen Sie das Passwort für den Superuser root fest. Dieser Vorgang ändert nicht automatisch das Passwort des Benutzers root für den Webmin. Dieses müssen Sie im Webmin selber ändern. LILO Schließlich werden Sie gefragt, ob der Bootloader LILO in den Master Boot Record (MBR) der Festplatte geschrieben werden soll. Das ist erforderlich, damit siegfried von der Festplatte gebootet werden kann. Falls Sie sich unsicher sind, können Sie hier auch ablehnen. Das Installationsskript bietet im nächsten Schritt an, eine Bootdiskette zu erstellen, von der Sie dann Siegfried booten können. Wenn das problemlos klappt, dann schreiben Sie später mit dem Komando lilo als Benutzer root die erforderlichen Informationen in den Bootbereich der Festplatte.

2.4 Erste Schritte mit dem Webmin
Ihr System ist nun frisch installiert – mit welchem Linux auch immer. Ich möchte Ihnen jetzt den Webmin etwas genauer vorstellen. Sie werden sehr schnell mit dem Webmin vertraut werden und sich rasch an ihn gewöhnen. In meinen Beispielen verwende ich den Webmin für Debian Linux und konfiguriere den Netzwerkserver mit dem Hostnamen siegfried. Dokumentation im Internet Sie finden gute – vorwiegend englischsprachige – Dokumentationen im Internet auf der Seite http://www.webmin.com. Klicken Sie auf die Kategorie Documentation. Die herunterladbaren Dokumente sind teilweise hervorragend geschrieben. Webmin-Struktur Der Webmin ist unterteilt in verschiedene Kategorien. Innerhalb der Kategorien Webmin, System, Server, Netzwerk, Hardware, Cluster und Sonstiges finden Sie Module oder Modulgruppen, die Sie durch Anklicken aufrufen. Ich werde den Zugriff auf ein Modul des Webmin beschreiben, indem ich zuerst die Kategorie, ggf. die Modulgruppe und dann den Modulnamen nenne. Um Benutzer für den Zugriff auf den Webmin zu verwalten, starten Sie bitte das Modul Webmin • Webmin-Benutzer. Um einen Benutzer auf Betriebssystemebene anzulegen, verwenden Sie das Modul System • Benutzer und Gruppen.

... auf Deutsch Wenn Sie nicht siegfried von der Buch-DVD verwenden, ist es sehr wahrscheinlich, dass die Sprache Ihres Webmin in der Grundeinstellung Englisch ist. Wählen Sie bitte im Modul Webmin • Webmin Configuration • Language die Einstellung German (DE) (vgl. Abbildung 14.15). Um Ihre Änderungen zu speichern, müssen Sie beim Webmin grundsätzlich ein Button im unteren Teil der Seite anklicken. In diesem Fall klicken Sie auf Change Language und machen die Sprache permanent. Leider wirkt sich diese Einstellung nicht auf alle HilfeTexte und Beschreibungen aus, da einige nur auf Englisch vorhanden sind.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.15 Die Standardsprache des Webmin Modulkonfiguration In den einigen Modulen des Webmin findet sich jeweils der unscheinbare Link Modulkonfiguration. Hier erhält der Webmin insbesondere die Information, wo sich die Konfigurationsdateien und ausführbaren Programme befinden, die er im Zusammenhang mit dem Modul benötigt. Wenn mir hier möglicher Anpassungsbedarf aufgefallen ist, habe ich das bei der Vorstellung des jeweiligen Moduls erwähnt. Sie sollten die Modulkonfiguration grundsätzlich ansehen. Zumindest erhalten Sie wertvolle Informationen über die Vorgänge im Hintergrund des Webmin und so erste Hinweise für die manchmal unvermeidliche Fehlersuche. Wie bereits erwähnt, ist der Webmin modular aufgebaut. Es kann sein, dass das eine oder andere installierte Modul im Moment keinen praktischen Nutzen hat, da das entsprechende Softwarepaket auf dem System nicht vorhanden ist. Das kann anfangs verwirren, jedoch sparen Sie die nachträgliche Anpassung des Webmin, falls Sie sich doch entschließen, das entsprechende Paket zu verwenden. Ich möchte Ihnen auf den folgenden Seiten anhand einzelner ausgesuchter Beispiele aus allen Kategorien grundlegende Funktionen des Webmin vorstellen. Legende Der Webmin kennt und verwendet verschiedene Eingabehilfen. Am häufigsten sind Felder, deren Inhalt man sehr einfach mit der Tastatur verändern kann. Für Sprünge zwischen den Feldern können wahlweise Maus oder (ÿ__)-Taste verwendet werden. Links zu anderen Seiten sind wie bei Webseiten gewohnt unterstrichen. Diese Links können genauso wie die Webmin-Symbole angeklickt werden. Manchmal (z. B. auf der Seite System • Benutzer und Gruppen • Einen neuen Benutzer anlegen) sind auch die Feldbeschreibungen als Link

gekennzeichnet. Das bedeutet, dass sich mit einem Klick ein Hilfefenster für dieses Feld öffnet. Auf dieser Seite finden sich auch Beispiele für verschiedene Auswahlmöglichkeiten. Im Bereich Kennworteinstellungen kann der Monat des Ablaufdatums mit einem Klick auf den Pfeil rechts vom Monatsfeld aus einer Liste ausgewählt werden. Für die Wahl der primären Gruppe des Benutzers kann man sich aller bereits existierenden Gruppen durch einen Klick auf die Schaltfläche mit den drei Punkten rechts vom Feld bedienen. Die möglichen sekundären Gruppen stehen in einer Liste mit Scrollbalken. Hier ist auch eine Mehrfachauswahl möglich, indem während des Markierens die (Strg)-Taste gedrückt wird.

2.4.1 Die Kategorie Webmin
In der Kategorie Webmin finden Sie alle Module zur generellen Konfiguration des Webmin (vgl. Abbildung 14.16). Look & Feel Das Modul Webmin • Webmin-Konfiguration • Webmin-Themes legt das Standardaussehen des Webmin fest. Hier können Sie das Caldera Theme oder das von der Homepage http://www.webmin.com bekannte MSC.Linux Theme als aktuelles Layout auswählen. Ich verwende für das Buch das Standard Webmin-Theme, da es mir wegen des größeren Kontrasts für die Abbildungen im Buch am geeignetsten erschien.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.16 Die Kategorie Webmin Sprache und Design Mit dem Modul Webmin • Ändern der Sprache und des Designs haben Sie die Möglichkeit, statt der allgemeinen Einstellungen des Webmin Sprache und Theme für den aktuell angemeldeten Benutzer zu verändern. Webmin-Benutzer Bei der Installation des Webmin wurde automatisch der Webmin-Benutzer root angelegt. Das in diesem Moment gültige Passwort des Benutzers wurde aus der Datei /etc/shadow

übernommen. In dieser Datei stehen die Passwörter der Systembenutzer. Eine spätere Änderung des Linux-Passwortes von root hat keine Auswirkung auf das Passwort des Webmin-Benutzers root. Das Modul Webmin • Webmin-Benutzer verwenden Sie, um diesen und weitere Benutzer des Webmin zu verwalten. Sie können beispielsweise neue Benutzer anlegen und bestimmen gleichzeitig, auf welche Module des Webmin dieser Benutzer zugreifen darf (vgl. Abbildung 14.17). Mit einem Klick auf Alles auswählen gestatten Sie dem Benutzer Vollzugriff. Für jeden einzelnen Benutzer können Sie außerdem einschränken, von welchen Arbeitsplätzen aus er auf den Webmin zugreifen darf, indem Sie bestimmte IPAdressen festlegen. IP-Zugriffskontrolle Das Modul Webmin • Webmin-Konfiguration • IP-Zugriffskontrolle ist ein Sicherheitsinstrument (vgl. Abbildung 14.18). Sie können den generellen Zugriff auf den Webmin bei Bedarf auf bestimmte Arbeitsplätze beschränken.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.17 Webmin-Benutzer anlegen

Hier klicken, um das Bild zu Vergrößern Abbildung 2.18 Netzwerkzugriffskontrolle Module Die Einordnung der Module in die einzelnen Kategorien und Modulgruppen des Webmin ist weitgehend gut durchdacht und sinnvoll gestaltet. Trotzdem könnten Sie unter Webmin • Webmin-Konfiguration • Module kategorisieren die Module anders verteilen.

2.4.2 Die Kategorie System
In der Kategorie System finden Sie grundlegende Einstellungsmöglichkeiten des LinuxBetriebssystems (vgl. Abbildung 14.19). Zusätzlich ist eine praktische Hilfe zur Suche von Dokumentationen an dieser Stelle vorhanden.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.19 Die Kategorie System Systembenutzer Mit dem Modul System • Benutzer und Gruppen verwalten Sie alle Benutzer auf Betriebssystemebene. Mit einem Klick auf den jeweiligen Benutzernamen ändern Sie die Attribute dieses Benutzers, mit Neuen Benutzer erstellen erhalten Sie eine leere Maske (vgl. Abbildung 14.20), die Sie selber mit Leben füllen müssen. Hier wählen Sie einen Namen, mit dem sich der neue Benutzer später am System anmeldet. Außerdem sollten Sie ein Kennwort vergeben, das Sie dem Benutzer dann mitteilen. Wichtig ist außerdem die Gruppenzugehörigkeit. Als primäre Gruppe eines normalen Benutzers sollten Sie die Gruppe users wählen. Eine sekundäre Gruppe müssen Sie im Gegensatz zur primären Gruppe nicht unbedingt bestimmen. Filesysteme mounten Das Modul System • Lokale und Netzwerk-Dateisysteme verwenden Sie, um Filesysteme in Ihr System einzuhängen. Dazu zählt auch eine CD-ROM in Ihrem CD-Laufwerk.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.20 Systembenutzer anlegen Sie möchten eine CD im lokalen CD-Laufwerk einhängen (engl. mounten). Sie suchen zuerst die entsprechende Zeile in der Übersicht des Moduls heraus. Bei SUSE beginnt die Zeile Gemountet als... mit dem Mountpoint/media/cdrom, bei siegfried ist es der Mountpoint /cdrom. In der Zeile Z. Z. benutzt? klicken Sie auf Nein. Sobald sich die Seite wieder aufgebaut hat und aus dem Nein ein Ja geworden ist, können Sie auf die Daten der CD im

Verzeichnis /media/cdrom bzw. /cdrom zugreifen. Mit einer DVD funktioniert das entsprechend. Bevor Sie die CD wieder aus dem Laufwerk entfernen können, müssen Sie das Filesystem mit einem Klick auf Ja wieder abmontieren! Passwörter Sollte einem vergesslichen Systembenutzer sein Kennwort entfallen sein, können Sie das Modul System • Passwörter ändern aufrufen und ihm ein neues verpassen. Softwarepakete Das Modul System • Softwarepakete ist das am stärksten betriebssystemabhängige der bis hierher vorgestellten Module. Das hat damit zu tun, dass die unterschiedlichen Linuxe teilweise unterschiedliche Paketverwaltung betreiben. So werden Sie auf einem SUSE-System mit dem Webmin als Oberfläche Red Hat Package Manager Pakete (RPM) installieren und deinstallieren. Debian – und damit auch siegfried – verwendet das Advanced Package Tool (APT). System-Start und -Stop Im Modul System • System-Start und -Stop möchte ich besonders auf den unteren Teil der Webseite aufmerksam machen. Mit der Schaltfläche Wechsle zum Runlevel und der dazugehörigen Auswahl können Sie aus dem aktuellen Runlevel in einen definierten anderen wechseln. Natürlich können Sie das System auch ganz herunterfahren. einzelne Dienste Eine andere Funktion dieses Moduls ist das Starten und Stoppen von ausgewählten Diensten. Ein Beispiel dafür ist die Konfiguration des IMAP-Dienstes in Kapitel 14.8.5, Clients im LAN an den Server anbinden. laufende Prozesse Das Modul System • Laufende Prozesse wird in diesem Zusammenhang benötigt um zu überprüfen, ob ein bestimmter Dienst gestartet ist oder nicht. Ganz allgemein können Sie mit diesem Modul auf die Prozessebene des Betriebssystems gehen. Mit einem Klick auf die Process ID (PID) ganz links erhalten Sie noch genauere Informationen zu dem jeweiligen Prozess, z. B. den Besitzer (vgl. Abbildung 14.21). Sie können dem Prozess auch Signale senden. Das gebräuchlichste Signal ist das Signal TERM zum Beenden eines einzelnen Prozesses.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.21 Detaillierte Informationen zum Prozess »ssh« Killen Sie nur dann einen Prozess, wenn er anders nicht mehr zu stoppen ist! Versuchen Sie immer erst, den Dienst normal zu beenden! Nur dann werden die Prozesse »sauber« beendet. Runlevel Das entscheidendste Merkmal eines Betriebssystems ist, welche Dienste gestartet und welche gestoppt sind. Ein Runlevel ist ein definierter Zustand des Linux-Betriebssystems. Durch geschicktes Anordnen der Start- und Stop-Skripte wird erreicht, dass Dienste in einer definierten Reihenfolge gestartet werden. Zusätzlich werden auf diese Weise Gruppen von Diensten gebildet, die in Abhängigkeit vom Runlevel gestartet und gestoppt werden. Die einzelnen Runlevel haben bei siegfried die folgende Bedeutung:
Runlevel 0: System halt. Das System wird heruntergefahren. Runlevel 1: Minimales System mit Filesystemen Runlevel 2: Filesysteme und grundlegende Netzwerkkonfiguration Runlevel 3: Filesysteme, Netzwerk und die Dienste. Zum Beispiel sollte spätestens in diesem Runlevel ein Samba-Server gestartet werden, wenn er nicht komplett deaktiviert ist. Runlevel 4: Nicht definiert. Sie könnten hier selber einen Zustand des Systems definieren. Runlevel 5: Im Wesentlichen wie Runlevel 3, nur mit einer grafischen Konsole Runlevel 6: Reboot des Systems

Die Schaltflächen System neu starten und System herunterfahren sind genauso dazu geeignet, zu Runlevel 6 (reboot) oder Runlevel 0 (halt) zu wechseln. KNOPPIX hält sich nicht an diese Regeln. Ich habe mich daher bemüht, das Installationsskript für siegfried so zu verändern, dass möglichst viele dieser kleineren Ungereimtheiten verschwinden. Bei allen wichtigen Funktionen sollte mir dieses auch gelungen sein. Systemdokumentation

Als äußerst hilfreich empfinde ich das Modul System • Systemdokumentation. Die Idee, die sich dahinter verbirgt, ist so einfach wie genial: Wenn ein Admin Dokumentationen sucht, dann hat er verschiedene Quellen, die er alle nacheinander durchforstet, bis er ein nützliches Dokument findet. Er sucht vielleicht zunächst in den Manpages1 , dann in einer Paketdokumentation und wird schließlich mit einer Suchmaschine im Internet fündig. Warum diese Suche nicht vereinfachen? Sie können auf diese Weise komfortabel und variabel im Internet und im System nach Stichwörtern suchen (vgl. Abbildung 14.22).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.22 Systemdokumentation

2.4.3 Die Kategorie Server
Da Linux ein klassisches Serverbetriebssystem ist, ist folgerichtig die Kategorie Server auch die größte Kategorie des Webmin (vgl. Abbildung 14.23). DHCP-Server Ich möchte Ihnen an dieser Stelle nur die Serverdienste vorstellen, die nicht später im Buch noch ausführlicher behandelt werden. Das Modul Server • DHCP-Server wird in Kapitel 14.5, DHCP-Server, näher beschrieben. Samba Die Modulgruppe Server • Windows-Dateifreigabe spielt in Kapitel 14.6, Samba als Fileserver, eine wichtige Rolle. Mit den darin verfügbaren Mitteln könnten Sie außerdem eine Windows-Domäne aufbauen. Mail

Die Module Server • Fetchmail-Konfiguration und Server • Postfix-Konfiguration werden in Kapitel 14.8, Mailserver, benötigt und näher erläutert. MySQL Anhand des Moduls Server • MySQL Datenbank-Server werde ich Ihnen veranschaulichen, wie Sie eine Datenbank für den Groupwareserver aus Kapitel 14.10, Groupwareserver, aufbauen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.23 Die Kategorie Server Apache Die Modulgruppe System • Apache Webserver lässt sich in Bereiche unterteilen, die entsprechende Abschnitte aus den Konfigurationsdateien widerspiegeln (vgl. Abbildung 14.24). Die Seite gliedert sich in die globale Konfiguration und das Einrichten von virtuellen Servern. In der globalen Konfiguration vergeben Sie Systemressourcen an den Apache-Server in der Version 1.x. Mit virtuellen Servern können mehrere Webserver unter einer IP-Adresse betrieben werden. Das Thema Webserver ist nicht Thema dieses Buches. Galileo Computing bietet Ihnen mit dem Buch »Der eigene Webserver« von Michael Hilscher ein umfassendes Werk zu diesem Thema. Wenn Sie Literatur zum Apache 2 suchen, empfehle ich Ihnen das Buch »Apache 2« von Sascha Kersken (http://www.galileocomputing.de). Bind Ähnlich ist auch die Modulgruppe System • Bind DNS-Server aufgebaut (vgl. Abbildung 14.25). Der Dynamic Name Service ist ein Dienst, der zur Namensauflösung im Netz genutzt wird. Eine Adresse, die Sie in Ihren Browser eintragen, wird von einem oder mehreren DNSServern im Internet bearbeitet und der Name dann in eine IP-Adresse aufgelöst. Diesen Dienst

können Sie auch in Ihrem LAN anbieten. Da sich der Aufwand erst in relativ großen Netzwerken wirklich lohnt, verzichte ich auf eine genauere Beschreibung. Im Bereich Globale Server-Einstellungen werden grundlegende Vereinbarungen wie z. B. Timeouts getroffen. Im Bereich Existierende DNS-Zonen können Sie dann die einzelnen DNS-Zonen definieren.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.24 Apache-Webserver

Hier klicken, um das Bild zu Vergrößern

Abbildung 2.25 Bind-DNS-Server

2.4.4 Die Kategorie Netzwerk
In der Kategorie Netzwerk (vgl. Abbildung 14.26) findet sich das eine oder andere Modul, das eigentlich genauso gut in die Kategorie Server passen würde. Ich habe diese Module jedoch aus Gründen der Einheitlichkeit mit dem ursprünglichen Webmin nicht umkategorisiert.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.26 Die Kategorie Netzwerk NFS Ein Beispiel dafür ist das Modul Netzwerk • NFS-Exporte, das den Zugriff auf den Network Filesystem Server (NFS) regelt. NFS ist ein Dienst, der von Sun Microsystems entwickelt wurde und lange Zeit der Standard-Filesharingdienst unter UNIX war. Mit diesem Modul können Sie im Netzwerk Verzeichnisse zur Verfügung stellen (exportieren). NFS hat zwei bedeutende Nachteile. Erstens findet man kaum Clients und Server in der Windows-Welt, zweitens gilt der Dienst als sehr unsicher. Aus diesen Gründen erkennt man bei Linux einen klaren Trend in Richtung Samba. Der bedeutendste Punkt in dieser Kategorie ist die Modulgruppe Netzwerk • Netzwerkkonfiguration. Netzwerkkarten einrichten Mit dem Modul Netzwerk • Netzwerkkonfiguration • Netzwerkschnittstellen richten Sie neue Netzwerkkarten ein und vergeben IP-Adresse, Netzwerkmaske und Broadcastadresse. Sie können an dieser Stelle auch die Hardware-MAC-Adresse einer Netzwerkkarte maskieren. Routing

Im Modul Netzwerk • Netzwerkkonfiguration • Routing und Gateways können Sie die Default-Route einsehen und verändern. Leider habe ich keine Möglichkeit gefunden, andere Routingeinträge mit dem Webmin zu generieren. Die Module Netzwerk • Netzwerkkonfiguration • DNS-Client und Netzwerk • Netzwerkkonfiguration • Host-Adressen dienen der Namensauflösung. Außerdem kann mit dem Modul des DNS-Clients auch der Hostname des Systems geändert werden. Die Fundstelle ist für diese Funktion allerdings nur bedingt logisch. In Ihrem Firmen-LAN existiert ein DNS-Server für die Namensauflösung der Domäne firmameier.local, und außerdem möchten Sie auf dem System noch einige weitere Rechner eintragen, die dem DNS-Server nicht bekannt sind. Dafür tragen Sie im Modul Netzwerk • Netzwerkkonfiguration • DNS-Client die IP-Adresse des DNS-Servers ein (vgl. Abbildung 14.27). Es ist sinnvoll, in der Liste der Suchdomänen zumindest den Eintrag für die lokale Domäne zu erzeugen. Damit können Hostnamen ohne Domänenanteil erweitert werden. Diese Informationen speichert Webmin in der Datei /etc/resolv.conf. Mit der Auflösungsreihenfolge legen Sie die Reihenfolge fest, in der das System bestimmte Mechanismen zur Namensauflösung anwendet. Diese Einstellungen landen in der Datei /etc/nsswitch.conf. Danach machen Sie die dem DNS-Server nicht bekannten Rechner mithilfe des Moduls Netzwerk • Netzwerkkonfiguration • Host-Adressen bekannt. Dieses Modul erzeugt dann für jeden neuen Host einen Eintrag in der Datei /etc/hosts.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.27 Hostname, Auflösungsreihenfolge und DNS-Client

2.4.5 Die Kategorie Hardware
Die Kategorie Hardware bietet Ihnen Administrationsmöglichkeiten, die besonders tief in das System eingreifen (vgl. Abbildung 14.28). Aus diesem Grund sollten Sie an dieser Stelle umsichtig agieren. Bei meiner Arbeit an diesem Buch ist mir aufgefallen, dass das Webmin Modul Hardware • Festplatten-Partitionen ein paar kleinere Fehler enthält. Eine einzelne Partition auf der Festplatte konnte nicht vernünftig administriert werden; der Webmin verharrte beim Durchführen einer Aktion mit dieser Partition einfach im Stillstand, da er nicht kompatibel mit der installierten Version des fdisk war. Ich habe daher eine bestimmte Perlfunktion für siegfried leicht modifiziert. Es handelt sich um die Datei /<webmin-installdir>/fdisk/fdisklib.pl. Auf der Buch-DVD liegt die Datei im Verzeichnis /software/administration/linux/webmin/perl. Sollten Sie den gleichen Fehler bei der Arbeit

mit Ihrem Server beobachten, kopieren Sie die Datei von der DVD bitte an die entsprechende Stelle in Ihrem System!

Hier klicken, um das Bild zu Vergrößern Abbildung 2.28 Die Kategorie Hardware Drei der Module dieser Kategorie beschäftigen sich mit dem Thema Partitionierung und Filesysteme. Diese Module möchte ich Ihnen gerne anhand von zwei Beispielen erklären. Das erste Beispiel beschreibt eine einfache Konfiguration, das zweite eine relativ anspruchsvolle. Sie müssen die endgültige Konfiguration Ihren Begebenheiten anpassen. Beispiel für Einsteiger Sie haben eine neue Festplatte eingebaut und möchten den Platz für Ihren Netzwerkserver nutzen. Sie starten das Modul Hardware • Festplatten-Partitionen und sehen die Übersicht aller Fesplatten und der darauf befindlichen Partitionen. Sie suchen die neue Festplatte heraus und klicken auf Primäre Partition hinzufügen. Den Typ der Partition lassen Sie unverändert auf Linux. Mit Ausmaß ist die Größe der Partition gemeint. Hier haben Sie leider nicht die Möglichkeit, die Größe der Partition in Megabyte oder Gigabyte zu bestimmen. Vielmehr bezieht sich die Angabe auf die Zylinder der Festplatte. Für den Fall, dass Ihre Partition sich nur über einen Teil der Festplatte erstrecken soll, bleibt Ihnen nur der klassische Dreisatz aus der Schule. Mit einem Klick auf Erstellen wird die Partition auf die Festplatte geschrieben. In diesem Zustand besitzt die Partition allerdings noch kein Filesystem. Dazu klicken Sie auf die Nr. der neuen Partition, die Sie daraufhin bearbeiten können. Sie wählen ein Filesystem (z. B. reiserfs oder xfs) aus der Liste und klicken auf Create Filesystem: (vgl. Abbildung 14.29).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.29 Ein Filesystem für die neue Partition Mit dem Modul System • Lokale und Netzwerk-Dateisysteme hängen Sie die neue Partition in Ihren Verzeichnisbaum ein. Sie wählen den Typ des gerade erstellten Filesystems aus der Liste und klicken auf Füge Mount hinzu. Sie bestimmen zunächst den Mountpoint im Feld

Gemountet als. Danach wählen Sie die Partition aus der Liste, in der sich das neue Filesystem befindet (vgl. Abbildung 14.30). Ein Klick auf Erstellen beendet die Arbeit. Beispiel für Profis Sie haben Linux installiert und möchten nun einen gespiegelten Datenbereich über die SCSIFestplatten /dev/sdc und /dev/sdd bilden. Sie gehen in fünf Schritten vor: Partitionieren, Spiegeln, Volume-Gruppe einrichten, Logical Volumes schneiden und schließlich richten Sie die Filesysteme ein.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.30 Die neue Partition wird eingehängt. Partitionierung Im Modul Hardware • Festplatten-Partitionen sehen Sie alle Festplatten und die darauf vorhandenen Partitionen. In einer Tabelle erhalten Sie Auskunft über Partitionsnummer, Typ, Lage der Partition, Start- und Endzylinder, die Verwendung oder den Mountpoint sowie die prozentuale Auslastung eines in einer Partition befindlichen Filesystems. Eventuell vorhandene Partitionen auf den beiden Festplatten beseitigen Sie mit einem Klick auf die Partitionsnummer und Löschen. Dann erstellen Sie mit einem Klick auf Primäre Partition hinzufügen jeweils eine Partition vom Typ Linux RAID (vgl. Abbildung 14.31). RAID Die neu entstandenen Partitionen benötigen Sie für das Modul Hardware • Linux RAIDKonfiguration. Wählen Sie den Level Gespiegelt (Raid1). Auf der nachfolgenden Seite bestimmen Sie die Partitionen, die in den RAID-Verbund aufgenommen werden. Um zwei Partitionen auszuwählen, markieren Sie eine und halten Sie beim Markieren der zweiten Partition die Taste (Strg) gedrückt (vgl. Abbildung 14.32).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.31 Anlegen einer primären Partition mit dem Webmin

Hier klicken, um das Bild zu Vergrößern Abbildung 2.32 Mirror Device erstellen Mit einem Klick auf Erstellen gelangen Sie zur Übersicht über Ihre bereits definierten Mirror Devices. Mit einem Klick auf das Devicefile /dev/md<?> gelangen Sie in eine weitere Maske. Hier können Sie das RAID-Gerät deaktivieren, löschen und könnten auch ein Filesystem anlegen. Das dürfen Sie jedoch keinesfalls tun, wenn Sie das neue Filesystem in den Logical Volume Manager einbetten möchten. Volume Group Im Modul Hardware • Volume-Management klicken Sie auf Add a new volume group. Hier geben Sie der Volume-Gruppe einen Namen und wählen als Initial physical device das soeben angelegte RAID-Device (vgl. Abbildung 14.33).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.33 Volume-Gruppe »daten« erstellen Sie müssen natürlich nicht zwingend eine neue Volume-Gruppe erstellen. Wenn Sie bereits über eine Volume-Gruppe verfügen, können Sie die bestehende Gruppe auch mit einem Klick auf Add a physical volume to the group vergrößern (vgl. Abbildung 14.34).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.34 Übersicht über den LVM Logical Volumes Mit einem Klick auf Create a new logical volume können Sie nun ein oder mehrere Logical Volumes anlegen. Sie sollten einen sprechenden Namen vergeben (z. B. lvolvideo für Videodaten) und die Größe des Logical Volumes bestimmen, das per default den gesamten freien Platz in der Volume-Gruppe belegt. Filesystem Mit einem Klick auf den Namen des Logical Volumes erhalten Sie eine Oberfläche zur Administration (vgl. Abbildung 14.35). Sie können zum einen den Namen und die Größe des Logical Volumes anpassen. Zum anderen können Sie das Logical Volume auch ganz entfernen. In jedem Fall müssen Sie ein Filesystem in dem Logical Volume einrichten. Dazu wählen Sie ein Dateisystem aus der Auswahl und klicken dann auf Create filesystem of type. Die Ausgabe des Linux-Kommandos, das der Webmin zur Erstellung des Filesystems absetzt, können Sie am Bildschirm betrachten.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.35 Administration der Logical Volumes Filesystemtabelle Das ausgewählte Filesystem merken Sie sich gut. Sie brauchen es, wenn Sie die neu erstellte Partition über einen Eintrag in der Filesystemtabelle /etc/fstab automatisch beim Booten vom Betriebssystem mounten lassen wollen. Um diesen Eintrag zu erstellen, rufen Sie das Modul System • Lokale und Netzwerk-Dateisysteme auf. Sie wählen den soeben vorgemerkten Filesystemtyp aus und klicken auf Füge Mount hinzu. In der ersten Zeile wählen Sie den Mountpoint aus. Der Mountpoint ist das Verzeichnis, an dem das Filesystem eingehängt wird. Sollte es noch nicht existieren, wird es vom Webmin automatisch erstellt. Sie klicken auf LVM Logical Volume und wählen das neue Logical Volume aus der Liste. Mit einem letzten Klick auf Erstellen machen Sie die Einstellungen permanent.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.36 Der Mountpoint für das neue Filesystem

Bootloader Die Konfiguration des Bootloaders erledigen die Module Hardware • Linux BootKonfiguration (LILO) und Hardware • GRUB Boot-Konfiguration. LILO und GRUB sind zwei Bootloader. Für einen der beiden haben Sie sich bei der Installation des Betriebssystems entschieden. Zum Beispiel wurde für Siegfried bei der Installation der Bootloader LILO auf der Festplatte installiert. Die Konfigurationsdatei des GRUB /boot/grub/menu.lst hingegen existiert auf siegfried nicht, weswegen sich das Modul nicht ohne weiteres starten lässt. Existiert die Standardkonfigurationsdatei des LILO /etc/lilo.conf nicht, verweigert auch dieses Modul die Arbeit. In der Regel sollte die Konfigurationsdatei Ihres Bootloaders nach der Installation in sauberem Zustand sein. Diesen Stand sollten Sie sichern, indem Sie eine Kopie der Datei, z. B. mit dem Modul Sonstiges • Dateimanager anlegen (vgl. Kapitel 14.4.7, Die Kategorie Sonstiges). Bei Änderungen müssen Sie vorsichtig sein, da ein versehentliches Überschreiben des MBR zu einem System führen kann, das nicht mehr von der Festplatte gebootet werden kann. In diesem Fall müssten Sie von einer CD oder Diskette booten und den MBR von Hand wieder herstellen. LILO Die Seite des Moduls Hardware • Linux Boot-Konfiguration ist in zwei Bereiche aufgeteilt. Im oberen Bereich können bestehende Einträge für ladbare Kernel in der LILO-Konfiguration verändert oder hinzugefügt werden. Im unteren Teil finden Sie globale Parameter, die für alle Booteinträge gelten (vgl. Abbildung 14.37).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.37 LILO-Konfiguration. Durch einen Klick auf einen bestehenden Eintrag kommen Sie in eine Maske, in der Sie Veränderungen vornehmen können (vgl. Abbildung 14.38). Der Link Einen neuen BootKernel erstellen führt Sie zu der gleichen Maske, die Sie dann mit Leben füllen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.38 Beispiel für einen Booteintrag im LILO GRUB Das Webmin-Modul Hardware • Grub Boot-Konfiguration ist ähnlich aufgebaut wie das Modul für den LILO. Mit einem Klick auf einen bereits konfigurierten Eintrag erhalten Sie eine Maske mit fast gleich lautenden Feldern (vgl. Abbildung 14.39).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.39 Beispiel für einen Booteintrag im GRUB

2.4.6 Die Kategorie Cluster
Die Kategorie Cluster bietet keine Funktionalitäten im Sinne eines Hochverfügbarkeitsclusters. Es geht vielmehr um eine Hilfe bei einer großen Anzahl von zu administrierenden Servern (vgl. Abbildung 14.40).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.40 Die Kategorie Cluster Ein Cluster im Sinne des Webmin ist eine Organisationseinheit bestehend aus mehreren Webmin-Servern. In einem Clusterverbund ist es möglich, Updates des Webmin, einzelner Module oder Änderungen bei den Webmin-Benutzern durchzuführen. Ebenfalls interessant bei einer großen Anzahl von gleichartigen Servern ist die Möglichkeit einer zentralen Verteilung von Softwarepaketen. Diese Themen sind in diesem Buch nicht ausführlicher beschrieben, da nur größere Firmen über eine ausreichende Anzahl vergleichbarer LinuxInstallationen verfügen, sodass sich ein Einsatz der Clusterfunktionalität lohnen würde.

2.4.7 Die Kategorie Sonstiges
In der Kategorie Sonstiges versammeln sich ein paar nützliche kleine Programme und Module. Dateimanager Mit dem Modul Sonstiges • Dateimanager erhalten Sie einen vollwertigen webbasierenden Dateimanager (vgl. Abbildung 14.41). Die Handhabung ist meiner Erfahrung nach am Anfang etwas gewöhnungsbedürftig, trotzdem intuitiv erlernbar. Wenn Sie andere Dateimanager – wie den verbreiteten Midnight Commander – bereits kennen, gibt es keinen Grund umzusteigen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.41 Der eingebaute Dateimanager des Webmin Exkurs Der Midnight Commander wird mit dem Kommando mc aus einer Shell heraus gestartet. Kommandozeile Das Modul Sonstiges • Kommandozeile gewährt Ihnen einen direkten Zugriff auf eine Shell. Die Shell führt Ihre Kommandozeilen mit den Rechten des Benutzers root aus. Seien Sie daher vorsichtig! Die Kommandozeile wird unter anderem für die Konfiguration von Samba (vgl. Kapitel 14.6.1, Linux als Server) benötigt und dann näher erläutert.

2.5 DHCP-Server
Sie möchten flexibel und schnell unterschiedlichste Netzwerkteilnehmer von einer Stelle aus in Ihr LAN integrieren? Mit einem DHCP-Server werden Netzwerkkonfigurationen an zentraler Stelle verwaltet. Ein Client im Netzwerk stellt eine Broadcastanfrage an alle anderen Teilnehmer im LAN und erhält als Antwort zum Beispiel eine IP-Adresse, Netzwerkmaske, einen Routingeintrag und einen Hostnamen. Dabei können die Einträge entweder fest anhand der MAC-Adresse des Clients oder aber dynamisch aus einem Pool vergeben werden. Die theoretischen Grundlagen zum DHCP-Server können Sie in Kapitel 5.5, DHCP, nachlesen. DHCPServer- Modulkonfiguration Das Modul Server • DHCP-Server muss eventuell leicht an die jeweilige Installation des DHCP-Servers angepasst werden. In der siegfried-Installation auf der Buch-DVD befindet sich der ISC DHCPD in der Version 3.0.1. Mit einem Klick auf Modulkonfiguration am oberen linken Rand der Seite erhalten Sie eine Maske mit den wichtigsten Schnittstellen des Webmin und des DHCP-Servers (vgl. Abbildung 14.42). Im unteren Teil der Seite befindet sich die Systemkonfiguration. Die vom Webmin verwendete Konfigurationsdatei für den ISC DHCP-Server 3.0.1 ist nicht die standardmäßige /etc/dhcpd.conf, sie heißt /etc/dhcp3/dhcpd.conf. Das Binärprogramm zum Starten des Servers ist nicht /usr/sbin/dhcpd, sondern /usr/sbin/dhcpd3. Ebenso heißen die Kommandos zum Starten und Stoppen des Servers anders: Statt /etc/init.d/dhcp start und /etc/init.d/dhcp restart habe ich für siegfried die Dateien /etc/init.d/dhcp3-server start und /etc/init.d/dhcp3-sever restart in das Modul integriert. Der richtige Name der Lease-Datei lautet in diesem Fall

/var/lib/dhcp3/dhcpd.leases. In dieser Datei stehen Informationen zur Vergabe und Überwachung der jeweiligen Gültigkeitsdauer einer frei vergebenen Netzwerkadresse. Die Schnittstellen, an denen DHCP läuft können Sie hier eindeutig festlegen. Mehrere Netzwerkkarten werden dabei durch ein Leerzeichen getrennt. Die entsprechenden Dateien in Ihrem System sollten je nach verwendeter Version des DHCP-Servers so wie oben beschrieben, zumindest aber sehr ähnlich benannt sein. Wenn sie erst einmal eingetragen sind, merkt sich der Webmin für die Zukunft, wo sie zu finden sind. SUSE SUSE glänzt mit einer Beispielkonfiguration des ISC DHCP-Servers. Stören Sie sich nicht an den bereits vorhandenen Subnets und Hosts! So lange sich die definierten Subnets nicht mit Ihrem LAN überschneiden, sind sie nicht hinderlich.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.42 DHCP-Server-Modulkonfiguration Die Webseite des Moduls Server • DHCP-Server ist in drei Bereiche unterteilt (vgl. Abbildung 14.43). Im oberen Teil werden die Subnetze definiert, für die der DHCP-Server zuständig sein soll. Im mittleren Bereich werden dann die einzelnen Rechner den im oberen Teil festgelegten Netzen zugeordnet, oder ihnen werden direkt IP-Adressen zugewiesen. Die Schaltflächen im unteren Abschnitt sind von besonderem Interesse. Mit dem Button Liste aktive Vergaben auf erhalten Sie einen Überblick über die aktuell vergebenen Adressen, soweit es sich nicht um mittels Hosteintrag statisch vergebene Adressen handelt. Mit einem Klick auf Server starten bzw. Änderungen anwenden starten Sie den DHCP-Server. Die Schaltfläche wechselt in Abhängigkeit davon, ob der DHCP-Dienst gerade läuft oder nicht. Ein Klick auf diese

Schaltfläche ist unbedingt erforderlich, wenn Änderungen in der Konfiguration gemacht wurden.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.43 Überblick über den DHCP-Server In der Maske, die sich hinter Bearbeite Client-Einstellungen verbirgt, werden globale Vereinbarungen getroffen, die dann an alle Subnetze vererbt werden. Einige Einstellungen (z. B. den Routingeintrag) könnten Sie auch hier vornehmen, allerdings bevorzuge ich wegen der besseren Übersichtlichkeit die Konfiguration des einzelnen Subnetzes an einer einzigen Stelle. Um Fehler zu vermeiden, sollten Sie trotzdem zumindest sinnlose und falsche Einträge löschen (vgl. Abbildung 14.44).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.44 Globale DHCP-Optionen Sie möchten einen kleinen DHCP-Server für Ihr Büro zu Hause aufsetzen. In Ihrem Büro stehen drei Computer und der DHCP-Server. Zusätzlich bringen Sie manchmal Laptops aus der Firma mit nach Hause. Die Laptops sind von den Administratoren in Ihrer Firma so konfiguriert, dass sie ihre Netzwerkkonfiguration per DHCP aus dem Netz beziehen. Zwecks Datenaustausch möchten Sie die Laptops schnell in Ihr LAN integrieren, ohne die Konfiguration ändern zu müssen. Außerdem sollen im Moment noch nicht genau bestimmbare DHCP-Clients in Zukunft per DHCP als Teilnehmer in Ihr LAN integriert werden. Bestandsaufnahme Die wichtigsten Informationen für die Kommunikation in Ihrem LAN sind natürlich die IPAdresse und die Netzwerkmaske. Dieses Beispiel behandelt das Netz 192.168.1.0/255.255.255.0. Den Computern Rechner1, Rechner2 und Rechner3 soll anhand der MAC-Adresse eine feste IP-Adresse (192.168.1.1, 192.168.1.2, 192.168.1.3) zugeordnet werden. Die noch unbekannten Laptops aus der Firma und andere Netzwerkkomponenten sollen mit einer IP-Adresse ab 192.168.1.201 versorgt werden. Subnetz Mit einem Klick auf Ein neues Subnet hinzufügen legen Sie ein Subnetz für Ihr LAN an. Sie können eine Beschreibung für das Netz eintragen. Dann tragen Sie die Netzwerkadresse und die Netzwerkmaske Ihres Netzwerkes zu Hause ein. Im nächsten Schritt wird ein

Adressbereich für die Clients bestimmt, die eine freie IP-Adresse vom DHCP-Server bekommen sollen. Ich vergebe in diesem Beispiel absichtlich nur Adressen von 192.168.1.201 bis 192.168.1.250, da ich die Adressen bis 192.168.1.254 für zukünftige administrative Aufgaben freihalten möchte. Mit einem Klick auf Erstellen schreiben Sie die Konfiguration des DHCP-Servers (vgl. Abbildung 14.45).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.45 DHCP-Subnet für das LAN zu Hause Die Konfiguration für das DHCP-Subnet ist nun fertig. Mit einem Klick auf das Subnet 192.168.1.0 kommen Sie in eine der bekannten ähnliche Maske für ein neues Subnet, in der Sie nun die Konfiguration überprüfen und Änderungen vornehmen können. Hosteinträge Im nächsten Schritt werden die Einträge für die PCs Rechner1, Rechner2 und Rechner3 festgeschrieben. Sollten diese DHCP-Clients momentan eine Anfrage an den aktivierten DHCP-Server stellen, würden sie eine Adresse aus dem Bereich 192.168.1.201 bis 192.168.1.250 bekommen. Aus diesem Grund legen Sie mit einem Klick auf Einen neuen Host hinzufügen jeweils einen Eintrag für jeden der drei Rechner an (vgl. Abbildung 14.46). Wichtige Felder sind insbesondere der Rechnername, die IP-Adresse und die EthernetAdresse. In Kapitel 9, Betriebssysteme einrichten, wird beschrieben, wie Sie diese ermitteln. Die Hosteinträge können Sie aus der allgemeinen Übersicht mit einem Klick auf den Hostnamen ändern oder löschen. Der DHCP-Server darf selber kein DHCP-Client sein. Wenn dieser Server gebootet oder das Netzwerk neu gestartet wird, dann fragt der DHCP-Client nach einer Konfiguration auf IPEbene. Eine Antwort kann es nicht geben, da der DHCP-Server noch nicht gestartet ist. Dieser wird auch nicht starten, da der Netzwerkadapter (eth0) noch nicht aktiv ist. Ein Teufelskreis!

Hier klicken, um das Bild zu Vergrößern Abbildung 2.46 DHCP-Hosteintrag erstellen Einige wichtige Funktionen des DHCP-Servers fehlen allerdings noch. So haben die Clients im LAN beispielsweise noch keinen Routingeintrag. Mit einem erneuten Klick auf das Subnet 192.168.1.0 kommen Sie in eine Maske, in der Sie die Schaltfläche Bearbeite ClientEinstellungen anklicken. Sie erhalten die Gelegenheit, abweichend von den globalen Einstellungen nur für das Subnet (vgl. Abbildung 14.44) Vereinbarungen zu treffen. Hier sollten Sie – soweit vorhanden – den Standardrouter, den Domänennamen, den DNS-Server oder einen anderen Server eintragen, der dem DHCP-Client bekannt gemacht werden soll (vgl. Abbildung 14.47). Interessant ist auch der Eintrag für einen Zeitserver oder NTP1 Server. Diese Dienste werden ausführlich in Abschnitt 14.12, Timeserver beschrieben.

Hier klicken, um das Bild zu Vergrößern

Abbildung 2.47 Beispiel für DHCP-Optionen Ein Eintrag im DHCP-Server bedeutet nicht, dass der DHCP-Client auch etwas mit dieser Information anfangen kann. Eventuell nimmt er sich nur einige für ihn interessante Informationen und ignoriert den Rest. Der DHCP-Server überprüft nicht, ob der Client die ihm gegebenen Optionen auch richtig verwertet. SUSE Bei SUSE muss in jedem Fall zusätzlich die Schnittstelle festgelegt werden, an der der DHCP-Server horchen soll. Dieses geschieht nach einem Klick auf Edit Network Interface. fertig! Das Subnet und die Hosts sind nun vollständig beschrieben (vgl. Abbildung 14.48). Bevor Sie den DHCP-Server testen, vergessen Sie bitte nicht, Ihre Konfiguration mit einem Klick auf Änderungen anwenden bzw. Server starten zu aktivieren. Start beim Booten Der Dienst DHCP kann auch direkt beim Booten automatisch gestartet werden. Dazu markieren Sie den Dienst dhcpd (SUSE) bzw. dhcp3-server (siegfried) im Modul System • System-Start und -Stop und klicken auf Start Selected On Boot.

Hier klicken, um das Bild zu Vergrößern

Abbildung 2.48 Der DHCP-Server arbeitet für Ihr LAN.

2.6 Samba als Fileserver
Samba ist ein sehr mächtiger Dienst mit vielfältigen Möglichkeiten. Sie können den Client über Samba-Netzwerkfreigaben anbieten oder eine ganze Windows-Domäne mit Samba abbilden. Ich konzentriere mich in diesem Kapitel auf die Eigenschaft von Samba als Dateiserver. In fast allen Fällen müssen sich die Benutzer gegenüber Samba authentifizieren. Das bedeutet, dass Sie dem Samba-Server mittels Benutzernamen und Kennwort glaubhaft machen, eine bestimmte Leistung des Servers in Anspruch nehmen zu dürfen. Dieses kann der Server selbst übernehmen oder aber an eine vertraute Instanz deligieren1 . Erste Wahl für die Administration des Samba-Servers wäre eigentlich das Samba Web Administration Tool (SWAT). Aus Gründen der Einheitlichkeit beschränke ich mich aber auf den Webmin. Wenn Sie noch tiefer in das Thema Samba oder SWAT einsteigen möchten, finden Sie auf der Buch-DVD im Verzeichnis /dokumente/linux zusätzliche Dokumentationen. Bei der Konfiguration von Samba auf siegfried ist mir Anpassungsbedarf in der Perl-Bibliothek samba-lib.pl aufgefallen. Bei einem auf Debian basierenden LinuxSystem könnte der Webmin Probleme mit Samba (z. B. bei der Benutzerkonvertierung) bekommen. In diesem Fall können Sie versuchsweise die Bibliothek durch die Datei, die auf der Buch-DVD im Verzeichnis /software/administration/linux/webmin/perl liegt, ersetzen. Sie finden auf den folgenden Seiten eine Anleitung, mit der es Ihnen gelingen wird, Ihren Netzwerkserver mit Samba zum Fileserver zu machen und die freigegebenen Verzeichnisse von Clients nutzen zu lassen.

2.6.1 Linux als Server
Im Modul Server • Windows Dateifreigabe erhalten Sie zunächst eine Übersicht über den Samba-Dienst. Vielleicht sind Sie überrascht, dass per default die Heimatverzeichnisse aller Benutzer freigegeben sind (vgl. Abbildung 14.50). Das bedeutet allerdings nicht, dass die Benutzer sich mit dieser Freigabe bereits verbinden können. Es scheitert noch an der Benutzerauthentifizierung. Für einen Benutzer auf Betriebssystemebene existiert nicht automatisch auch ein entsprechender Zugriff auf dessen Heimatverzeichnis über Samba. Arbeitsgruppe und Domäne Eventuell betreiben Sie in Ihrem LAN bereits eine Arbeitsgruppe oder Domäne? In diesem Fall empfiehlt es sich, den Namen als Arbeitsgruppe des Moduls Server • Windows Dateifreigabe • Windows Einstellungen einzutragen (vgl. Abbildung 14.49).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.49 Globale Windows-Einstellungen

Hier klicken, um das Bild zu Vergrößern Abbildung 2.50 Überblick über den Samba-Server Die Seite der Samba-Freigabeverwaltung ist unterteilt in mehrere Bereiche, wie Sie es auch schon von anderen Modulen kennen. Im ersten Teil befinden sich sämtliche SambaFreigaben. Der zweite Abschnitt beinhaltet die globale Konfiguration von Samba. Im dritten Bereich werden die Samba-Benutzer verwaltet. Ganz unten auf der Seite befinden sich die Schaltflächen Samba Server neu starten und Stop Samba Servers, mit denen der Dienst gestartet und angehalten werden kann. Änderungen der globalen Konfiguration von Samba müssen immer durch einen Neustart des Servers aktiviert werden. Samba-Benutzer Die Benutzer des Netzwerkservers können, müssen aber nicht zwangsläufig einen SambaZugriff haben. Sie richten zunächst Systembenutzer mit dem Modul System • Benutzer und Gruppen ein. Sollen sich diese Benutzer nicht per telnet oder secure shell (ssh) anmelden dürfen (also reine Samba-Benutzer), kann die Systemanmeldung mit der Einstellung Keine Anmeldung erlaubt verhindert werden. Mit Samba-Mitteln wird auf Wunsch zu einem Systembenutzer ein entsprechender Samba-Benutzer geschaffen. Der Samba-Benutzer erhält durch die Funktionalität Server • Windows-Dateifreigabe • Samba Benutzer und Passwörter bearbeiten ein Samba-Passwort. Verschlüsselung Mit einem Klick auf Authentifizierung gelangen Sie zu den Passworteinstellungen (vgl. Abbildung 14.51). Hier müssen Sie entscheiden, ob Samba ein verschlüsseltes Passwortverfahren verwenden soll. Ich empfehle Ihnen, diese Option zu aktivieren und beschreibe das weitere Vorgehen ausführlich. Der Nachteil dieses Sicherheitsgewinns besteht im Wesentlichen darin, dass Sie die Passwörter nach einer Konvertierung der Systembenutzer zu Samba-Benutzern einmal neu vergeben müssen. Windows verwendet die Verschlüsselung der Passwörter ab den Versionen Windows 95b, Windows 98 und Windows NT 4 Service Pack 3.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.51 Einstellungen für das Samba-Passwort Sie sollten die Systembenutzer und die Samba-Benutzer möglichst synchron halten. Der Vorteil einer besseren Übersichtlichkeit liegt auf der Hand. Mit einem Klick auf Unix Benutzer zu Samba Benutzern konvertieren werden alle aktuellen Systembenutzer auch als Samba-Benutzer eingerichtet (vgl. Abbildung 14.52). Dabei wird jedoch wegen der gewählten Verschlüsselung das Systempasswort nicht automatisch übernommen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.52 Samba-Benutzer aus dem System konvertieren Sie sollten sich natürlich auch Gedanken um die Sicherheit machen und deshalb beim Passwort für neu erstellte Benutzer die Auswahl Benutzer gesperrt treffen. Wenn nicht, kann sich ein Fremder mit einem ihm bekannten Benutzernamen ohne Passwortabfrage über Samba am System anmelden. Benutzer aktivieren Mit einem Klick auf Samba Benutzer und Passwörter bearbeiten könnten Sie einen auf diese Weise konvertierten Benutzer aktivieren und ihm ein Samba-Passwort geben. Wenn Sie ein gemeinsames Passwort für den System- und den Samba-Benutzer vergeben möchten, sollten Sie zunächst die im Folgenden beschriebene Benutzersynchronisation einstellen und danach mit dem Modul System • Benutzer und Gruppen ein einheitliches Passwort für beide vergeben. Der Samba-Benutzer wird durch diesen Schritt aktiviert. Automatik Sie sollten den Webmin jetzt so einstellen, dass eine Aktion bei einem Systembenutzer mit dem Modul System • Benutzer und Gruppen automatisch auch eine Änderung des entsprechenden Samba-Benutzers mit sich bringt. Hierzu bedienen Sie sich des Links Automatische Unix und Samba Benutzer Synchronisation konfigurieren (vgl. Abbildung 14.53). Sollten Sie einen Systembenutzer mit dem Webmin anlegen oder vom System entfernen, dann passiert Entsprechendes automatisch mit dem Samba-Benutzer. Falls Sie

andere Tools für die Benutzerverwaltung verwenden (z. B. den YaST2 von SUSE), greift dieser Mechanismus nicht.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.53 Automatischer Abgleich der Benutzer Heimatverzeichnisse Jeder Benutzer kann sich nun bereits sein Heimatverzeichnis als Freigabe auf dem Netzwerkserver an seinen Arbeitsplatz holen. Er kann dort Dateien anlegen, modifizieren und löschen. Ich vermute, diese Freigabe wird Ihnen noch nicht genügen. Denn momentan kann ein Benutzer zwar sein Heimatverzeichnis nutzen, wirklich reizvoll wird Samba aber erst bei einer gemeinsamen Zugriffsmöglichkeit von zwei und mehr Benutzern auf eine Freigabe. Wie eine solche Freigabe den Benutzern bereitgestellt wird, möchte ich mit einem kleinen Beispiel veranschaulichen. Die Benutzer klaus und marie sind bereits Samba-Benutzer und nutzen von ihren WindowsPCs alle Vorzüge der Freigabe ihrer Heimatverzeichnisse. Da die beiden beim Arbeiten gerne Musik hören, möchten sie nun zusätzlich eine Freigabe mit dem Namen mp3 erstellen. Auf diese soll von allen Benutzern im Netzwerk aus lesend zugegriffen werden können. Klaus soll außerdem neue Musikdateien hinzufügen und alte löschen können. Freigabe erstellen Die Freigabe wird durch einen Klick auf Neue Dateifreigabe erstellen möglich (vgl. Abbildung 14.54). Sie bestimmen den Freigabenamen und legen das Verzeichnis /daten/musik für die Freigabe fest. Dieses Verzeichnis erstellen Sie z. B. mit dem Modul Sonstiges • Dateimanager. Ein Klick auf das von Windows bekannte Ordnersymbol mit der Unterschrift Neu öffnet ein Fenster, in dem Sie zunächst das Verzeichnis /daten eintragen. Entsprechend legen Sie im Anschluss das Verzeichnis /daten/musik an.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.54 Verzeichnisse mit Samba freigeben Die Berechtigungen bei Samba-Freigaben sind eine mögliche Fehlerquelle. An zwei unabhängigen Stellen wird überprüft, ob der Nutzer einer Dateifreigabe Zugriff auf die Daten haben darf. Zunächst entscheidet Samba, welche Rechte ein Benutzer besitzt. Hinzu kommen die Mechanismen des Betriebssystems, die zusätzlich jeden Schreib- und Lesezugriff überwachen. Ich habe mich in meinem Beispiel für eine sehr einfache Konfiguration der Rechte entschieden. Zur Demonstration der Funktionalität ist das ausreichend; für einen professionellen Einsatz würden Sie sich um die Sicherheit sicherlich mehr Gedanken machen müssen. Systemberechtigungen Für ein vom Webmin neu angelegtes Verzeichnis wird in der Regel nur der Benutzer root eine Schreibberechtigung haben. Da zumindest Klaus Musikdateien anlegen möchte, benötigt er über Samba im System einen Schreibzugriff für das Verzeichnis. Es gibt mehrere Möglichkeiten, diesen Zugriff zu ermöglichen. Der einfachste und schnellste Weg dürfte sein, allen Systembenutzern Vollzugriff auf das Verzeichnis mit den Musikdateien zu gewähren. Dieses geschieht durch das Kommando chmod a+r+w+x /daten/mp3., das Sie im Modul Sonstiges • Kommandozeile eingeben mit einem Klick auf Führe Befehl aus im System absetzen (vgl. Abbildung 14.55).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.55 Ein Kommando in der root-Shell ausführen Wenn der Benutzer klaus neue Verzeichnisse für Musikdateien unterhalb von /daten/musik anlegt, sollten auch diese den Vollzugriff für andere Benutzer erlauben, denen Samba dieses gestattet. Ein Klick auf die neue Freigabe mp3 lässt Sie zunächst die Freigabedetails einsehen. Die Standardvorgaben für über Samba angelegte Dateien und Verzeichnisse sind über den

Link Dateiberechtigungen einsehbar (vgl. Abbildung 14.56). Die Auswahl 777 jeweils für den Unix Datei- und Verzeichnismodus gewährt den Vollzugriff auf Systemebene.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.56 Vorgaben für neue Dateien Samba-Berechtigungen Mit dem Link Sicherheit und Zugriffskontrolle richten Sie die gewünschten Zugriffsmöglichkeiten auf die Samba-Freigabe ein (vgl. Abbildung 14.57). Standardmäßig haben alle Benutzer nur Leseberechtigung. Der Benutzer klaus bekommt nun zusätzlich das Schreibrecht. Aus der Auswahl, die bei einem Klick auf die drei Punkte bei Lese/Schreibberechtigung (Benutzer) erscheint, könnten neben klaus natürlich auch noch andere Benutzer ausgewählt werden. Ebenso hätten Sie an dieser Stelle mit der Option Beschreibbar die Möglichkeit, einen Schreibzugriff für alle Samba-Benutzer zu ermöglichen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.57 Sicherheitseinstellungen für die Samba-Freigabe

2.6.2 Windows als Client
Was nützt schon die schönste Samba-Freigabe auf Ihrem Netzwerkserver, wenn sie keiner in Anspruch nimmt? In diesem Abschnitt möchte ich beschreiben, wie Sie Windows-PCs als Samba-Clients an den Netzwerkserver anhängen. Samba-Version Es ist möglich, dass Ihr Server eine neuere Samba-Version hat als der Client und andersherum. Das ist grundsätzlich kein Problem. Der Mechanismus funktioniert so: Server und Client verständigen sich auf den größten gemeinsamen Nenner. Meiner Erfahrung nach funktioniert das reibungslos. Selten habe ich Fehler im Zusammenspiel von einem aktuellen Samba mit einer mehrere Jahre älteren Version beobachtet. einfacher Zugriff Wenn Sie nur kurz auf die Freigabe zugreifen möchten, geben Sie unter Start • Ausführen... den Freigabenamen in der Form \\<Server-Name>\<Freigabe> an. Sie werden ggf. nach einem gültigen Samba-Benutzernamen und dem dazugehörigen Passwort gefragt. Bei erfolgreicher Authentifizierung öffnet sich ein Fenster, das Sie wie unter Windows gewohnt für den Datenaustausch nutzen können. Netzlaufwerke

Sie möchten vermutlich häufiger auf die Freigabe des Netzwerkservers zugreifen, aber nicht jedes Mal einen so großen Aufwand treiben. Sie sollten daher ein Netzlaufwerk einrichten. Beim Einbinden des Netzlaufwerkes können Sie bestimmen, ob beim nächsten Start die Verbindung wieder hergestellt werden soll. Um das Ganze nicht zu einfach zu machen, bietet Windows Ihnen diese Funktionalität gleich an drei verschiedenen Stellen an. Sie erhalten die Möglichkeit bei einem Klick mit der rechten Maustaste auf Arbeitsplatz oder auf die Netzwerkumgebung. Wenn Ihnen das noch nicht reicht, können Sie auch im WindowsExplorer unter Extras • Netzlaufwerk verbinden... zum gleichen Ziel gelangen. Ein Netzlaufwerk bekommt genauso wie ein lokales Laufwerk einen Laufwerksbuchstaben, z. B. z:\. Sie können bequem Ihre Dokumente auf das Laufwerk z:\ und damit letztlich auf dem Netzwerkserver speichern.

2.6.3 Linux als Client
Immer häufiger kommt auch zu Hause auf dem Desktop ein Linux-Betriebssystem zum Einsatz. Leistungsstarke Office-Produkte wie OpenOffice.org sind für viele Anwender Anreiz genug, diese Lösung dem lizenzpflichtigen Microsoft Office vorzuziehen. Natürlich sollen alle Textdateien sowohl bei der Arbeit mit Microsoft als auch bei der Arbeit mit einem LinuxPC zur Verfügung stehen. In diesem Fall verwenden Sie Linux als Samba-Client. Konqueror Ein sehr mächtiges Linux-Werkzeug kann aus der KDE heraus mit einem Klick auf die Weltkugel gestartet werden: der Konqueror. Er dient sowohl als Webbrowser als auch als Dateisystembrowser. Es hängt lediglich davon ab, was in der Adresszeile des Konqueror eingetragen wird. Mit file:/ erhalten Sie Zugriff auf das Dateisystem, mit http://<URL> können Sie im LAN oder im Internet surfen und mit smb://<Server>/<Freigabe> nutzen Sie den eingebauten Samba-Client (vgl. Abbildung 14.58). Der einzige Nachteil besteht darin, dass die Freigabe nicht als Filesystem eingehängt ist, sondern nur über den Konqueror einsehbar ist. Das Ablegen von OpenOffice-Dokumenten ist also nur über Umwege möglich. Für viele kleinere Anwendungen sollte das allerdings völlig ausreichen. Samba-Filesystem Filesysteme einzuhängen – egal ob lokal oder über das Netzwerk – ist unter Linux grundsätzlich Sache des Benutzers root. Falls Sie nicht mit dem vi arbeiten möchten, empfehle ich Ihnen, zuerst den Webmin auf dem Linux-PC zu installieren. Danach können Sie den benötigten Mountpoint mit dem Webmin-Modul Sonstiges • Datei-Manager oder anderenfalls mit dem Kommando mkdir -p <Verzeichnis-Name> leicht erstellen. Im folgenden Beispiel möchte Marie an ihrem Linux-PC auf die Samba-Freigabe mp3 des Netzwerkservers zugreifen. Dazu muss sie auf ihrem Linux-PC als Benutzer root angemeldet sein. Sie legt zunächst einen Mountpoint an:
mkdir -p /mnt/musik

Im nächsten Schritt hängt sie die Netzwerkfreigabe in ihr lokales Dateisystem ein:
mount -t smbfs -o username=marie,password=<Samba-Passwort> //<Server-Name>/mp3 /mnt/musik

Nachdem Marie nun die Daten aus der Freigabe nicht mehr benötigt, hängt sie die Freigabe wieder aus:
umount /mnt/musik

Hier klicken, um das Bild zu Vergrößern Abbildung 2.58 Konqueror als Samba-Client Dieses Verfahren hat zwei wesentliche Nachteile. Es ist kompliziert, und die LinuxBenutzerin marie2 benötigt regelmäßig Rootrechte. Es geht aber auch anders. Sie geben mithilfe des Webmin-Moduls System • Lokale und Netzwerk-Dateisysteme Marie die Möglichkeit, ohne weitere Hilfe eines Administrators die Samba-Freigabe selbstständig einzuhängen. Dazu wählen Sie Windows Networking Filesystem (smbfs) und klicken auf Füge Mount hinzu. Im nun folgenden Dialog wählen Sie zunächst einen Mountpoint im Heimatverzeichnis der Benutzerin marie, z. B. /home/marie/jazz. Sie wählen Speichern, um einen Eintrag in der Datei /etc/fstab zu erzeugen. Treffen Sie die Auswahl Nicht mounten, denn der Zugriff auf die Freigabe soll später von der Benutzerin marie initiiert werden. Die Informationen Server-Name und Freigabename werden selbstverständlich benötigt. Entscheidend ist die Auswahl der Option Erlaube Nutzern das Mounten des Dateisystems. Damit gewährt root auch anderen Benutzern, genau diesen Mount in seinem Namen auszuführen (vgl. Abbildung 14.59).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.59 Linux-Clienteinstellungen für Samba Den automatisch vom Webmin angelegten Mountpoint kann die Benutzerin marie so einfach nicht nutzen. Das Verzeichnis gehört noch dem Benutzer root. Um das Verzeichnis an marie zu verschenken, führt root folgendes Kommando aus:
chown marie:users /home/marie/jazz

Befindet sich die Benutzerin marie nun in ihrem Heimatverzeichnis /home/marie, kann sie auf die Netzwerkfreigabe mp3 mit dem Kommando mount jazz zugreifen. Mit dem SambaPasswort der Samba-Benutzerin marie authentifiziert sie sich gegenüber dem Netzwerkserver. mit dem Editor Jetzt haben Sie mit dem Webmin einem Nicht-root-Benutzer die Möglichkeit geschaffen, auf Samba-Freigaben zuzugreifen. Wenn Sie mit dem vi vertraut sind, können Sie aber auch einfach eine einzelne Zeile an die Datei /etc/fstab anhängen, um dasselbe Ergebnis zu erzielen:
//siegfried/mp3 /home/marie/jazz smbfs user,noauto 0 0

Den Editor müssen Sie wegen eines Fehlers im Webmin auch immer dann verwenden, wenn Sie auf dem gleichen Linux-PC dieselbe Samba-Freigabe für zwei unterschiedliche Benutzer in der Datei /etc/fstab einrichten möchten. Vielleicht fragen Sie sich, warum ich den Mount für die Freigabe mp3 nicht gleich mit der Option Speichern und Mounten beim Bootup ausführen lasse? Um das zu tun, müsste ich einen Anmeldungsnamen und ein Anmeldungskennwort speichern. Dieses möchte ich möglichst umgehen. Das Kennwort würde wie der Name in Klarschrift in der Datei /etc/fstab stehen. Aus diesem Grund sollten Sie abwägen, ob Sie auf den Komfort des Mountens von Samba-Freigaben beim Boot zu verzichten und lieber einmal häufiger das Samba-Passwort eintippen oder nicht. LinNeighborhood

Wie man das Programm LinNeighborhood als Samba-Client verwendet, habe ich in Kapitel 10.1.4, Zusatzprogramme, beschrieben.

2.6.4 Windows als Server
Eine Beschreibung von Freigaben unter Windows-Betriebssystemen findet sich in Kapitel 11.2.4, Drucker- und Dateifreigaben. Da diese thematisch mit dem Netzwerkserver nur indirekt zu tun haben, soll an dieser Stelle auch ein Verweis auf dieses Kapitel genügen.

2.7 Drucken im Netzwerk
Ziel dieses Abschnitts ist es, den Benutzern einen zentralen Druckserver im Netzwerk anzubieten. Nicht an jedem Computer gibt es einen Drucker, von besonderen Modellen wie einem Farbdrucker ganz zu schweigen. Jeder Benutzer kann mit dem Druckserver bequem von seinem Arbeitsplatz aus auf einem entfernten Drucker seine Dokumente auf Papier bringen. Sollte der Drucker kurzzeitig nicht verfügbar sein, weil er z. B. gar nicht eingeschaltet ist, dann speichert der Netzwerkserver die Daten so lange, bis der Drucker den Auftrag annehmen kann. Printing Systems Hier setzen Drucksysteme an. Sie stellen im Netzwerk Druckerwarteschlangen (engl. queues) zur Verfügung, in die Clients Druckaufträge einreihen können. Aufträge werden zunächst gespeichert und nacheinander zum Drucker gesendet. Dieses Verfahren bezeichnet man auch als Druckspooling. CUPS Für die UNIX-Welt allgemein existieren mehrere Drucksysteme. Es gibt zum Beispiel den Berkeley Line Printer Daemon (lpd) oder das AT&T Line Printer System. Bei SUSE 9.0 wird als Standard das Common UNIX Printingsystem (CUPS) installiert. Dieses Printing System unterstützt das moderne IPP und bietet gleichzeitig bei Bedarf die gewohnten Kommandozeilentools älterer Drucksysteme1 . CUPS wurde von Easy Software Products entwickelt und steht unter der GPL. Samba Samba bietet eine Schnittstelle für Druckaufträge zu einem Printingsystem. Damit baut man eine unnötige Schicht in das ohnehin komplizierte netzwerkbasierende Drucken ein. Das Drucken funktioniert, allerdings ist die Einrichtung der richtigen PostScript-Treiber nicht gerade einfach. Die automatische Treiberinstallation über eine Samba-Freigabe ist möglich, allerdings für kleinere Netzwerke wenig lohnend. Ich empfehle daher ein moderneres Verfahren, das sich vielerorts durchgesetzt hat. IPP Das Internet Printing Protocol (IPP) basiert auf dem Hyper Text Transfer Protocol (HTTP). Die Protokolle sind eng verwandt, nur werden mit dem IPP an Stelle des Inhalts von Internetseiten Druckdaten transportiert. CUPS nutzt damit ein Protokoll, das sich als Standard für alle Betriebssysteme durchsetzen könnte. Samba wird nicht benötigt, da auch Windows

2000 und XP das Internet Printing Protocol kennen. Unter Windows Windows98/ME steht Ihnen IPP erst nach einem Update (http://www.microsoft.com/Windows98/downloads/content/WUPreviews/IPP/Default.asp) zur Verfügung.

2.7.1 Drucker am Server einrichten
Der Zugriff auf CUPS geschieht ähnlich dem Zugriff auf den Webmin mit dem Browser. Standardmäßig beschränkt sich der Zugriff aus Sicherheitsgründen auf einen Browser, der auf dem Server selbst laufen muss. Ein entfernter Zugriff ist also nicht möglich. Wenn Sie den Zugriff über das Netzwerk ermöglichen möchten, müssen Sie die Datei /etc/cups/cupsd.conf editieren. cupsd.conf Die Datei /etc/cups/cupsd.conf ist die zentrale Konfigurationsdatei des CUPS. Die Konfiguration erinnert etwas an die des Apache-Webservers. Die Einträge sind ähnlich aufgebaut. Es beginnt mit dem CUPS-Rootverzeichnis <Location />. Um nun vom LAN auf dieses Verzeichnis zugreifen zu können, muss der Eintrag Allow from @Local vorhanden sein.
<Location /> Order Deny,Allow Deny From All Allow from 127.0.0.1 Allow from @Local </Location>

Es ist möglich, dass einige Funktionalitäten des CUPS in tieferen Verzeichnissen als dem CUPS-Rootverzeichnis mit besonderen Sicherheitsmerkmalen versehen sind. Falls keine weiteren Einträge als dieser für das CUPS-Rootverzeichnis existieren würden, hätte jeder aus dem LAN Vollzugriff auf die Administration des CUPS. Ist der Abschnitt <Location /admin> vorhanden und fehlt der entsprechende Eintrag @Local, so ist z. B. das Anlegen neuer Drucker von Rechnern aus dem LAN aus nicht möglich. SUSE SUSE 9.0 verwendet eine weitere kleine Hürde in der Datei /etc/cups/cupsd.conf für den Bereich <Location /admin>:
AuthType BasicDigest AuthClass Group AuthGroupName sys

Diese Einträge führen dazu, dass nur Benutzer aus der Gruppe sys administrative Aufgaben wahrnehmen können. Zusätzlich erfolgt die Authentifizierung gegen die Datei /etc/cups/passwd.md5, die zunächst gar nicht existiert. In meinem privatem Netzwerk zu Hause sind diese Einschränkungen nicht notwendig, deshalb habe ich dieses

Sicherheitsfeature durch Auskommentieren der Zeilen mit dem Zeichen »#« vorübergehend deaktiviert. Nach Änderungen müssen Sie CUPS neu starten. Das geschieht – da Sie nun sowieso schon auf der Kommandozeile sind – bei SUSE mit dem Kommando /etc/init.d/cups restart, bei Debian verwenden Sie /etc/init.d/cupsys restart! Mit dem Webmin können Sie über System • System-Start und -Stop • cups(ys) • Neustart jetzt dieselbe Funktion ausführen. Mit der URL http://<Netzwerkserver>:631 können Sie nun auf CUPS zugreifen (vgl. Abbildung 14.60). Online-Hilfe Die CUPS-Administration ist in fünf Kategorien unterteilt. Die Online-Hilfe ist eine Sammlung von Webseiten und PDF-Dokumenten, die gut strukturierte Information bei Fragen und Problemen bietet. Von besonderem Interesse dürften das Software Benutzerhandbuch und das Software Administrationshandbuch sein. Den Überblick über das Common Unix Printing System sollten Sie sich gönnen, wenn Sie etwas über die Geschichte des Druckens und von CUPS erfahren möchten.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.60 Die CUPS-Oberfläche Das paket cupsys-driver-gimpprint liefert unter Debian eine größere Auswahl an Druckertreibern für CUPS. Drucker hinzufügen Um CUPS einen Drucker bekannt zu machen, klicken Sie auf Einrichtungsaufgaben • Drucker hinzufügen. Sie geben dem Drucker einen Namen, der nicht zu kompliziert sein sollte. Verzichten Sie außerdem auf Leerzeichen und Sonderzeichen! Standort und Beschreibung sind nur zur Information der Benutzer gedacht. Im nächsten Schritt wählen Sie die Anschlussart des Druckers aus. Es gibt natürlich die Möglichkeit, einen Drucker lokal am parallelen, seriellen oder USB-Port anzuschließen. Aber auch das Drucken auf einem anderen Netzwerkdrucker kann hier eingestellt werden. Hier wird zum einen das HP JetDirect Format unterstützt. Dieses Format liefert Druckaufträge

unmittelbar an einen Netzwerkdrucker, der selber eine IP-Adresse besitzt und am Port 9100 Aufträgen lauscht. Außerdem könnten Sie hier einen anderen IPP-Drucker auswählen. Eine weitere nützliche Option ist das Drucken per Samba auf einen freigegebenen Drucker an einem Windows-PC. Natürlich wäre auch ein direktes Drucken ohne Umweg über den Netzwerkserver möglich, Sie müssen sich dann aber immer darum kümmern, ob der PC und der Drucker auch eingeschaltet sind. Aus der Druckerwarteschlange auf dem Netzwerkserver wird gedruckt, wenn der Drucker wieder verfügbar ist. Im nächsten Schritt fragt CUPS Sie nach der genauen Konfiguration des Anschlusses. Hier kommt es nun darauf an, welchen Geräteanschluss Sie gewählt haben. Sie besitzen zwei Drucker. Den alten Nadeldrucker schließen Sie lokal am parallelen Port des Netzwerkservers an. Der andere Drucker ist an einem Windows-PC angeschlossen und über Samba mit dem Namen Farbdrucker freigegeben. Sie wählen als Anschluss für den lokalen Drucker zunächst den entsprechenden parallelen Port aus. Dann bestimmen Sie das Druckermodell und haben bereits den ersten Drucker eingerichtet. Für den Samba-Drucker müssen Sie zunächst noch eine Geräte-URI eintragen. Hier müssen Sie – je nachdem, wie der PC eingerichtet ist – die allgemeine Form für den Zugriff auf Samba-Freigaben einhalten:
smb://<PC>/<Name> smb://<Arbeitsgruppe>/<PC>/<Name> smb://<Benutzer>:<Passwort>@<PC>/<Name> smb://<Benutzer>:<Passwort>@<Arbeitsgruppe>/<PC>/<Name> Damit sind die beiden Drucker eingerichtet. Sie sollten nun mit einem Klick auf Drucker verwalten • Drucker Testseite den Erfolg Ihrer Arbeit überprüfen (vgl. Abbildung 14.61).

Hier klicken, um das Bild zu Vergrößern

Abbildung 2.61 Drucker verwalten mit CUPS Druckaufträge In der Kategorie Druckaufträge können Sie gerade aktuelle Druckjobs beenden und sich beendete Drucke anzeigen lassen.

2.7.2 PDF-Drucker einrichten
PDF ist ein Format, mit dem man Dokumente plattformunabhängig austauschen kann. Sie können unter Windows mit der kostenlosen Software FreePDF arbeiten. Diese Lösung ist allerdings nicht netzwerkfähig. Mit einem PDF-Netzwerkdrucker legen Sie die Dokumente auf dem Netzwerkserver ab und können dann z. B. über eine Samba-Freigabe darauf zugreifen. cups-pdf Ich habe mich für ein Projekt namens cups-pdf entschieden. Die aktuellen Quellen der unter der GPL stehenden Software sind im Internet auf der Seite http://cip.physik.uniwuerzburg.de/~vrbehr/cups-pdf zu finden. Einen kleinen Schönheitsfleck hat das Programm: Da cups-pdf Berechtigungen auf Dateiebene benötigt, darf der Dienst nicht wie sonst üblich im Namen des Benutzers lp agieren. Der Eintrag RunAsUser Yes in der Datei /etc/cups/cupsd.conf muss – falls vorhanden – durch RunAsUser No ersetzt werden. Damit läuft der Prozess cupsd mit Rootrechten, was ohne cups-pdf unnötig wäre. Bei siegfried ist cups-pdf bereits installiert. Die Installationsdatei finden Sie auf der BuchDVD im Verzeichnis /software/sonstiges/linux/cups-pdf. Kopieren Sie die Datei cupspdf_1.4.1.tar.gz auf den Netzwerkserver, z. B. in das Verzeichnis /tmp. Folgende Kommandos führen Sie danach bitte in einer Shell aus, um cups-pdf zu installieren:
cd /tmp tar -xzf cups-pdf_1.4.1.tar.gz cd cups-pdf-1.4.1 ./configure make make install cp extra/PostscriptColor.ppd.gz /usr/share/cups/model/

Druckertreiber Nach einem Neustart des Dienstes CUPS können Sie den PDF-Drucker einrichten. Sie klicken auf Drucker hinzufügen und wählen z. B. den Namen pdf für den neuen Drucker. Als Gerät wählen Sie den Virtual Printer (PDF Printer) aus der Liste. Die Wahl des Druckertreibers fällt nicht schwer. Grundsätzlich stellt jeder Postscript-Farbdrucker einen geeigneten Treibertyp für den PDF-Drucker dar. Ich habe Postscript • Generic Postscript Color Printer (en) getestet. Problemlos funktionierten auch die Postscript-Treiber für einen HP Color Laserjet.

Zielpfad Ausdrucke über diesen Drucker landen als Datei in einem Unterverzeichnis von /var/spool/cups-pdf/. Die Software versucht, den Druck einem Benutzer zuzuordnen und legt die Datei in einem Verzeichnis mit gleichem Namen ab. Gelingt dies nicht, landen die PDFDateien automatisch im Verzeichnis /var/spool/cups-pdf/ANONYMOUS. Tipp Wenn Sie dieses Verzeichnis – wie in Kapitel 14.6.1, Linux als Server, beschrieben – per Samba freigeben, können Sie schnell und leicht auf die frisch erzeugten PDF-Dokumente zugreifen.

2.7.3 Netzwerkdrucker am Client einrichten
Die Drucker sind am Server so konfiguriert, dass die Clients den Datenstrom ohne Aufbereitung (RAW) direkt an den Netzwerkserver senden könnten. Der Client kann sich dann schnell wieder um seine ureigenen Aufgaben kümmern. Es schadet allerdings nicht, wenn der Druck vom Client aufbereitet an den Server gesendet wird. CUPS erkennt in diesem Fall, dass ihm diese Arbeit bereits abgenommen wurde.

Windows
Auf einem Windows-Client können Sie nun über Systemsteuerung • Drucker • Drucker hinzufügen einen oder mehrere Netzwerkdrucker einrichten. Dabei erhalten Sie Anschluss an die Netzwerkdrucker über die URL http://<Netzwerkserver>:631/printers/<Drucker>.

Linux
Bei einem Linux-Client können Sie über dieselbe URL wie bei einem Windows-PC auf den Netzwerkdrucker zugreifen. Sie müssen lediglich für den neuen Drucker im CUPS das Internet Printing Protocol (http) auswählen.

PDF
Für den PDF-Drucker habe ich gute Erfahrungen mit dem HP Color Laserjet PostScriptDruckertreiber gemacht.

2.8 Mailserver
Sie möchten Mails direkt an Empfänger im Internet senden? Mails sollen zentral über den Netzwer-Server im LAN versendet werden? Die Teilnehmer in Ihrem LAN sollen ihre Mails in Postfächern auf dem Netzwerkserver finden? In diesem Abschnitt werde ich Ihnen das Handwerkszeug vermitteln, das Sie dafür benötigen. MTA Sie brauchen zuerst einen Mail Transfer Agent (MTA), von denen verschiedene existieren. Ich habe mich für Postfix (http://www.postfix.org) entschieden. Dieser Mailserver sieht sich selbst als modernen Ersatz für Sendmail, der lange einen Standard bildete. Das Thema

Mailserver ist komplex und teilweise abstrakt. Ich beschränke mich darauf, Ihnen alle Funktionen des Servers grundlegend vorzustellen und zu erläutern. Sie werden jedoch schnell erkennen, dass Postfix noch unzählig mehr Möglichkeiten bietet. Welche Sie davon nutzen, bleibt Ihnen überlassen. Führen Sie die folgenden Aktionen zunächst mit einem E-Mail-Konto durch, das zum Testen geeignet ist und bei dem der Verlust von E-Mails keine schlimmen Folgen hat! Erst wenn Sie sicher sind, dass die Konfiguration funktioniert, sollten Sie echte E-Mail-Konten verwenden!

2.8.1 Mails mit Postfix verschicken
Ich gehe davon aus, dass für den Netzwerkserver eine Internetanbindung konfiguriert ist. Alles Weitere erledigen Sie mit dem Webmin-Modul Server • Postfix-Konfiguration • Allgemeine Einstellungen und mit dem vi. Sie müssen nur wenige Einstellungen vornehmen und können bereits erste Mails verschicken. Treffen Sie zunächst bei dem Punkt Sende ausgehende Mail durch Host die Auswahl Direkt liefern. Dann tragen Sie im Feld Lokaler Internet-Domänenname Ihre LAN-Domäne (z. B. local oder home) ein. fertig Diese wenigen Einstellungen sind bereits ausreichend (vgl. Abbildung 14.62). Nach einem Klick auf Speichern und Anwenden können Sie die erste Mail verschicken. Öffnen Sie eine Shell und führen Sie das folgende Kommando aus:
echo "HALLO WELT" | mail <email-adresse>

Der Empfänger erhält eine Mail von <benutzername>@siegfried. Eine Antwort an diese Adresse würde natürlich (noch) nicht ankommen. Suchen Sie die Mail nicht nur im Posteingang. Es ist nicht unwahrscheinlich, dass die Mail im Spam-Ordner gelandet ist. mailname Der Anteil, den ein Empfänger in Ihrer E-Mail-Adresse sieht, wird in der Datei /etc/mailname bestimmt.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.62 Allgemeine Einstellungen des Postfix

2.8.2 Mails mit Postfix empfangen
Sie haben zwei Möglichkeiten, Mails aus dem Internet zu empfangen:
Sie haben eine mittels dynamischem DNS ständig aktualisierte Adresse im Internet und richten den Server als selbstständige Maildomain ein. Oder Sie machen sich davon unabhängig und nutzen ein bestehendes Mailkonto im Internet, z. B. bei einem Freemailer.

dynamisches DNS Wenn Sie die IP-Adresse Ihres Routers per dynamischem DNS im Internet ständig aktualisieren, können Sie den Netzwerkserver so konfigurieren, dass er eine Mail, die direkt an seine Internetadresse gerichtet ist, annimmt. Mails würden so verschickt, dass eine Antwort automatisch an die dynamische Adresse gesendet wird. Wie Sie dynamisches DNS nutzen, erfahren Sie in Kapitel 12.1.2, DynDNS-Dienste. Tragen Sie in der /etc/mailname den voll qualifizierten DNS-Hostnamen ein (z. B. <hostname>.dyndns.org), unter dem Ihr Router aus dem Internet gesehen wird.

Diesen Namen fügen Sie außerdem zur Liste Für welche Domänen soll email empfangen werden hinzu. Hier sollten andere lokale Internetdomänennamen (z. B. siegfried.home oder siegfried.local) zusätzlich eingetragen werden. Jetz tragen Sie den DNS-Hostnamen noch als Internethost-Name dieses Mailsystems ein. Überprüfen Sie außerdem, dass der Wert des Eintrages Lokale Netzwerke auf Standard (Alle angebundenen Netzwerke) steht! Von diesen Netzwerken wird der Postfix Mails zur Weiterleitung akzeptieren. Sie können aus Sicherheitsgründen hier später noch Einschränkungen machen. Die Anpassungen werden mit einem Klick auf Speichern und Anwenden aktiv. Schließlich richten Sie noch einen virtuellen Server auf Ihrem DSL-Router ein. Sie müssen den Router so konfigurieren, dass er Pakete für den Port 25 (smtp) direkt an den Netzwerkserver weiterleitet. Test Die grundlegende Funktion des Postfix-SMTP-Servers können Sie nun überprüfen, indem Sie eine telnet-Verbindung aus Ihrem LAN heraus ins Internet und von dort zurück über Port 25 Ihres Routers auf den Netzwerkserver gehen lassen (vgl. Abbildung 14.63).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.63 Postfix über das Internet testen Der Nachteil dieses Verfahrens liegt klar auf der Hand: Wenn der Netzwerkserver oder der Router nicht eingeschaltet sind, können Sie keine E-Mails empfangen! Beachten Sie, dass der Netzwerkserver jetzt aus dem Internet sichtbar und damit theoretisch angreifbar ist! Ich rate daher von dieser Konfiguration ab. Besser geeignet ist der fetchmail, den ich in Kapitel 14.8.4, Postfächer aus dem Internet holen, genauer beschreibe. Maildir-Format Die E-Mails werden in der Standardkonfiguration vom Postfix im Verzeichnis /var/mail/<Benutzername> oder im Verzeichnis /var/spool/mail/ <Benutzername> zwischengespeichert. In diesem Format können die Mails zwar lokal auf dem Netzwerkserver gelesen werden, aber für die Anbindung eines E-Mail-Clients im LAN an den Courier-IMAP-

Server1 (vgl. Kapitel 14.8.5, Clients im LAN an den Server anbinden) müssen die Mails im Maildir-Format vorliegen. Postfix kann dieses Format erzeugen. Dazu tragen Sie im Modul Server • Postfix-Konfiguration • Lokale Lieferung im Feld Pfadname der Mailbox-Datei relativ zum Home-Verzeichnis den Wert Maildir/ ein. Gegebenenfalls ist der Inhalt des Feldes Externer Befehl, der anstelle Lieferung an Mailbox benutzt wird zu löschen (vgl. Abbildung 14.64). Mit dieser Einstellung landen die Mails automatisch im Heimatverzeichnis des Benutzers im Unterordner Maildir/new. Dieses Verzeichnis wird nicht automatisch erstellt. Jeder Benutzer muss zunächst auf Shell-Ebene in seinem Heimatverzeichnis mit dem Kommando
maildirmake Maildir

ein entsprechendes Verzeichnis erstellen. Dieses können Sie neu einzurichtenden Benutzern allerdings auch ersparen, indem Sie die Vorlage für Heimatverzeichnisse entsprechend erweitern. Dazu müssen Sie lediglich als Benutzer root das Kommando im Verzeichnis /etc/skel ausführen. Der Inhalt dieses Verzeichnisses wird dann beim Anlegen neuer Benutzer kopiert. Bei siegfried ist das bereits der Fall.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.64 Eingehende Mails im Maildir-Format speichern

2.8.3 Mails mit Postfix über einen Provider verschicken
Postfix verschickt bereits Mails ins Internet. Deshalb werden Sie sich vielleicht fragen, welchen Sinn es hat, seine Mails über einen Mailprovider zu versenden. Zum einen ist der Mailprovider rund um die Uhr erreichbar. Zum anderen sortieren viele Mailprovider die Post in »gute« und in »schlechte« Post (Spam). Die Chance, in einem Spamordner zu landen, ist beim Versenden über einen vertrauenswürdigen Provider viel geringer. Gegenüber dem Server im Internet müssen Sie sich mit Benutzernamen und Kennwort authentifizieren. Authentifizierung In meinem Beispiel verwende ich die SMTP-AUTH-Authentifizierung. Um herauszubekommen, ob ein Provider diesen Mechanismus unterstützt, bietet sich ein telnet auf den Port 25 (smtp) des entsprechenden Providers an (vgl. Abbildung 14.65). Das Schlüsselwort EHLO in Verbindung mit meinem Mailservernamen siegfried.home fordert die Liste an. Die Auskunft besagt, dass mein Mailprovider SMTP-AUTH mit den Verfahren LOGIN, CRAM-MD5 und PLAIN unterstützt.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.65 Der Provider unterstützt SMTP-AUTH. Also können Sie den Postfix jetzt einrichten. Stellen Sie sicher, dass in der Datei /etc/postfix/main.cf die folgenden drei Zeilen enthalten sind:
smtp_sasl_auth_enable = yes smtp_sasl_security_options = noanonymous smtp_sasl_password_maps = hash:/etc/postfix/smtp_auth

Die untere Zeile enthält einen Verweis auf eine Datei, die alle für die Authentifizierung nötigen Informationen beinhaltet. Die Datei /etc/postfix/smtp_auth müssen Sie mit den Zugangsdaten Ihres Mailproviders füllen:
<freemailer.host.de> <benutzername>:<passwort>

Entsprechend sieht meine Datei /etc/postfx/smtp_auth wie folgt aus:

mail.bytecamp.net test@pcnetzwerke.de:test

Der Postfix erwartet ein bestimmtes Datenbankformat, in das die Datei noch umgewandelt werden muss. So entsteht die Datei /etc/postfix/smtp_auth.db:
postmap /etc/postfix/smtp_auth

Zum Abschluss richten Sie den Mailserver, über den Sie versenden möchten, mit dem Webmin-Modul Server • Postfix-Konfiguration • Allgemeine Einstellungen noch als RelayHost ein. Damit weisen Sie Postfix an, alle Mails außerhalb des LANs über diesen Host zu versenden (vgl. Abbildung 14.66).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.66 Der Relay-Mailserver des Postfix Logging Den Erfolg oder Misserfolg Ihrer Bemühungen können Sie nach dem Versenden von Testmails in der Logdatei /var/log/mail.log (siegfried) bzw. /var/log/mail (SUSE) begutachten.

2.8.4 Postfächer aus dem Internet holen
Fast jeder besitzt heute eine oder mehrere E-Mail-Adressen bei einem Mailprovider. Jeder Benutzer auf dem Netzwerkserver soll die Möglichkeit haben, seine Mails bei diesem Provider abzurufen. Dazu dient das Programm Fetchmail. Fetchmail holt die Mails vom Provider ab und gibt sie dann an Postfix weiter. Postfix ist bereits so konfiguriert, dass er die Mails im Maildir-Format abspeichert (vgl. Abschnitt 14.8.2, Mails mit Postfix empfangen). Der Benutzer im LAN kann also über IMAP mit seinem gewohnten Programm auf seine Mails zugreifen (vgl. Abschnitt 14.8.5, Clients im LAN an den Server anbinden). .fetchmailrc Die Konfigurationsdatei von Fetchmail liegt im Heimatverzeichnis jedes einzelnen Benutzers. Sie kann mit dem vi editiert werden, das Webmin-Modul Server • Fetchmail-Konfiguration bietet jedoch einen komfortablen Weg, eine solche Datei zu erzeugen. Sie wählen zuerst den Benutzer aus, für den der Fetchmail eingerichtet werden soll und klicken auf Hinzufügen eines Fetchmail-Servers für den Benutzer:. Exkurs

Der Punkt vor dem Dateinamen gibt an, dass es sich um eine versteckte Datei handelt. Das Kommando ls wird diese Datei nur mit der Option -a auflisten. Die weitere Konfiguration möchte ich mit einem Beispiel erläutern. Für meine Tests habe ich ein E-Mail-Konto eingerichtet:
E-Mail-Adresse: test@pcnetzwerke.de Benutzername: test Passwort: test SMTP-Server: mail.bytecamp.net POP3-Server: mail.bytecamp.net

Selbstverständlich habe ich dieses Konto vor der Veröffentlichung des Buches wieder gelöscht. Ich hoffe, dass Ihnen die Angaben helfen, die weitere Konfiguration nachzuvollziehen. Klaus möchte gerne seine Mails vom Mailprovider abholen und auf dem Netzwerkserver im LAN speichern. Zunächst erstellen Sie mit dem Webmin die Datei /home/klaus/.fetchmailrc für den Systembenutzer klaus (vgl. Abbildung 14.67: Ein Mailkonto aus dem Internet). Hier tragen Sie den Mailserver und das Protokoll ein, das verwendet werden soll. Die möglichen Protokolle und genauere Zugangsdaten erfahren Sie bei Ihrem E-Mail-Provider. Jetzt fehlen nur noch der Benutzername, das Passwort und ein Klick auf Speichern, dann kann Klaus seine Mails abrufen. Test Der erste Test des Fetchmail erfolgt vom Systembenutzer klaus auf der Kommandozeile. Er hat Post:
klaus@siegfried:~$ fetchmail 1 Nachricht für test@pcnetzwerke.de bei mail.bytecamp.net (2568 Oktetts). Nachricht test@pcnetzwerke.de@mail.bytecamp.net:1 von 1 wird gelesen (2568 Oktetts) .. geflusht

Hier klicken, um das Bild zu Vergrößern Abbildung 2.67 Ein Mailkonto aus dem Internet

Klaus kann seine Mailbox regelmäßig überprüfen lassen. Wenn Sie keine Dialup-Verbindung zum Internet haben, ist das auch völlig in Ordnung. Er muss die Sekunden angeben, in denen Fetchmail nach neuen Mails schauen soll. Das Kommando fetchmail -d 300 startet einen Dienst, der alle fünf Minuten die in der Datei /home/klaus/.fetchmailrc gelisteten Mailprovider nach neuen Mails absucht. SSL Ich empfehle, soweit möglich die Mails über eine verschlüsselte Verbindung vom Server abzuholen. Wie Sie diese einrichten, erfahren Sie im ausführlichen Manual über das Kommando man fetchmailrc. automatisches Abholen Sie können als Benutzer root auch das automatische Abholen der Mails einrichten. Dazu richten Sie zuerst den Systembenutzer fetchmail ein. Unter dessen Identität soll der Dienst später laufen. Danach schreiben Sie nach dem Vorbild der Datei .fetchmailrc in den Heimatverzeichnissen der lokalen Benutzer mit dem Editor die Datei /etc/fetchmailrc. In diese Datei tragen Sie zunächst die Daten für ein E-Mail-Konto ein, später können Sie noch weitere hinzufügen:
set daemon 600 poll mail.bytecamp.net proto pop3 user "test@pcnetzwerke.de" pass "test"

is klaus fetchall

Die erste Zeile bewirkt, dass der Fetchmail alle zehn Minuten (600 Sekunden) das Konto überprüft. Die Rechte der Datei schränken Sie mit dem Kommando chmod 600 /etc/fetchmailrc weitmöglichst ein. Der Dienst fetchmailrc soll nun noch automatisch während des Bootvorganges des Systems gestartet werden. Im Modul System • System-Start und -Stop markieren Sie den Fetchmail und klicken auf Start Selected On Boot.

2.8.5 Clients im LAN an den Server anbinden
Damit die Clients auf die Postfächer auf dem Netzwerkserver zugreifen können, muss auf dem Netzwerkserver ein entsprechender Dienst angeboten werden.

IMAP-Server
Courier Es gibt verschiedene Standards. Sie kennen bestimmt die hergebrachten POP3-Server von Freemail-Providern aus dem Internet. Diesen Dienst möchte ich Ihnen nicht vorstellen, da er im Vergleich zum moderneren IMAP einen sehr geringen Funktionsumfang bietet. Ich habe mich in puncto siegfried für den Courier-IMAP-Server entschieden, da es ein leicht zu konfigurierender und leistungsstarker IMAP-Server ist. Die Konfiguration ist denkbar einfach: Sie editieren die Datei /etc/courier/authdaemonrc und bestimmen die Methode, die der Courier-IMAP-Server benutzt, um Benutzer und Passwörter zu überprüfen. Es existiert vielleicht folgender Eintrag:
version=" "

Diese Zeile ersetzen Sie mit dem Editor durch:
version="authdaemond.plain"

Diese simple Methode authentifiziert alle Benutzer gegen die gewöhnlichen Systemdateien /etc/passwd und /etc/shadow. Einfach bedeutet natürlich immer potentiell unsicher, deshalb würde man in größeren Netzwerken einen komplizierteren Mechanismus wählen. Dienste In der Regel laufen mehrere Dienste, die zusammen die Funktionalität des Courier IMAP Servers bilden. Es handelt sich unter anderem um den courier-authdaemon. Der courierauthdaemon ist für das Überprüfen der Benutzer verantwortlich. Nach dem Editieren der Datei /etc/courier/authdaemonrc muss dieser Dienst mit dem Kommando /etc/init.d/courierauthdaemon reload seine Konfiguration neu lesen. Wie überprüfen Sie, ob der Dienst überhaupt gestartet ist? Mit dem Modul System • Laufende Prozesse erhalten Sie einen Überblick über alle aktuell auf dem Netzwerkserver aktiven Prozesse (vgl. Abbildung 14.68). Die Prozesse mit den Namen authdaemond, couriertcpd, courierlogger und imapd sollten in der Liste zu finden sein.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.68 Liste der laufenden Prozesse (abgekürzt) SUSE Bei SUSE wird der IMAP-Server auch nach einem Boot des Netzwerkservers nicht unbedingt automatisch gestartet. Hinter dem Modul System • System-Start und -Stop verbirgt sich neben vielem anderen auch die Auswahl der Dienste, die bereits beim Booten des Systems gestartet werden sollen. Falls für die Dienste courier-imap und courier-authd (siegfried) bzw. courierauthdaemon (SUSE) in der Spalte Starte beim Systemstart? ein Nein eingetragen ist (vgl. Abbildung 14.69), dann markieren Sie diese beiden Dienste und klicken auf Start Selected On Boot!

Hier klicken, um das Bild zu Vergrößern Abbildung 2.69 Modul System-Start und -Stop Test Der erste Test des IMAP-Servers sollte mit dem telnet direkt auf den Port des IMAP-Servers (143) erfolgen: telnet <Netzwerkserver> 143 Dieses Vorgehen schließt Fehlerquellen beim E-Mail-Client aus. Jeder Befehl beginnt mit einem Punkt und einem Leerzeichen. Sie melden sich am Server mit einem gültigen Benutzernamen und Passwort an (vgl. Abbildung 14.70). Courier meldet mit dem Ausdruck * 1 EXISTS, dass für den Benutzer martin eine Mail im Posteingang liegt.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.70 Test des IMAP-Servers

Client
Outlook Express Die Anbindung von Clients erfolgt nun über IMAP. Um zum Beispiel mit Outlook Express auf den Netzwerkserver zuzugreifen, wählen Sie Extras • Konten... • Hinzufügen • Email... und tragen als E-Mail-Adresse die Adresse ein, unter der Sie Ihre Mails gewöhnlich erhalten. Diese Adresse wird dann in ausgehenden Mails als Return-Path (Antwortadresse) eingetragen. Wählen Sie unbedingt IMAP als Server-Protokoll aus! Als Posteingangsserver (IMAP) und Postausgangsserver (SMTP) tragen Sie die den Namen des Netzwerkservers ein. Achten Sie darauf, dass der Client den Namen des Servers in eine IP-Adresse auflösen kann! Im letzten Schritt müssen Sie noch den Benutzernamen und das Kennwort des Benutzers auf dem Netzwerkservers eintragen. Auf die Darstellung von Verschlüsselungsmechanismen verzichte ich, da es sich um Ihr privates LAN handelt. Jetzt können Sie den Netzwerkserver als vollwertigen Mailserver nutzen! Sie haben auch die Möglichkeit, mit dem jeweiligen E-Mail-Client eine persönliche Ordnerstruktur auf dem Netzwerkserver aufzubauen. Mozilla Ein sehr guter IMAP-Client ist der Mozilla (http://www.mozilla.org). Er ist zu empfehlen, da er nicht nur als E-Mail-Client verwendet werden kann, sondern auch ein ausgezeichneter Browser ist (vgl. Abbildung 14.71).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.71 Der Mozilla als IMAP-Client Andere E-Mail-Clients als Mozilla funktionieren selbstverständlich auch im Zusammenspiel mit dem Netzwerkserver. Jedes aktuelle Mailprogramm unterstützt IMAP. Shared Folders Ein nettes Bonbon des Courier-IMAPs ist die Option, gemeinsam genutzte Ordner einzubinden. Diese Ordner werden von einem Benutzer angelegt und können dann von anderen Benutzern als Verweis zum eigenen Postfach hinzugefügt werden. Gemeinsam genutzte Ordner müssen Sie auf der Kommandozeile des Netzwerkservers erstellen. Ich möchte Ihnen ein einfaches Beispiel vorstellen. Klaus und Marie sind beide Benutzer auf dem Netzwerkserver (nicht root) und sind bereits für IMAP konfiguriert (es existiert ein Maildir-Verzeichnis in ihrem Heimatverzeichnis). Klaus und Marie sind leidenschaftliche Kochrezeptesammler. Klaus und Marie lassen sich von ihren Freunden Rezepte von leckeren Gerichten zusenden. Klaus möchte diese Gerichte in zwei Verzeichnisse ablegen, sortiert nach Fleischgerichten und vegetarischen Gerichten. Marie soll als militante Vegetarierin natürlich Mails in dem vegetarischen Ordner ablegen dürfen (Schreibrecht). Für die Fleischrezepte reicht Marie ein lesender Zugriff. Zuerst richtet Klaus in seinem Heimatverzeichnis für die gemeinsam genutzten Ordner ein Verzeichnis im Maildir-Format ein (Achtung, großes »S«):
maildirmake -S Maildir-shared

Jetzt legt Klaus die zwei Ordner an, einen mit Schreibrecht für alle und einen, in dem nur er Mails ablegen darf (Achtung, kleines »s«):
maildirmake -s read -f Fleisch Maildir-shared maildirmake -s write -f Beilagen Maildir-shared

Er selber muss nun aus seinem eigenen Maildir-Verzeichnis eine Verknüpfung mit den gemeinsam genutzten Verzeichnissen erstellen. Dabei ist meine ein Name, der später in der Ordnerhierarchie des E-Mail-Clients wieder auftaucht.

maildirmake --add meine=/home/klaus/Maildir-shared

Marie möchte nun die Rezepte von Klaus lesen. Sie muss dazu lediglich den letzten Befehl in ihrem Heimatverzeichnis ausführen. Dabei wählt sie dann wahrscheinlich einen anderen Namen:
maildirmake --add klaus=/home/klaus/Maildir-shared

Die Anzeige der Ordnerstruktur am Client sollten Sie nun aktualisieren. Dieses ist ein sehr einfaches Beispiel. Möchten Sie tiefer gehenden Einblick in diesen oder einen anderen IMAP-Server nehmen, dann empfehle ich Ihnen die Lektüre der man-Pages und die Suche im Internet.

2.9 Voicemails mit vbox
Der Netzwerkserver kann noch andere Aufgaben für Sie wahrnehmen. Im Internet finden sich viele Lösungen, deren Dokumentation allerdings häufig viele Fragen unbeantwortet und Wünsche offen lässt. SUSE bietet im YaST mit den Funktionen Netzwerkgeräte • Anrufbeantworter und Netzwerkgeräte • Fax ebenfalls eine Lösung an. Diese finden Sie in den SUSE-Handbüchern dokumentiert. Ich verzichte daher in diesem Buch auf eine genauere Beschreibung.

2.9.1 Vbox mit ISDN
Wenn Sie ISDN-Kunde sind, wird Ihnen aufgefallen sein, dass gute Anrufbeantworter für ISDN ziemlich teuer sind. Eine Voicebox ist bei der deutschen Telekom bei ISDN-Komfort dabei, jedoch nur für die Haupt-MSN, jede weitere Voicebox kostet Geld. Wie wäre es also mit einem Anrufbeantworter, in dessen Konfiguration Sie minutengenau einrichten können, zu welcher Uhrzeit welche Ansage abgespult wird, bei der Sie für jeden Anrufer, der seine Rufnummer mitsendet, einen Namen hinterlegen können und der selbstverständlich auf verschiedene MSNs (ISDN-Rufnummern) reagieren kann? Zum Schluss schickt Ihnen vbox die aufgezeichnete Nachricht als MP3-Datei per E-Mail. So stehen Ihnen Sprachnachrichten überall zur Verfügung.

Hardwarevoraussetzung
Damit Sie vbox benutzen können, benötigen Sie eine von Linux unterstützte ISDN-Karte. Ob Linux eine ISDN-Karte unterstützt, können Sie beispielsweise bei SUSE nachsehen: http://hardwaredb.suse.de. Grundsätzlich lässt sich sagen, dass ISDN-PCI-Karten unterstützt werden und inzwischen auch einige USB-ISDN-Adapter. Ich bin bisher nur Besitzer eines USB-Adapters (Teledat USB 2a/b) und zweier ISA-ISDN-Karten (ITK ix1-micro und Teles 16.3). Für vbox wurde die Teles-ISA-Karte verwendet. Exkurs An dieser Stelle möchte ich auf die Ausführungen zu ISA-Karten in Kapitel 7.3, ISANetzwerkkarten, verweisen. Damit eine ISA-Karte funktioniert, müssen Sie zunächst im BIOS einen IRQ reservieren (ich habe IRQ 5 genommen und die Soundkarte deaktiviert).

Nachfolgend müssen Sie unter Linux das Programm modconf als Benutzer root aufrufen. Unter dem Abschnitt /kernel/drivers/isdn/hisax müssen Sie in den Bereich hisax wechseln. Dort können Sie die Optionen für dieses Kernelmodul eintragen, in meinem Fall:
type=3 irq=5 io=0xd80

Nachdem Sie die Einträge mit OK bestätigt haben, wird versucht, das Modul zu laden. Wenn es funktioniert, erscheint eine entsprechende Erfolgsmeldung auf dem Bildschirm, andernfalls wird eine Fehlerursache angezeigt.

Softwarevoraussetzung
Neben dem Paket i4l, als Teil dessen vbox installiert wird, benötigen Sie für das Verschicken als E-Mail:
Postfix: als Mailserver sox: Wandelt Audioformate um. lame: Erzeugt aus WAV-Dateien MP3s. metamail: Bindet Audiodateien in E-Mails ein.

Für siegfried gilt, dass von mir alles vorkonfiguriert wurde, die benötigte Software ist also vorhanden und muss nur noch minimal angepasst werden. SUSE Sie können bei SUSE zur Konfiguration von vbox oder SUSEVbox als Benutzer root das grafische Programm SUSEVboxConf verwenden. Die Benutzer können zum Abhören ihrer Nachrichten SUSEVbox benutzen. Beide Pakete sind offensichtlich seit 1998 nicht mehr weiterentwickelt worden und entsprechen daher nicht mehr den aktuellen Designvorstellungen.

Konfiguration
vbox besteht aus aus vier Komponenten:
vboxgetty: Nimmt Anrufe entgegen und zeichnet Nachrichten auf Vboxd: Fernabfragedienst (wird hier nicht behandelt) Vboxmail: Verschickt eingegangene Nachrichten per Mail Vboxplay: Abhören neuer Nachrichten aus der Shell

Ich werde das Abhören von Nachrichten über Fernabfrage, vboxplay oder KAM2 (KDE Answering Machine 2) nicht beschreiben, weil ich die Möglichkeiten von Voicemail für ausreichend halte. vboxgetty.conf Die Grundkonfiguration von vbox wird in der Datei /etc/isdn/vboxgetty.conf vorgenommen. Im Abschnitt Global Settings for all Ports werden Einstellungen u. a. zur Kompression eingetragen. Diese Einstellungen sollten Sie nicht ohne Notwendigkeit verändern. Sie finden weitere Informationen zu diesen Einstellungen im Handbuch

/usr/share/doc/isdnvboxserver/vbox.txt.gz bei KNOPPIX/siegfried oder in /usr/share/doc/packages/i4l-vbox/vbox.txt bei SUSE. Nachfolgend gibt es zwei weitere Abschnitte, die sich auf logische ISDN-Kanäle (Ports) beziehen. Für jede MSN müssen Sie einen Eintrag definieren, diese logischen ISDN-Kanäle heißen /dev/ttyI<Nr.>. In der Beispielkonfiguration gibt es nur einen Port, nämlich den /dev/ttyI6:
modeminit ATZ&B512&E1234567 user knoppix group spooldir vboxconfig users /var/spool/vbox/knoppix /var/spool/vbox/knoppix/vbox.conf

Die erste Zeile beginnt mit modeminit, dem Befehl für die Initalisierung des ISDN-Kanals. ATZ, einigen von Ihnen vielleicht noch von Modems bekannt, hebt ab, B512 erzeugt Blockgrößen von 512 Bytes und E1234567 reagiert auf die Rufnummer (MSN) 1234567. Sie müssen an dieser Stelle üblicherweise lediglich die Rufnummer ändern. Tragen Sie nur die Rufnummer ohne Vorwahl ein, also für die Rufnummer 0211-555666777 nur 555666777! Die weiteren Einstellungen betreffen den Benutzer, unter dessen Konto der Prozess läuft und dem die Voicemail zugestellt wird, außerdem gibt es einige Einstellungen zu Verzeichnissen. Ein hier angegebenes Verzeichnis muss existieren! Lesen Sie im Abschnitt Mehrbenutzerbetrieb, wie Sie für eine weitere MSN die Einrichtung vornehmen. Sie können, nachdem Sie Ihre MSN eingetragen haben, bereits ausprobieren, ob es funktioniert. Als Benutzer root rufen Sie vbox wie folgt auf:
vboxgetty -d /dev/ttyI6

Nach sechs Klingelzeichen sollten Sie eine Ansage hören, nach dem »Piep« können Sie Ihre Nachricht aufsprechen. Wenige Sekunden später finden Sie in der Systemmailbox des Benutzers knoppix eine entsprechende Nachricht. Diese können Sie beispielsweise mit dem Befehl mail oder mutt ansehen, jedoch noch nicht abhören. Fehler? Fehler finden Sie in der Datei /var/log/vbox/vboxgetty-ttyI6.log, wenn Sie mehr Informationen benötigen, sollten Sie die Debugausgabe in der Datei /etc/isdn/vboxgetty.conf mittels
debuglevel FEWIDJ

einschalten. Die Standardeinstellung FEW loggt nur Fehler und Warnungen. /etc/inittab Ich gehe davon aus, dass Ihr Telefonanruf erfolgreich war und Sie zukünftig möchten, dass bei einem eingehenden Telefonanruf automatisch vbox den Anruf – nach der eingestellen Anzahl von Klingelzeichen – entgegennimmt. Durchsuchen Sie die Datei /etc/inittab nach dem Stichwort »vbox« und entfernen Sie das Kommentarzeichen (»#«) vor der folgenden Zeile:
I6:2345:respawn:/usr/sbin/vboxgetty -d /dev/ttyI6

Damit Ihre Einstellung wirksam wird, müssen Sie die inittab neu einlesen lassen, ohne Boot können Sie das mit dem Befehl init q als Benutzer root tun. Ab sofort werden auch ohne manuellen Start von vboxgetty Anrufe entgegengenommen.

Erweiterungen
Nachdem es grundsätzlich funktioniert, haben Sie sicherlich das Bedürfnis, vbox mehr an Ihre Bedürfnisse anzupassen.
Einstellungen

Wann, welche Ansage, wie lange die Aufzeichnungsdauer ist oder hinter welcher Rufnummer sich ein Anrufername verbirgt – all das konfigurieren Sie in der Datei /var/spool/vbox/knoppix/vbox.conf: Im Abschnitt [CALLERIDS] können Sie die Zuordnung von Rufnummern zu Anrufernamen vornehmen: Tabelle 2.2 Beispiele für CALLERIDS
Pattern 177111222333 177* 211555666777 * Section Mutti HANDY * – Realname Mutti Handy E-Plus-Netz Mutti *** Unknown ***

Die unterste Zeile muss erhalten bleiben und ganz unten stehen! Die spezielleren Pattern müssen immer oberhalb der allgemeineren Pattern stehen, sonst werden sie nicht angewendet. Pattern meint die Rufnummer ohne führende Null. Sie können UNIX-Pattern verwenden und so z. B. einen ganzen Durchwahlbereich einer Firma zuordnen. Section hat Auswirkungen auf die weitere Verarbeitung des Anrufes. Sie können die üblichen Ansagen gelten lassen, dann benutzen Sie »-« oder Sie möchten eine bestimmte Section verwenden, dann geben Sie deren Namen an, alternativ wird mit »*« die Section mit dem unter Realname eingetragenen Namen verwendet. Der zweite Abschnitt [RINGS] ist für die Anzahl der Klingelzeichen, die zu bestimmten Tagen und/oder Uhrzeiten gelten, zuständig. In der Voreinstellung wird nachts und früh morgens (23.30 Uhr bis 8.59 Uhr) lediglich ein Klingelzeichen abgewartet, bevor die Nachricht entgegengenommen wird. In der übrigen Zeit werden sechs Klingelzeichen abgewartet. Der unterste Abschnitt betrifft die Sections. In der mitgelieferten Datei gibt es lediglich [STANDARD], dieser sollte auch erhalten bleiben. Korrespondierend zu dem Beispiel für die Callerids (siehe oben), müssten hier zwei weitere Sections, [HANDY] und [Mutti], mit jeweils eigenen Einstellungen existieren.
Ansagen

Die von mir aufgesprochene Standardansage ist zwar allgemein gehalten, Sie möchten jedoch sicherlich Anrufer persönlich begrüßen.

Es gibt zwei Möglichkeiten, wie Sie eigene Ansagen erzeugen können. Die erste und sehr einfache Möglichkeit – bei etwas schlechterer Qualität – ist es, auf den eigenen Anrufbeantworter zu sprechen und diese Nachricht dann als Ansage zu kopieren1 :
cd /var/spool/vbox/knoppix/ cp incoming/<Dateiname>.vmsg messages/standard.msg

Die Ansage standard.msg wird – laut Konfiguration in vbox.conf – zwischen 12.00 Uhr und 17.59 Uhr verwendet. Achten Sie beim Kopieren darauf, dass Sie als Benutzer KNOPPIX arbeiten oder die Dateirechte für den Benutzer richtig setzen. Wenn Ihnen diese Möglichkeit nicht ausreicht, dann können Sie eine beliebige WAV-Datei in Mono z. B. mit dem Micosoft Windows Audiorecorder erzeugen. Kopieren Sie diese Datei in das Homeverzeichnis von Benutzer KNOPPIX und wandeln Sie die Datei (Beispiel: datei.wav) wie folgt um:
sox datei.wav -r 8000 datei.au rate stat autovbox < datei.au > datei.msg

Die Datei datei.msg können Sie nun als standard.msg in das Verzeichnis /var/spool/vbox/knoppix/messages legen.
Mehrbenutzerbetrieb

Vermutlich möchten Sie vbox auch deshalb benutzen, weil Sie mehr als eine Mailbox haben möchten. Ein Familienmitglied hat eine eigene Rufnummer und soll entsprechend auch eine eigene Voicebox bekommen. Die aufgezeichneten Nachrichten werden per E-Mail an einen GMXAccount weitergeleitet. Zur Lösung der Aufgabe benötigen Sie einen eigenständigen Benutzer auf dem Netzwerkserver. Sie können den Webmin verwenden, um neue Benutzer anzulegen. Im Folgenden gehe ich davon aus, dass der Benutzer «klaus” heißt. Der nächste Schritt ist, dass Sie das Verzeichnis als root von Benutzer KNOPPIX unter /var/spool/vbox/ für diesen Benutzer kopieren:
cp -a /var/spool/vbox/knoppix /var/spool/klaus

und dem Benutzer klaus dieses Verzeichnis inklusive aller Unterordner und Dateien zuweisen:
chown -R klaus:users /var/spool/vbox/klaus

Grundsätzlich haben Sie jetzt die wichtigsten Vorarbeiten erledigt. Sie müssen jetzt nur dafür sorgen, dass bei einem Anruf für die Rufnummer von klaus das Programm vboxgetty startet und eine Nachricht aufnimmt. Diese Einstellung wird in der Datei /etc/isdn/vboxgetty.conf durchgeführt:
modeminit ATZ&B512&E7654321 user klaus group users spooldir /var/spool/vbox/klaus vboxconfig /var/spool/vbox/klaus/vbox.conf

Sie können den Block für den Benutzer KNOPPIX kopieren. Wichtig ist, die Rufnummer von klaus im modeminit einzutragen (hier 7654321) und Einstellungen von »knoppix« auf »klaus« zu verändern. In der Datei /etc/inittab müssen Sie nun noch einen zweiten – nur logisch vorhandenen – ISDN-Kanal eintragen:
I7:2345:respawn:/usr/sbin/vboxgetty -d /dev/ttyI7

Dieser muss mit einer anderen Nummer am Anfang (I7) beginnen und auf ein anderes logisches Gerät (engl. device) verweisen (/dev/ttyI7). Nach dem erneuten Einlesen der initKonfiguration mittels init q als Benutzer root sollte es schon funktionieren. Sicherlich möchten Sie die Ansage nun für klaus individuell anpassen, in dessen /var/spool/vbox/klaus/vbox.conf eigene Einstellungen vornehmen u. ä. .forward Die Weiterleitung der Voicemails für den Benutzer klaus können Sie übrigens sehr einfach über eine Datei .forward erreichen. Legen Sie im Verzeichnis /home/klaus eine Datei .forward an und tragen Sie folgenden Inhalt ein:
klaus@gmx.de

Alle E-Mails für den Benutzer klaus werden nun an die eingetragene E-Mail-Adresse (klaus@gmx.de) weitergeleitet, mehrere E-Mail-Adressen verteilen Sie auf mehrere Zeilen.
Voicemail

Das original Voicemail-Programm2 hat Benutzer lediglich über eine neue Nachricht informiert, abzuhören waren die Nachrichten dann über Fernabfrage. Ich habe für siegfried ein verändertes Voicemail-Programm verwendet, das die erzeugten .vmsg-Dateien in MP3 umwandelt und an die Nachricht hängt. Es wurde von Malte Wetz (http://www.maltewetz.de) geschrieben und von mir leicht angepasst. Die Anpassung betrifft drei Dinge:
Rufnummernangabe mit führender Null3 Absenderadresse wertet /etc/mailname aus. vmsg-Dateien werden gelöscht.

Im Text der Voicemail steht die Rufnummer korrekt mit führender Null, eine rein kosmetische Korrektur. Der Absendername war phone@localhost, das kann zu Problemen führen, wenn jemand mal auf Antworten klickt. Korrekterweise wird daher die Datei /etc/mailname ausgewertet, in der der Internetdomänenname Ihres Servers – zum Beispiel pcnetzwerke.dyndns.org – im Klartext steht. Die aufgezeichneten Nachrichten wurden im Ordner /var/spool/vbox/ <Benutzer>/incoming gesammelt und würden im Zweifelsfall die ganze Festplatte in Beschlag nehmen. Deshalb wurde die Zeile
$MTA < $MIMEMSG && rm -f $MSNAME

in das Programm /usr/sbin/vboxmail eingetragen, diese löscht, bei erfolgreichem Versand der Nachricht, die Datei aus incoming. Wenn Sie das nicht möchten4 , dann fügen Sie am Anfang dieser Zeile ein »#« ein – das deaktiviert diese Zeile – und entfernen Sie das Kommentarzeichen in der Originalzeile darüber, fertig. Die Änderung ist beim nächsten Anruf aktiv:

# uncommend the line below, if you want to keep vmsg $MTA < $MIMEMSG # Send Message and delete original vmsg-message #$MTA < $MIMEMSG && rm -f $MSNAME

Wenn Sie die Nachrichten leicht und einfach weiterleiten wollen, weil Sie das Systempostfach von Benutzer knoppix nicht verwenden wollen, dann probieren Sie die Weiterleitung mittels .forward-Datei im Verzeichnis /home/knoppix. Sie legen eine Textdatei .forward an, deren Inhalt die Adresse(n) sind, an die jede Mail weitergeleitet wird. Pro Zeile schreiben Sie eine Empfängeradresse, im einfachsten Fall:
<Name>@<E-Mail-Domain>.de

Das war es schon. So können Sie auch eine ganze Familie mit einer neuen Voicemail beglücken.

2.9.2 Vbox mit einem analogen Modem
Nicht jeder verfügt an jedem Ort über einen ISDN-Anschluss. Der Vollständigkeit halber möchte ich Ihnen deshalb auch kurz die Möglichkeit vorstellen, Ihr altes analoges Modem für die Funktion des Anrufbeantworters zu nutzen. Hardware Ich habe ein Acer Modem 56 Surf für meine Tests verwendet. Der Anschluss dieses Modems erfolgt an der seriellen Schnittstelle. Die Sprachqualität war noch etwas schlechter, als man sie von einem gewöhnlichen Anrufbeantworter kennt. Software Die Pakete mgetty und mgetty-voice müssen bei Debian installiert werden. siegfried verfügt bereits über diese Pakete, bei Suse 9.0 ist die Software in der Standardauswahl enthalten. serielle Schnittstelle Der erste Schritt ist die Konfiguration der seriellen Schnittstelle. Im Ergebnis wird ein Dienst an dieser Schnittstelle über das eingeschaltete Modem auf eingehende Anrufe warten. Sie verwenden das Modul Hardware • Voicemail Server • Serial Port Configuration. Sie klicken auf Add a new serial port und wählen aus der Liste den seriellen Port aus, an dem Ihr Modem hängt (vgl. Abbildung 14.72). Der Port ist eigentlich nebensächlich, viel wichtiger ist das Devicefile. Wie jede Hardware in einem Linux-Betriebssystem verbirgt sich auch der serielle Port hinter einer Datei. Dabei entspricht in der Regel das Devicefile /dev/ttyS0 dem seriellen Port Nr. 1, /dev/ttyS1 dem seriellen Port Nr. 2 usw. Sollte also das Modem nicht über ein Standard-Devicefile erreichbar sein, können Sie mit Other Device... eine andere Gerätedatei bestimmen.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.72 An welchem Port hängt das Modem? Weiter geht es mit dem Modul Hardware • Voicemail Server • Voicemail Server Options. Die zur Verfügung stehenden Einstellungsmöglichkeiten sprechen für sich (vgl. Abbildung 14.73). Sie können theoretisch auch andere Daten als Voicedaten empfangen und weiterverarbeiten. Es kann sein, dass der Eintrag Unix Group for message files von Ihnen noch mit einer Gruppe belegt werden muss, die auch auf dem System existiert. Bei mir musste es unbedingt die Gruppe root sein, sonst wurden in der Logdatei /var/log/vgetty.log diverse Fehler geschrieben. Sie können direkt bestimmen, was der Anrufbeantworter im Anschluss an die Aufzeichnung mit der Nachricht machen soll. Um die Nachricht als E-mail-Anhang zu verschicken, tragen Sie im Feld After recording message • Email in WAV format to die EMail-Adresse eines Empfängers ein. Nach einem Klick auf Speichern und Apply Configuration ist der Anrufbeantworter mit Ihren persönlichen Einstellungen aktiv. Um die Nachricht verschicken zu können, muss natürlich ein Mail Transfer Agent wie der Postfix aktiv sein. Wie das funktioniert, erfahren Sie in Kapitel 14.8, Mailserver.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.73 Der Anrufbeantworter im Überblick Ansagetext

Um eine Begrüßungsnachricht einzuspielen, müssen Sie sich zunächst selber anrufen und Ihre Ansage aufsprechen. Im Anschluß sehen Sie im Modul Hardware • Voicemail Server • Received Messages die von Ihnen aufgesprochene Nachricht (vgl. Abbildung 14.74). Markieren Sie die Nachricht und klicken Sie auf Convert selected to greetings! Die Nachricht ist nun zur Begrüßungsnachricht Ihres Anrufbeantworters geworden. Nachrichten löschen Ganz ähnlich funktioniert auch das Löschen von alten Nachrichten. Sie markieren dazu die entsprechenden Nachrichten und klicken auf Delete selected messages.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.74 Liste der Nachrichten auf dem Anrufbeantworter Probieren Sie einmal aus, ob Ihr Browser die Nachricht abspielen kann! Mit einem Klick auf den Link mit dem Datum der Nachricht öffnet sich ein Fenster, und Sie können die Nachricht mit etwas Glück hören. Ich habe allerdings keine zufriedenstellende Qualität hinbekommen. Bei sehr kurzen Nachrichten (< fünf Sekunden) ist es außerdem vereinzelt vorgekommen, dass mein Modem sich »verschluckt« hat. Fazit Ein analoges Modem sollte man im Alltag nur bedingt als Anrufbeantworter einsetzen. Je nach Bauart des Modems ist eine bessere oder schlechtere Qualität zu erwarten.

2.9.3 Alternativen
Wenn Sie nicht gewillt sind, einen Server rund um die Uhr zu betreiben, damit dort Nachrichten aufgenommen werden können, gibt es alternativ die Möglichkeit, bei einigen Freemail-Anbietern ebenfalls Voicemail-Accounts zu bekommen. Meiner Meinung nach bietet Arcor (http://www.arcor.de) die meisten Möglichkeiten hinsichtlich Voicemail. Sie können eigene Ansagen aufsprechen und die Nachrichten gesondert mittels Filterregeln sortieren lassen.

2.10 Groupwareserver

2.10.1 Vorbemerkungen

Warum Groupware?
Was ist Groupware und welchen Vorteil bringt eine Groupwarelösung? Groupware ist eine Software, die die Zusammenarbeit von Gruppen, also Arbeitsteams erleichtern soll, indem z. B. ein gemeinsamer Kalender angeboten wird, das Zuweisen von Aufgaben möglich ist und vieles mehr. Ein gemeinsamer Kalender kann auch außerhalb des Arbeitslebens sinnvoll sein, so entsteht in einer Familie mit Kindern schnell einiges an Koordinationsaufwand. Mit einer Groupware können Sie Termine direkt in den Kalender der Gruppe eintragen, Aufgaben verteilen oder gemeinsame Dokumente verwalten. Für den Firmenbereich bietet Groupware noch mehr: Projektmanagement (Zeit- und Resourcenplanung), Trouble-Ticket-System, Forum, Chat und vieles mehr.

Warum PHProjekt?
Es war mir wichtig, eine Groupwarelösung zu wählen, die schon einige Versionen und Verbesserungen durchgemacht hat und daher stabil funktioniert. Die Bedienung sollte vollständig über ein Webinterface möglich sein, damit keine zusätzliche Software auf den PCs notwendig ist und Sie unabhängig von Betriebssystemen die Lösung nutzen können. Nicht zuletzt musste die Lösung kostenfrei sein, damit Sie sie auch in Unternehmen ohne Investitionskosten nutzen können. Die oben genannten Anforderungen erfüllen vermutlich mehr als 50 Groupware-Lösungen. Ich habe mir nicht alle Lösungen angesehen, aber doch einige und mich schließlich für PHProjekt (http://www.phproject.org) entschieden. Die Lösung wird regelmäßig aktualisiert und bietet eine gute deutschsprachige Oberfläche. Die Menüführung kommt ohne grafischen Schnickschnack aus und ist funktionell. Die Konfiguration erfolgt über den Browser und somit grafisch und ohne Eingriff in Konfigurationsdateien, auch wenn das selbstverständlich möglich ist.

2.10.2 Installation
Sie benötigen die aktuelle Version von PHProjekt, die Sie herunterladen und entpacken müssen. Ich gehe nachfolgend davon aus, dass Sie die Installation unter Linux vornehmen. Sie können selbstverständlich auch unter Windows einen Webserver mit PHP betreiben und dort PHProjekt einsetzen. Exkurs Wenn Sie unter Windows einen entsprechenden Server betreiben möchten, so schauen Sie sich die XAMPP-Lösung an. Sie bringt alle notwendigen Teile für PHProjekt mit und ist kostenlos unter http://www.apachefriends.de erhältlich. Dort gibt es auch ausreichend viele Informationen zur Installation.

Voraussetzungen für PHProjekt sind:
Webserver (z. B. Apache 1.3) PHP4-Modul für Apache MySQL-Dienst

Wenn Sie die Installation nicht auf siegfried vornehmen, dann müssen Sie im Verzeichnis1 Ihres Webservers einen Ordner groupware haben. Der vom tar angelegte Ordner phprojekt4.1 wird in groupware umbenannt. Sie entpacken das tar.gz-Archiv von PHProjekt in dieses Verzeichnis:
tar -zxvf <dateiname>.tar.gz -C /var/www/ mv /var/www/phprojekt-4.1 /var/www/groupware

Auf siegfried ist PHProjekt schon vorinstalliert, Sie können direkt mit der Konfiguration beginnen, nachdem Sie den Zugriff auf das Verzeichnis /var/www/groupware ermöglicht haben:
chown -R www-data:daemon /var/www/groupware

Stellen Sie sicher, dass der Systemdienst, mit dessen Rechten der Webserver läuft, auf dieses Verzeichnis schreibend zugreifen kann. Wenn der Webserver – üblicherweise das Programm Apache – gestartet ist, können Sie mittels ps -ef | grep apache herausfinden, welcher Benutzer Apache startet. Als root können Sie dann die Berechtigung für diesen Benutzer ändern:
chown -R <Benutzer>:<Gruppe> /var/www/groupware

Damit ist die Installation abgeschlossen.

2.10.3 Konfiguration

MySQL-Datenbank
PHProjekt benötigt eine MySQL-Datenbank, die darin benötigten Tabellen werden automatisch während der Installation angelegt. Sie können sehr einfach eine Datenbank mit dem Webmin anlegen. Zunächst sollten Sie den MySQL-Server starten, wenn das noch nicht geschehen ist. Ebenfalls sinnvoll ist es, den MySQL-Server künftig beim Systemstart zu starten. Mit dem Webmin erledigen Sie die Aufgabe über das Modul System • System-Start und -Stop. Markieren Sie den Dienst MySQL und aktivieren Sie Start Selected On Boot. Klicken Sie zum Anlegen einer Datenbank auf den Reiter Server • MySQL Datenbank-Server. Wählen Sie den Link Erstelle eine neue Datenbank. Sie sehen den Dialog in Abbildung 14.75.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.75 Groupware-Datenbank anlegen Tragen Sie unter Datenbankname den Namen groupware ein und klicken Sie auf Erstellen. Der zweite Schritt ist das Anlegen eines Benutzers, der auf diese Tabelle in geeigneter Weise zugreifen kann. Klicken Sie dazu auf das Icon Benutzerberechtigungen im Hauptverzeichnis von MySQL unter Webmin und wählen Sie Erstelle neuen Benutzer. Im nachfolgenden Dialog tragen Sie als Benutzernamen knoppix, als Passwort knoppix und unter Hosts localhost ein. Wählen Sie bei Berechtigungen alles aus, was mit »Tabelle...« beginnt und klicken Sie abschließend auf Speichern.

Check
Wenn Sie sich vergewissern wollen, dass Sie PHProjekt installieren können, haben Sie zwei Möglichkeiten:
phpinfo() env_test.php

Sie erstellen an einer beliebigen Stelle in Ihrem Webserververzeichnis (web-root), z. B. unter /var/www, eine Datei info.php mit folgendem Inhalt:
<?php phpinfo(); ?>

Dann rufen Sie diese Datei in einem Browser auf: http://<siegfried-IP>/info.php Die Ausgabe (vgl. Abbildung 14.76) zeigt Ihnen die für PHP4 relevanten Informationen an, einschließlich der gesetzten Optionen (= Configure Command) für PHP4.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.76 Ausgabe von phpinfo() Wichtig ist in diesem Zusammenhang, dass es überhaupt PHP-Version 4.x ist – und nicht die alte Version php3 – und dass die Option -with-imap vorkommt. Die zweite Möglichkeit wird von PHProjekt mitgeliefert, Sie können das PHP-Skript in einem beliebigen Browser aufrufen: http://<siegfried-IP>/groupware/env_test.php Die Seite (vgl. Abbildung 14.77) bietet Ihnen die Möglichkeit, einzelne Aspekte prüfen zu lassen. Allerdings muss ein erfolgreicher Abschluss der Tests nicht zwingend auch zu 100 % Erfolg bei der Konfiguration führen.

PHProjekt-Setup
Rufen Sie im Webbrowser Ihres Vertrauens http://<siegfried-IP>/groupware/setup.php auf.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.77 PHProjekt env_test.php prüft die Umgebung. das erste Mal ... Es erscheint ein Dialog, in dem Sie in den umfangreichen Spracheinstellungen – vermutlich – Deutsch und die oberste Option First time installation auswählen (vgl. Abbildung 14.78). Änderungen Wenn Sie das setup.php bei einer bestehenden Installation aufrufen, werden Sie zunächst gebeten, sich als Administrator auszuweisen. Sie müssen Benutzernamen und Passwort eintragen. Die Standardeinstellung ist root als Benutzername und als Passwort. Nachdem Sie auf submit geklickt haben, werden Sie auf der nächsten Seite aufgefordert, Angaben zur Datenbank zu machen:
db_type = MySQL Hostname = localhost Nutzername = knoppix Passwort = knoppix Name der existierenden DB = groupware

Klicken Sie auf los, um die Angaben zu übernehmen.

Sie haben auf dr Folgeseite die Möglichkeit, Module zu installieren oder eben zu deaktivieren. Sie tragen eine 1 ein, wenn Sie das Modul nutzen möchten, und eine 0, wenn es deaktiviert sein soll.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.78 PHProjekt setup.php: erster Bildschirm Eine Ausnahme bildet das Modul mail. Sie tragen eine 0 ein, wenn Sie es gar nicht benutzen wollen, eine 1, wenn Sie lediglich E-Mails versenden möchten und eine 2, wenn Sie über PHProjekt E-Mails empfangen können möchten. Es macht nur dann Sinn, eine 2 einzutragen, wenn bei der Beschreibung die Option 2 auch erwähnt wird. Steht dort lediglich die Option 1 erklärt, dann stimmt die Einrichtung von PHP nicht. Fehlersuche Aus eigener Erfahrung kann ich Ihnen sagen, dass man längere Zeit damit verbringen kann, den Fehler in der PHP-Konfiguration zu suchen. In der Datei /etc/php4/apache/php.ini sollte der Eintrag
extension=imap.so

vorhanden sein, ebenso sollte es die Datei imap.so auf Ihrem System geben. Wenn Sie die gewünschten Module ausgewählt haben, klicken Sie auf die kleine Schaltfläche los ganz unten auf der Seite. Auf der nächsten Seite können Sie einige allgemeine Einstellungen (Farbauswahl ...) vornehmen, auch diese Seite bestätigen Sie über die Schaltfläche los ganz unten auf der Seite. Das war es. Ihre Konfiguration wurde in die Datei /var/www/groupware/config.inc.php geschrieben. Dort können Sie zwar die Konfiguration auch ohne Webzugang editieren, jedoch ist es erforderlich, das setup.php aufzurufen, damit die Einstellungen wirksam werden.

2.10.4 PHProjekt benutzen
Der Link zum Aufruf von PHProjekt wird Ihnen am Ende des Setups angezeigt: http://<siegfried-IP>/groupware/index.php

Es erscheint der Login-Bildschirm. Während der Installation wurden zwei Benutzer im Groupware-System angelegt, root und test. Beide haben »root« bzw. »test« als Passwort. Der Benutzer root ist Administrator und kann Gruppen oder Benutzer anlegen, während der Benutzer test nur Benutzer in der Gruppe default ist.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.79 Kalender eines Benutzers An dieser Stelle alle Funktionen von PHProjekt erläutern zu wollen, ist nicht Ziel dieses Buches. Sie sollten sich nach der Benutzung aus dem System ausloggen. Dazu klicken Sie auf den Reiter >>. Als Benutzer root haben Sie einen weiteren Reiter zur Verfügung: Admin. Dort können Sie Benutzer, Gruppen, Rollen und vieles mehr anlegen und einrichten. Dort ist es auch möglich, die Standardpasswörter für die Benutzer root und test zu ändern. Wenn Sie bei der Passwortänderung lediglich das Zufallspasswort angeboten bekommen, dann stimmt eine Variable nicht. Öffnen Sie die Datei /var/www/groupware/config.inc.php und suchen Sie die Zeile mit $pw_change. Tragen Sie hinter dem Gleichheitszeichen eine Zwei ein:
$pw_change = "2";

2.11 MLDonkey: Tauschbörsentalente

2.11.1 Tauschbörsen
Tauschbörsen seien der Sargnagel der Musikindustrie, sie schädigen die Filmindustrie. Solche und weitere Ansichten oder auch deren Gegendarstellungen werden von mir in diesem Buch nicht behandelt. (il-)legal Im Jahr 2003 wurde die rechtliche Grundlage, auf deren Basis jeder Privatmann ungestraft Filme und Musik tauschen konnte, geändert. Es ist inzwischen illegal, zumindest bei gewerbsmäßigem Handel mit Raubkopien wird von den Herstellern oder deren Verbänden gegen Raubkopierer vorgegangen. Es gibt aber nicht nur illegale Dateien in Tauschbörsen, sondern auch völlig legale. Beispielsweise wird in den Tauschbörsen die Auskopplung zu FLI4L aus meinem Buch angeboten. Wesentlich interessanter als die juristischen sind die technischen Fragen. Wie funktionieren diese Peer-to-Peer-Netzwerke? Das übliche Prinzip ist, dass jeder Teilnehmer etwas in diesem Netzwerk zur Verfügung stellt und im gleichen Maße, wie er das tut, auch Daten aus diesem Netzwerk herunterladen darf. Es gibt üblicherweise in diesen Netzwerken keine übergeordnete Instanz, sondern – das drückt Peer-to-Peer aus – nur gleichberechtigte Teilnehmer. Anders als im normalen Internet laden Sie die Daten nicht von einem Server herunter, sondern direkt von einem anderen Teilnehmer. Damit Sie überhaupt eine Datei bei einem anderen Teilnehmer finden, gibt es Verzeichnisserver, die Inhaltsverzeichnisse mit Dateien der einzelnen Teilnehmer führen. An diese Verzeichnisserver stellen Sie eine Suchanfrage, klicken auf das gewünschte File und das Tauschprogramm sorgt dafür, dass es bei allen Besitzern dieser Datei gleichzeitig anfragt, ob man es dort herunterladen darf. Es trägt sich bei den anderen Teilnehmern in eine Warteliste ein, aufgrund eines kompilizierten Algorithmus bekommen Sie bei jedem Teilnehmer einen Warteplatz. Größere Dateien werden in kleinere Stücke geteilt, und jeder Teil kann von einem anderen Teilnehmer heruntergeladen werden. Manche Tauschbörsenprogramme bieten zwangsweise fertig heruntergeladene Teile wieder anderen Teilnehmern zum Download an. Hinsichtlich der Datenmenge gilt bei solchen Tauschbörsen für einen Download daher, dass Sie in etwa die gleiche Menge Daten in das Internet hochladen müssen, wie Sie sie herunterladen. Für eine CD von 700 MByte werden ungefähr 1 400 MByte übertragen. Je mehr Daten Sie in das Netzwerk hochgeladen haben – Sie werden über Ihre offizielle IPAdresse identifiziert –, desto mehr Bonuspunkte haben Sie, entsprechend besser ist Ihr Listenplatz auf den Wartelisten.

2.11.2 MLDonkey einrichten
MLDonkey ist ein Tauschbörsenprogramm. Es beherrscht nicht nur ein Peer-to-PeerNetzwerk, sondern gleich mehrere. Unter http://www.mldonkey.org finden Sie nähere Informationen, welche Tauschbörsen insgesamt unterstützt werden.

Die wichtigsten Netzwerke sind eDonkey, gnutella und Bittorrent. Sie können also mit MLDonkey alles herunterladen, was auch mit emule – dem bekanntesten Client für das eDonkey-Netzwerk – herunterladbar ist. MLDonkey besteht aus dem so genannten MLDonkey-Server, dieser lädt Dateien aus dem Internet herunter, und einem MLDonkey-Client. Der MLDonkey-Client dient lediglich der Bedienung, wenn diese nicht über Telnet oder einen Webbrowser stattfinden soll. SUSE Das rpm-Paket für SUSE 9.0 (mldonkey-2.5-57.i586.rpm) ist offenbar nur auf der SUSEDVD enthalten. MLDonkey finden Sie in der Gruppe Productivity/Networking/Other. Starten Sie MLDonkey unter siegfried mit dem Befehl
mldonkey_server --daemon

Sie können sich nun lokal auf dem siegfried-PC mit Telnet, dem Browser oder dem mlgui um die Konfiguration kümmern. Mein Favorit ist der Browserzugriff über http://localhost:4080 der einen umfangreichen Zugriff erlaubt.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.80 Downloadanzeige von MLDonkey Die Oberfläche ist weitestgehend selbsterklärend (vgl. Abbildung 15.80). Zunächst sollten Sie unter dem Punkt Servers sicherstellen, dass Sie mit einem Server verbunden sind. freischalten

Damit im eDonkey-Netzwerk auf Daten unter Ihrer IP-Adresse zugegriffen werden kann, müssen Sie folgende Einstellungen an Ihrem Router/Ihrer Firewall freischalten. Leiten Sie 4661 TCP 4662 TCP 4665 UDP 4672 UDP jeweils an den PC weiter, auf dem der MLDonkey läuft. Üblicherweise wird die Funktion in DSL-Routern Virtual Server genannt. Diese Weiterleitungen sind unabhängig vom verwendeten Client und spezifisch für jedes Peer-to-Peer-Netzwerk einzurichten. An je mehr Netzwerken Sie teilnehmen, desto mehr Lücken hat Ihre Firewall.

Wenn Sie die richtigen TCP- und UDP-Ports weiterleiten, müssten Sie eine gute Verbindung bekommen, das wird im eDonkey-Netzwerk durch eine hohe ID gekennzeichnet. Bei MLDonkey (vgl. Abbildung 14.81) steht neben dem Server der Hinweis HI, oder wenn es nicht funktioniert hat, LO für Low ID. Der MLDonkey verwendet eine server.ini, in der die Verzeichnisserver aufgelistet sind. Diese Datei entspricht der Datei server.met bei eMule. Sie finden aktuelle Versionen dieser Dateien mit einem entprechenden Suchwort einer Suchmaschine.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.81 Serveranzeige bei MLDonkey Wenn Sie mit den Funktionen der Weboberfläche nicht zurechtkommen, können Sie auf die spartanische Telnet-Oberfläche von MLDonkey zurückgreifen. Verbinden Sie sich mittels
telnet localhost 4000

auf den lokalen TCP-Port 4000 des Netzwerkservers. Bequemer ist da schon die grafische Oberfläche, die der MLDonkey-Client bietet. Sie können den Client mittels
mlgui

starten (vgl. Abbildung 14.82).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.82 MLDonkey-Client Die Oberflächen und Funktionen sind gleichwertig wie bei eMule, die Reichenfolge der Menüs ist etwas besser sortiert als im Webzugriff, weil die Servers ganz links stehen, dann die Downloads kommen und dann die Results. Genau so arbeiten Sie auch mit einem solchen Client: Sie verbinden sich zu einem Verzeichnisserver, suchen eine Datei, laden sie herunter und wenn der Download beendet ist, ist die Datei unter Results zu finden.

2.12 Timeserver
Ein entscheidender Faktor in einem gut funktionierenden LAN ist die Zeit. Auch im privaten LAN ist eine synchrone und möglichst genaue Zeit sinnvoll. E-Mails werden z. B. mit einem Zeitstempel versehen und beim Empfänger nach diesem Kriterium sortiert. Ihre Nachrichten werden bei einer falsch gehenden Uhr unter Umständen gar nicht bemerkt, weil sie sich in der Vergangenheit einreihen. Hardwareuhr Ein PC verfügt über einen eingebauten Zeitgeber, die Real Time Clock (RTC). Diese Uhr hängt an einer kleinen Batterie, ist aber trotzdem meistens sehr ungenau. Sollte keine bessere Quelle zur Verfügung stehen, macht sich jeder Teilnehmer im LAN mit seiner RTC sein eigenes Bild von der richtigen Zeit. Systemzeit Neben dieser Hardwarezeit kennt das Betriebssystem noch die Systemzeit. Die Systemzeit kann beim Booten mit der RTC abgeglichen werden. Die Systemzeit ist dann genauso ungenau wie die Hardwarezeit. Die Logik der Sommer- und Winterzeit wird übrigens in der Regel nicht von der RTC übernommen. Das übernimmt das Betriebssystem.

Webmin Die Systemzeit und die Hardwarezeit können Sie mit dem Webmin einsehen und auch verändern. Das Modul Hardware • Systemzeit liefert einen Überblick (vgl. Abbildung 14.83). Sie können die Zeit entweder manuell einstellen, die Hardware- und die Systemzeit aneinander anpassen oder mit einem Zeitserver im Internet abgleichen. Der Webmin versucht nicht nur ein Verfahren (Protokoll), um die Zeit von dem angegebenen Server zu erfragen. Sie sollten die Zeit einmal mit dem Webmin auf den aktuellen Stand bringen, da der Dienst bei zu großen Abweichungen der Systemzeit gar nicht erst aktiv wird.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.83 Systemzeit, Hardwarezeit (RTC) und das Internet NTP/XNTP Wie bekommen nun alle Teilnehmer im LAN die gleiche Systemzeit? Es wäre ein sehr umständlicher Weg, die Hardwareuhr ständig zu aktualisieren. Deswegen wurden verschiedene Protokolle entwickelt, die einen mehr oder weniger aufwändigen Zeitabgleich zulassen. Ich schlage Ihnen den Dienst NTP (Network Time Protocol) vor, der von dem Netzwerkserver angeboten werden kann und von den meisten Clients im LAN ohne weitere Software verstanden wird. Exkurs Das NTP-Protokoll führt über einen ausgeklügelten Mechanismus dazu, dass selbst Rechner über große Entfernungen die Zeit sehr genau aushandeln können. Dabei wird sogar die Laufzeit der Pakete berücksichtigt. In größeren Netzwerken können dann mehrere Zeitserver die Referenzzeit vereinbaren. Ein Server, der stark von den anderen abweicht, wird nach einer Art Abstimmung entmachtet, der Rest bleibt weiter in Kontakt und bestimmt die Zeit im LAN. Die Server sind je nach Genauigkeit in Schichten gegliedert (Stratum). Je niedriger das Stratum, desto höher die Genauigkeit und Wertigkeit des Servers. Das NTP-Protokoll kommuniziert über den Port 123.

2.12.1 Zeitservice aufsetzen
Um den Zeitserver einzurichten, müssen Sie die Datei /etc/ntp.conf editieren. Ich stelle Ihnen der Reihe nach die Einträge vor, die zu machen sind. Zunächst tragen Sie einen oder mehrere Zeitserver aus dem Internet ein. Im Internet finden sich Listen mit Zeitservern. Auf der Seite http://www.ntp.org finden Sie den Link Time Servers. Suchen Sie sich Zeitserver in Ihrer Nähe aus!
server ntp0.fau.de server ntp1.ptb.de

Das Driftfile speichert die Information, wie stark die Systemzeit von der Referenzzeit im Internet abweicht:
driftfile /etc/ntp.drift

Auf Authentisierung kann verzichtet werden:
authenticate no

Das Modul System • System-Start und -Stop können Sie wie gewohnt verwenden, um den Zeit-Server zu starten. Sie sollten natürlich auch dafür sorgen, dass der Dienst während des Bootvorganges automatisch gestartet wird. Bei siegfried heißt der zu startende Dienst ntpsimple, bei SUSE heißt er xntp. Test Die Funktion des Servers testen Sie mit dem Kommando ntpq. Das q im Namen steht für query (dt. abfragen, erkundigen). Mit dem Kommando peers erhalten Sie einen Überblick über die Verbindungen des NTPs zu seinen Servern. Nach einigen Minuten sucht sich der lokale NTP-Client einen Server zur Synchronisation aus der Liste, den er mit einem »*« markiert (vgl. Abbildung 14.84). Ein Server, der für diesen als Ersatz dienen könnte, wird mit einem »+« gekennzeichnet.

Hier klicken, um das Bild zu Vergrößern

Abbildung 2.84 ntpq zeigt den Status des NTPs Auch der FLI4L-Softwarerouter hält eine Zeitserverfunktion bereit (vgl. Kapitel 16.4.3, Timeserver).

2.12.2 Zeitsynchronisierung beim Systemstart
Es ist sinnvoll, die Systemzeit gleich beim Systemstart mit einem Server abzugleichen. Geschieht dies nicht und die lokale Zeit weicht nicht unerheblich von der des Zeitservers ab (in der Regel 1 000 Sekunden), dann verweigert der NTP-Server den Dienst. SUSE SUSE bietet Ihnen die Möglichkeit, beim Boot des Systems einen oder mehrere Server anzugeben, von dem mit blindem Vertrauen die Zeit übernommen wird. Die Einstellung wird über den Eintrag XNTP_INITIAL_NTPDATE in der Datei /etc/sysconfig/xntp vorgenommen. Standardmäßig steht hier AUTO-2. Das bedeutet, dass die ersten beiden Server aus der Datei /etc/ntp.conf gelesen werden. Die Abfrage der Server erfolgt automatisch beim Start des Dienstes xntp. Debian/siegfried Um diese Funktion bei siegfried einzurichten, müssen Sie die Datei /etc/default/ntp-servers editieren. Hier tragen Sie dann einen oder mehrere Server Ihrer Wahl untereinander ein. Hier ist noch besonders darauf zu achten, dass ein Dienst zusätzlich gestartet werden muss: der Dienst ntpdate.

2.12.3 Clients an den Zeitserver anbinden
Die Anbindung der Clients an den Server ist einfach. In den meisten Fällen ist es selbst für Windows-Betriebssysteme nicht nötig, zusätzliche Software aufzuspielen. Mit dem YaST2 • Netzwerkdienste • NTP-Client ist es unter SUSE zusätzlich möglich, den NTP-Dienst zu konfigurieren.

Linux
Entsprechend der Einrichtung des Servers sieht die Anbindung eines Linux-PCs im LAN aus:
server siegfried.local driftfile /etc/ntp.drift authenticate no

Entsprechend den Einstellungen beim NTP-Server sollten Sie auch beim Client einen Rechnernamen für den Abgleich der Zeit beim Boot eintragen. Überprüfen Sie außerdem, dass die Dienste gestartet werden!

Windows
Unter Windows 2000 und Windows XP können Sie über die Kommandozeile einen SNTPClient (Simple Network Time Protocol) einrichten. Ein SNTP-Client kann seine Zeit mit einem NTP-Server abgleichen, umgekehrt funktioniert es nicht. Klicken Sie auf Start • Ausführen... und starten Sie den Kommandointerpreter cmd! Mit einem Kommando legen Sie den NTP-Server für Windows XP und Windows 2000 fest:
net time /setsntp:<Hostname>

Mit dem Kommando net time /querysntp sehen Sie die aktuelle Konfiguration. Die Einstellungen werden permanent in der Registry-Datenbank gespeichert. Zum Schluss stellen Sie noch sicher, dass der Windows-Zeitgeberdienst gestartet wird. Klicken Sie auf Systemsteuerung • Verwaltung • Dienste und sorgen Sie dafür, dass der Starttyp des Dienstes Windows-Zeitgeber auf Automatisch steht. Für Windows 95/98/NT gibt es eine große Anzahl an Freeware-(S)NTP-Clients. Als Beispiel sei an dieser Stelle nur das Programm Automachron genannt, das Sie unter http://www.oneguycoding.com/automachron und auf der Buch-DVD im Verzeichnis /software/management finden. Die Konfiguration ist in Kapitel 16.4.4, Clients beschrieben.

2.12.4 Andere Zeitdienste als NTP
Es gibt Netzwerkteilnehmer, die mit dem NTP-Protokoll nichts anfangen können. Dabei handelt es sich meistens um Hardware wie z. B. Router. time und daytime Diese LAN-Teilnehmer benötigen andere Dienste wie den time-Dienst (Port 37) oder den daytime-Dienst (Port 13). Diese Dienste brauchen den Superdämon inetd bzw. xinetd, um laufen zu können. Der inetd ist bei siegfried installiert, SUSE verwendet standardmäßig den xinetd. Die Superdämonen werden mit dem Webmin-Modul Netzwerk • Internet-Dienste und -Protokolle (siegfried) bzw. Netzwerk • Erweiterte Internet-Dienste (SUSE) konfiguriert. inetd Sie können je nach Bedarf unter den Diensten daytime (tcp), daytime (udp), time (tcp) und time (udp) wählen. In der folgenden Maske klicken Sie zunächst auf Programm aktiviert und dann auf Speichern (vgl. Abbildung 14.85).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.85 Die Konfiguration des Superdämons inetd xinetd Die Konfiguration des xinetd erfolgt entsprechend. Mit der Auswahl Service enabled? bestimmen Sie, ob die Dienste wie time und daytime über den Superdämon xinetd abgeboten werden sollen. Mit einem Klick auf Speichern wird die Konfigurationsdatei /etc/xinetd.conf geschrieben. inetd/xinetd Jetzt müssen Sie nur noch sicherstellen, dass der frisch konfigurierte (x)inetd auch gestartet wird. Dazu bedienen Sie sich des Webmin-Moduls System • System-Start und -Stop. Test Die Funktion testen Sie mit einem Telnet auf den entsprechenden Port des Protokolls, also telnet <Netzwerk-Server> 13 bzw. telnet <Netzwerk-Server> 37. Die Rückgabe der Zeit erfolgt über Port 13 (daytime) in Klartext, bei Port 37 (time) sehen Sie einen Binärcode (vgl. Abbildung 14.86).

Hier klicken, um das Bild zu Vergrößern Abbildung 2.86 Port 13 (daytime) und 37 (time) sind aktiv.

2.13 Ein Backupkonzept für den Netzwerkserver
Sie sollten sich unbedingt Zeit nehmen, um über ein Backupkonzept für Ihren Netzwerkserver nachzudenken. Betrachten Sie dieses Kapitel als Vorbereitung Ihrer Entscheidung. Es geht mir nicht darum, Ihnen ein fertiges Backup vorzusetzen. Das wäre Unsinn, denn ich kenne Ihre Infrastruktur nicht. Es geht mir vielmehr darum, Ihnen die Grundbegriffe zu erläutern. Die Entscheidung für das Programm und Ihre Strategie müssen Sie allein treffen. Eine gute englischsprachige Einführung in das Thema finden Sie im Internet auf der Seite http://www.tldp.org/REF/INTRO/Backup-INTRO/index.html.

2.13.1 Wozu Backup?
Ihre Daten lagen vor dem Netzwerkserver verstreut auf mehreren Clients. Eine Sicherung aller Clients ist sehr zeitaufwändig und technisch anspruchsvoll. Deshalb macht es auch kaum jemand. Sie haben auf dem Netzwerkserver nun viele Aufgaben zentralisiert. Im Idealfall liegen keine unersetzlichen Daten mehr auf den anderen PCs in Ihrem Netzwerk. Auf den Festplatten des Netzwerkservers liegen persönliche Daten und E-Mails, Nachrichten Ihres Anrufbeantworters oder heruntergeladene Dateien. Was passiert, wenn die (nicht gespiegelte) Festplatte dieses Servers ausfällt? Wenn Sie beim Gedanken daran Zahnschmerzen bekommen, sind Sie hier richtig: beim Backup. Es sind nicht nur defekte Festplatten, die zum Datenverlust führen. In vielen Fehlerstatistiken liegt der Faktor Mensch noch vor der Hardware. Ein falsches Kommando und wichtige Daten können verloren sein. Wer aus Gewohnheit immer als root arbeitet, macht früher oder später leidvoll diese Erfahrung. Ein weiterer Grund dafür, dass Sie ein Backup haben sollten, ist, dass Daten auch manipuliert werden können. In einem wichtigen Brief wird ein Absatz gelöscht und der Brief so

gespeichert. Wochen später fällt Ihnen ein, dass der Absatz doch wichtiger sein könnte als ursprünglich angenommen. Glücklich ist der Mensch, der ein Backup hat. Ein sehr unangenehmes Thema ist auch die mögliche Manipulation Ihrer Daten von außerhalb des LANs. Ein Teilnehmer im Netzwerk könnte beim Surfen im Internet einen Virus eingeschleppt haben. Infizierte Dateien würden Sie einfach mit nicht infizierten aus einer Sicherung überschreiben. Falls Sie einen Einbruch in Ihr System entdeckt haben, ist es außerdem ratsam, die Dateien auf der Festplatte mit den vor dem Einbruch gesicherten Daten zu vergleichen. Im Internet finden sich eine Fülle von Free- und Sharewareprogrammen. Welches davon das richtige für Sie ist, müssen Sie selber entscheiden. Stellen Sie sich beim Lesen dieses Kapitels bitte folgende Fragen:
Welche Datenmenge muss gesichert werden? Wie häufig (z. B. wöchentlich) sollten die Daten gesichert werden? Welche Laufwerke und Sicherungsmedien stehen zur Verfügung?

2.13.2 Backup
Einhundertprozentige Sicherheit gibt es nicht. Im Wesentlichen entscheiden Sie selber, wie ausfallsicher Ihr Server sein soll. Das bedeutet: Je mehr Gedanken Sie sich jetzt machen, desto schneller ist das System im Fehlerfall wieder aufgebaut. Es gibt grundsätzlich zwei Arten der Sicherung: lokale Sicherungen und Sicherungen über das Netzwerk. Bei der lokalen Sicherung werden die Daten auf ein Laufwerk oder Medium am Netzwerkserver gesichert. Dabei kann es sich um ein Bandlaufwerk (z. B. DDS oder DLT), einen CD- oder DVD-Brenner oder auch eine andere Festplatte handeln. Die Sicherung von Daten in eine Datei auf der gleichen Festplatte ist natürlich nicht zu empfehlen, da bei einem Ausfall der Platte mit den Daten auch das Backup verschwunden wäre. Netzwerksicherungen liefern die Dateien über einen anderen Netzwerkteilnehmer an ein dort angeschlossenes Gerät. Einige Freewareprogramme bieten die Sicherung in eine Netzwerkfreigabe eines anderen PCs an (NFS, Samba). Nicht nur auf Sicherungslaufwerke können Sie über einen anderen PC im LAN zugreifen. Auch die Steuerung der Sicherung muss nicht lokal bleiben. Die Sicherungsdaten (wann wurde was wohin gesichert?) können auf diese Weise vom zu sichernden System ferngehalten werden. Sollte der Netzwerkserver also Daten verlieren, wären die Informationen über die Sicherungen unversehrt. inkrementelle Sicherung Wenn Sie größere Mengen relativ statischer Daten sichern möchten, sollten Sie bei der Wahl Ihres Backuptools darauf achten, dass inkrementelle Sicherungen unterstützt werden. In einer inkrementellen Sicherung werden nur die Dateien in die Sicherung einbezogen, die sich seit der letzten Vollsicherung oder der letzten inkrementellen Sicherung verändert haben.

2.13.3 Restore
Im Falle eines Restores (Zurückspielen der Daten vom Sicherungsmedium auf die Festplatte) sollten Sie sorgfältig und mit Bedacht arbeiten. Die meisten Backupprogramme bieten Ihnen die Möglichkeit, die betroffenen Dateien und Verzeichnisse einzeln auszuwählen. Andere Optionen können im Ernstfall sehr hilfreich sein. Mit der Option NO OVERWRITE werden nur Dateien zurückgespielt, die nicht mehr vorhanden – weil z. B. versehentlich gelöscht – sind. Alle anderen Dateien bleiben unberührt. Ob und welche anderen Hilfsmittel das Backupprogramm Ihnen bietet, erfahren Sie aus der Dokumentation.

2.13.4 Disaster Recovery
Wenn gar nichts mehr geht, hilft nur ein Disaster Recovery. Es ist denkbar, dass das Betriebssystem nicht mehr zu retten ist. Die Basis selber ist so in Mitleidenschaft gezogen, dass nur noch ein kompletter Restore der Partitionen hilft. Im Internet habe ich mehrere Tools gefunden, die sich mit diesem Thema beschäftigen. Überzeugt hat mich das Programm Partition Image (http://www.partimage.org). Es wird bei KNOPPIX und siegfried mitgeliefert. Mit diesem Programm können Sie ein Image ganzer Partitionen erstellen (vgl. Abbildung 14.87). Im Moment der Sicherung sollte die Partition allerdings nicht eingehängt sein. Partitionen, die für das Betriebssystem absolut notwendig sind, können Sie dementsprechend nur nach einem Boot von der CD/DVD sichern oder restaurieren. Mit dem Kommando partimage --help erhalten Sie Hilfe zum Aufruf des Programms, der Aufruf ohne Optionen öffnet eine grafische Oberfläche. Eine genauere Dokumentation, auch zum netzwerkunterstützten Einsatz von Partition Image, finden Sie auf der Homepage des Projektes.

Hier klicken, um das Bild zu Vergrößern Abbildung 2.87 Ganze Partitionen mit PartImage sichern