Tanzkurs

Mit Samba ein kleines Netz einrichten

01.11.2005
Wer zu Hause ein Netzwerk mit heterogenen Clients betreibt, wünscht sich zentrale Dienste zum einfachen Zugriff auf Dateien und Peripheriegeräte. Samba bietet in diesem Fall genau das Richtige, und zudem lässt sich die Lösung mit allen gängigen Distributionen aufsetzen.

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.

Abbildung 1: Die Beispiel-Topologie der hier behandelten Netzwerkumgebung. Weitere Clients oder Drucker lassen sich dem Strang einfach hinzufügen.

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.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 4 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Admin Probleme mit Q4os
Thomas Weiss, 30.03.2015 20:27, 5 Antworten
Hallo Leute, ich habe zwei Fragen zu Q4os. Die Installation auf meinem Dell Latitude D600 verl...
eeepc 1005HA externer sound Ausgang geht nicht
Dieter Drewanz, 18.03.2015 15:00, 0 Antworten
Hallo LC, nach dem Update () funktioniert unter KDE der externe Soundausgang an der Klinkenbuc...
AceCad DigiMemo A 402
Dr. Ulrich Andree, 15.03.2015 17:38, 2 Antworten
Moin zusammen, ich habe mir den elektronischen Notizblock "AceCad DigiMemo A 402" zugelegt und m...
Start-Job behindert Bootvorgang, Suse 13.2, KDE,
Wimpy *, 20.02.2015 10:32, 4 Antworten
Beim Bootvorgang ist ein Timeout von 1 Min 30 Sec. weil eine Partition sdb1 gesucht und nicht gef...
Konfiguration RAID 1 mit 2 SSDs: Performance?
Markus Mertens, 16.02.2015 10:02, 6 Antworten
Hallo! Ich möchte bei einer Workstation (2x Xeon E5-2687Wv3, 256GB RAM) 2 SATA-SSDs (512GB) al...