Folgende Situation findet in so manchem Haushalt: Alle Familienmitglieder haben einen PC oder Laptop für die unterschiedlichsten Aufgaben. Dank Linux schnurrt im Arbeitszimmer oder einer Abstellkammer ein zentraler Rechner, an dem auch ein Drucker hängt. Nun wollen natürlich alle ihre Daten sichern und gerne auch mal etwas ausdrucken – und das bitte unter Linux, Windows und vielleicht auch Mac OS.
In solchen Fällen ist Feingefühl für die Größe der Infrastruktur gefragt – sonst verkompliziert sich diese unnötig. Denn: Kerberos zur Authentifizierung, SSL/TLS-Verschlüsselung über Zertifikate um jeden Preis und dazu ein dickes LDAP-Backend sind nicht zwingend notwendig. Ein Beispiel dafür, wie Sie daheim ein funktionierendes, zuverlässiges Netzwerk aufbauen, zeigt dieser Workshop.
Samba [1] vermittelt zwischen den Welten und bietet die Möglichkeit, Linux, Windows und Mac OS in einem Netzwerk verschiedene Dienste zentral zur Verfügung zu stellen. Im Kern baut die Samba-Suite auf dem Server-Message-Block-Protokoll (SMB) auf. Ursprünglich von Microsoft für den Austausch von Informationen innerhalb eines Netzwerks entwickelt, bildet es heute die Grundlage für die Software.
Installation
Das Samba-Projekt konnte sich dabei auf keine Dokumentation von Microsoft stützen, sondern untersuchte Windows-Systeme bei der Kommunikation im Netzwerk mit Tools wie Ethereal [2]. Die entwickler setzten ihre Beobachtungen dann in der Implementation des SMB-Protokolls um. Die aktuelle Version dieser Software trägt die Nummer 3; die Version 4 befindet sich derzeit in Arbeit.
Das SMB-Protokoll bildet zwar den Kern der Samba-Suite. Allerdings bietet diese wesentlich mehr als nur ein Kommunikationsprotokoll: Als Server eingesetzt, verteilt sie Dateien und Informationen im Netzwerk, auf die Rechner unter Linux, Windows und Mac OS gleichermaßen zugreifen können.
Beinahe jeder Linux-Distributor bietet Samba als fertiges Paket an. Server-Systeme von Suse und Red Hat wie beispielsweise der Suse Linux Enterprise Server (SLES) oder Red Hat Enterprise Linux (RHEL) liefern zum Management grafische Oberflächen. Allerdings kostet die Unterstützung durch die Distributoren ordentlich Geld. In einem kleineren Netzwerk lohnt es sich mitunter, selber Hand an die Lösung anzulegen.
Viele Distributoren teilen das Samba-Paket in einzelne RPMs auf. Wenn Sie Gentoo einsetzen, dann stellen Sie Ihre Samba-Installation mit so genannten USE-Flags ein. Entscheidend für eine sinnvolle Installation ist das Kommando USE="cups pam quotas readline winbind" emerge samba.
Für die Konfiguration des Servers brauchen Sie eine entsprechende Datei. Unter Umständen liegt bereits eine mit einkommentierten Beispielen versehene smb.conf, im Verzeichnis /etc/samba. Die dürfen Sie getrost in /etc/samba/smb.conf.orig umbenennen. Aus Listing 1 erzeugen Sie leicht eine neue, die Sie an Ihre Umgebung anpassen.
Listing 1
[global] workgroup = TULPENSTRASSE server string = Samba 3.0.14a passdb backend = smbpasswd:/etc/samba/smbpasswd username map = /etc/samba/smbusers name resolve order = wins bcast hosts printcap name = CUPS printing = CUPS logon drive = H: logon script = scripts\logon.bat logon path = \\chef\profile\%U domain logons = Yes preferred master = Yes wins support = Yes add user script = /usr/sbin/useradd -m '%u' delete user script = /usr/sbin/userdel -r '%u' add group script = /usr/sbin/groupadd '%g' delete group script = /usr/sbin/groupdel '%g' add user to group script = /usr/sbin/usermod -G '%g' '%u' add machine script = /usr/sbin/useradd -s /bin/false -d /var/lib/nobody '%u' [homes] comment = Da Heim valid users = %S read only = No browseable = No [printers] comment = Druckerei path = /var/spool/samba printable = Yes guest ok = Yes browseable = No [netlogon] comment = Netzwerkanmeldung path = /export/netlogon valid users = %U read only = No [profile] comment = Benutzerprofile path = /export/profiles valid users = %U create mode = 0600 directory mode = 0700 writable = yes browsable = no [gemeinsam] comment = Gemeinsame Dateien path = /export/shared read only = No
Grundgerüst
Zu jeder Konfigurationsdatei gehören Sektionen, deren Namen zum einen die Software vorgibt und auch so erwartet; zum anderen dürfen Sie aber Sektionen mit frei wählbarem Namen hinzufügen. Zu den festen Sektionen zählt zum Beispiel der Abschnitt [global] für übergreifende Einstellungen am Server. Wie Sie die einzelnen Optionen richtig einsetzen, das erfahren Sie im weiteren Verlauf dieses Workshops. Vorab ist nur wichtig, dass überhaupt eine Konfiguration vorhanden ist.
Wollen Sie mehr über den Aufbau der smb.conf, ihrer Sektionen und Optionen wissen, finden Sie Details dazu über die Manpage smb.conf. Das ist in jedem Fall angeraten. Ob Ihnen beim Abtippen der Datei ein Fehler unterlaufen ist, erfahren Sie mithilfe des Tools Testparm, das Fehler in der Konfiguration anzeigt. Deshalb sollten Sie es nach jeder Änderung in der Datei ausführen.
Sollen in Ihrem Netzwerk Linux- und Windows-Clients in einer Domäne interagieren, brauchen sie eine Domänenverwaltung. Diese Aufgabe übernimmt einer der Rechner im Netzwerk, auf dem Sie Linux und Samba installieren. Domänenverwaltung bedeutet, dass der Samba-Server Rechnernamen und IP-Adressen, Benutzernamen sowie deren zugehörigen Passwörter und Freigaben zur Verfügung stellt.



