30.10. Mit Samba einen Datei- und Druckserver für Microsoft® Windows®-Clients einrichten

Beigetragen von Murray Stokely.

30.10.1. Überblick

Samba ist ein beliebtes Open Source-Softwarepaket, das es Ihnen ermöglicht, einen Datei- und Druckserver für Microsoft® Windows®-Clients einzurichten. Clients können sich dadurch mit einem FreeBSD-System verbinden und dessen Speicherplatz oder dessen Drucker verwenden. Dies genauso, als wenn es sich um lokale Drucker oder Festplatten handeln würde.

Samba sollte als Softwarepaket auf den FreeBSD-Installationsmedien vorhanden sein. Wenn Samba noch nicht installiert ist, können Sie dies über den Port oder das Paket net/samba34 nachholen.

30.10.2. Konfiguration

Die Standardkonfigurationsdatei von Samba heißt /usr/local/share/examples/samba34/smb.conf.default. Diese Datei muss nach /usr/local/etc/smb.conf kopiert und angepasst werden, bevor Samba verwendet werden kann.

Die Datei smb.conf enthält Laufzeitinformationen für Samba, beispielsweise Druckerdefinitionen oder file system shares, also Bereiche des Dateisystems, die mit Windows®-Clients geteilt werden sollen. Die Konfiguration der Datei smb.conf erfolgt webbasiert über das im Samba-Paket enthaltene Programm swat.

30.10.2.1. Das Samba Web Administration Tool (SWAT) verwenden

Das Samba Web Administration Tool (SWAT) wird als Daemon von inetd aktiviert. Daher müssen Sie inetd, wie in Abschnitt 30.2, „Der inetd Super-Server beschrieben, aktivieren und die folgende Zeile in /etc/inetd.conf entfernen, bevor Sie swat zur Konfiguration von Samba verwenden können:

swat   stream  tcp     nowait/400      root    /usr/local/sbin/swat    swat

Wie bereits in Beispiel 30.1, „Die inetd-Konfiguration neu einlesen“ beschrieben, müssen Sie die inetd-Konfiguration neu einlesen, nachdem Sie diese Änderung durchgeführt haben.

Nachdem swat in der Datei inetd.conf aktiviert wurde, rufen Sie im Internetbrowser die Adresse http://localhost:901 auf. Bei der ersten Anmeldung muss das root-Benutzerkonto verwendet werden.

Nachdem erfolgreicher Anmeldung an der Hauptkonfigurationseite von Samba steht die Systemdokumentation zur Verfügung, und durch einen Klick auf die Globals-Karteikarte kann mit der Konfiguration begonnen werden. Die Einstellungen, die Sie hier vornehmen können, entsprechen denen des Abschnitts [global] von /usr/local/etc/smb.conf.

30.10.2.2. Globale Einstellungen

Unabhängig davon, ob swat verwendet, oder /usr/local/etc/smb.conf direkt editiert wird, sollten zuerst folgende Richtlinien angepasst werden:

workgroup

Der NT-Domänenname oder der Arbeitsgruppenname der Rechner, die auf den Server Zugriff haben sollen.

netbios name

Legt den NetBIOS-Namen fest, unter dem der Samba-Server bekannt ist. In der Regel handelt es sich dabei um den ersten Teil des DNS-Namens des Servers.

server string

Legt die Beschreibung fest, die angezeigt werden soll, wenn mit net view oder über andere Netzwerkprogramme Informationen über den Server angefordert werden.

30.10.2.3. Samba absichern

Zwei der wichtigsten Einstellungen in /usr/local/etc/smb.conf betreffen das zu verwendende Sicherheitsmodell sowie das Backend-Passwortformat für die Benutzer der Samba-Clients. Folgende Optionen sind dafür verantwortlich:

security

Die häufigsten Optionen sind security = share und security = user. Wenn die Clients Benutzernamen verwenden, die den Benutzernamen auf dem FreeBSD-Rechner entsprechen, dann sollten Sie die Einstellung user level verwenden. Dies ist die Standardeinstellung. Allerdings ist es dazu erforderlich, dass sich die Clients auf dem Rechner anmelden, bevor sie auf gemeinsame Ressourcen zugreifen können.

In der Einstellung share level müssen sich Clients nicht unter Verwendung eines gültigen Logins auf dem Rechner anmelden, bevor sie auf gemeinsame Ressourcen zugreifen können. In früheren Samba-Versionen war dies die Standardeinstellung.

passdb backend

Samba erlaubt verschiedene Backend-Authentifizierungsmodelle. Clients können sich durch LDAP, NIS+, eine SQL-Datenbank oder eine Passwortdatei authentifizieren. In der Voreinstellung wird smbpasswd verwendet. Diese Methode wird im folgenden Abschnitt näher beschrieben.

Wenn Sie smbpasswd verwenden, müssen Sie die Datei /usr/local/etc/samba/smbpasswd erzeugen, damit Samba in der Lage ist, Clients zu authentifizieren. Um den Zugriff auf UNIX®-Benutzerkonten von einem Windows®-Client aus zu ermöglichen, verwenden Sie den folgenden Befehl:

# smbpasswd -a username

Anmerkung:

Als Backend wird inzwischen tdbsam empfohlen. Mit dem folgenden Befehl legen Sie neue Benutzerkonten an:

# pdbedit -a -u username

Ausführliche Informationen zur Konfiguration von Samba finden Sie im Official Samba HOWTO. Mit den hier skizzierten Grundlagen, sollten Sie in der Lage sein, Samba zu starten. Zusätzlich zu den Informationen hier, sollte weitere Dokumentation hinzugezogen werden.

30.10.3. Samba starten

Der Port net/samba34 legt ein neues Startskript an, mit dem Samba gesteuert (also etwa gestartet oder beendet) werden kann. Um dieses Skript zu aktivieren, fügen Sie folgende Zeile in /etc/rc.conf ein:

samba_enable="YES"

Alternativ können Sie auch die folgenden beiden Einträge verwenden:

nmbd_enable="YES"
smbd_enable="YES"

Anmerkung:

Durch diese Einträge wird Samba beim Systemstart automatisch aktiviert.

Danach können Sie Samba jederzeit durch folgenden Befehl starten:

# service samba start
Starting SAMBA: removing stale tdbs :
Starting nmbd.
Starting smbd.

Weitere Informationen zu den rc-Startskripten finden Sie im Abschnitt 12.7, „Das rc-System für Systemdienste“ des Handbuchs.

Samba verwendet drei Daemonen. Beachten Sie, dass sowohl nmbd als auch smbd durch das Skript samba gestartet werden. Wurde winbind name resolution services in smb.conf aktiviert, wird zusätzlich der winbindd-Daemon gestartet.

Samba kann jederzeit durch folgenden Befehl beendet werden:

# service samba stop

Samba ist ein komplexes Softwarepaket mit umfassenden Funktionen, die eine weitreichende Integration von Microsoft® Windows®-Netzwerken ermöglichen. Für eine Beschreibung dieser Zusatzfunktionen sollten Sie sich auf http://www.samba.org umsehen.

Wenn Sie Fragen zu FreeBSD haben, schicken Sie eine E-Mail an <de-bsd-questions@de.FreeBSD.org>.

Wenn Sie Fragen zu dieser Dokumentation haben, schicken Sie eine E-Mail an <de-bsd-translators@de.FreeBSD.org>.