Samba ist ein beliebtes Open Source Softwarepaket, das Datei- und Druckdienste über das SMB/CIFS-Protokoll zur Verfügung stellt. Dieses Protokoll ist in Microsoft® Windows®-Systemen enthalten und kann über die Installation der Samba-Client-Bibliotheken in andere Betriebssysteme integriert werden. Das Protokoll ermöglicht es Clients auf freigegebene Daten und Drucker zuzugreifen, so als ob es sich um lokale Drucker und Festplatten handeln würde.
Unter FreeBSD können die Samba-Client-Bibliotheken über den Port oder das Paket net/samba-smbclient installiert werden. Der Client ermöglicht es einem FreeBSD-System auf SMB/CIFS-Freigaben in einem Microsoft® Windows®-Netzwerk zuzugreifen.
Ein FreeBSD-System kann auch als Samba-Server agieren. Der Administrator kann SMB/CIFS-Freigaben auf dem FreeBSD-System einrichten, auf welche dann Clients mit Microsoft® Windows® oder den Samba-Client-Bibliotheken zugreifen können. Damit ein Samba-Server konfiguriert werden kann, muss zunächst der Port oder das Paket net/samba36 installiert werden. Der Rest dieses Kapitels beschreibt, wie ein Samba-Server unter FreeBSD konfiguriert wird.
Die Standardkonfigurationsdatei von
Samba heißt
/usr/local/share/examples/samba36/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.
Das
Samba Web Administration Tool
(SWAT) wird als Daemon von inetd
aktiviert. Daher muss
inetd, wie in Abschnitt 29.2, „Der inetd
„Super-Server““ beschrieben, aktiviert werden.
Um swat zu aktivieren, entfernen
Sie das Kommentarzeichen aus folgender Zeile in
/etc/inetd.conf
:
swat stream tcp nowait/400 root /usr/local/sbin/swat swat
Wie bereits in Beispiel 29.1, „Die Konfigurationsdatei von inetd neu einlesen“ beschrieben, müssen Sie die inetd-Konfiguration neu einlesen, nachdem Sie diese Änderung durchgeführt haben.
Nachdem swat aktiviert wurde,
rufen Sie im Browser die Adresse
http://localhost:901
auf. Bei der ersten Anmeldung muss das
root
-Benutzerkonto
verwendet werden.
Nach der Anmeldung an der Konfigurationseite von
Samba steht die
Systemdokumentation zur Verfügung. Beginnen Sie die
Konfiguration mit einem Klick auf die
-Karteikarte. Die Einstellungen
entsprechen denen des Abschnitts [global]
aus /usr/local/etc/smb.conf
.
Unabhängig davon, ob
swat verwendet, oder
/usr/local/etc/smb.conf
direkt
editiert wird, sollten zuerst folgende Richtlinien
angepasst werden:
workgroup
Der Domänenname oder der Arbeitsgruppenname der Rechner, die auf den Server Zugriff haben sollen.
netbios name
Der 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 wird,
wenn mit net view
oder anderen
Netzwerkprogrammen Informationen
über den Server angefordert werden.
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. Die folgenden Direktiven steuern diese
Optionen:
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 sollte die
Einstellung user level
verwendet werden. 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 smbpasswd
benutzt wird, muss die
Datei /usr/local/etc/samba/smbpasswd
erzeugt werden, 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 für die
entsprechenden Benutzer:
#
smbpasswd -a
username
Als Backend wird inzwischen tdbsam
empfohlen. Wenn Sie sich für dieses Backend entscheiden,
können Sie mit dem folgenden Befehl neue Benutzerkonten
anlegen:
#
pdbedit -a -u
username
Ausführliche Informationen zur Konfiguration von Samba finden Sie im Official Samba HOWTO.
Damit Samba beim Systemstart
automatisch aktiviert wird, fügen Sie die folgende Zeile in
/etc/rc.conf
ein:
samba_enable="YES"
Alternativ können die beiden Dienste auch separat gestartet werden:
nmbd_enable="YES"
smbd_enable="YES"
Jetzt kann Samba direkt gestartet werden:
#
service samba start
Starting SAMBA: removing stale tdbs : Starting nmbd. Starting smbd.
Samba verwendet drei Daemonen.
Sowohl nmbd als auch
smbd werden durch
samba_enable
gestartet. 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>.