Ein Samba-Server in SUSE Linux kann auf zwei Arten konfiguriert werden: mit YaST oder manuell. Bei der manuellen Konfiguration können Sie mehr Details einstellen, allerdings müssen Sie ohne den Komfort der Benutzeroberfläche von YaST zurechtkommen.
Um einen Samba-Server zu konfigurieren, starten Sie YaST und wählen Sie
+ . Beim ersten Start des Moduls wird das Dialogfeld geöffnet, das Sie auffordert, ein paar grundlegende Entscheidungen hinsichtlich der Serveradministration zu treffen, und Sie am Ende der Konfiguration nach dem Passwort für Samba-root fragt. Bei späteren Starts wird das Dialogfeld geöffnet.Das Dialogfeld
besteht aus zwei Teilen:Wählen Sie unter
eine Arbeitsgruppe oder Domäne aus oder geben Sie eine neue ein und klicken Sie auf .Geben Sie im nächsten Schritt an, ob Ihr Server als PDC fungieren soll, und klicken Sie auf
.Sie können später alle Einstellungen von
im Dialogfeld auf der Registerkarte ändern.Beim ersten Start des Samba-Servermoduls wird das Dialogfeld
unmittelbar nach dem Dialogfeld geöffnet. Es besteht aus drei Registerkarten:Auf der Registerkarte Abschnitt 28.2, „Starten und Stoppen von Samba“.
können Sie den Start des Samba-Servers einstellen. Um den Dienst bei jedem Systemboot zu starten, wählen Sie (Beim Systemstart). Um den manuellen Start zu aktivieren, wählen Sie (Manuell). Weitere Informationen über das Starten eines Samba-Servers erhalten Sie inAuf dieser Registerkarte können Sie auch Ports in Ihrer Firewall öffnen. Wählen Sie hierfür
(Firewall-Port öffnen). Wenn mehrere Netzwerkschnittstellen vorhanden sind, wählen Sie die Netzwerkschnittstelle für Samba-Dienste, indem Sie auf klicken, die Schnittstellen auswählen und dann auf klicken.Legen Sie auf dieser Registerkarte die zu aktivierenden Samba-Freigaben fest. Es gibt einige vordefinierte Freigaben wie Home-Verzeichnisse und Drucker. Mit
können Sie zwischen den Statuswerten und wechseln. Klicken Sie auf , um neue Freigaben hinzuzufügen, bzw. auf , um die ausgewählte Freigabe zu entfernen.Auf der Registerkarte
legen Sie fest, zu welcher Domäne der Host gehört ( ) und ob ein alternativer Hostname im Netzwerk ( ) verwendet werden soll. Globale Einstellungen für Experten oder die Benutzerauthentifizierung können Sie festlegen, wenn Sie auf klicken.Klicken Sie zum Abschließen der Konfiguration auf
.
Ein alternatives Werkzeug für die Administrationsaufgaben von Samba-Server ist SWAT (Samba Web Administration Tool). Es stellt eine einfache Webschnittstelle zur Verfügung, mit der Sie den Samba-Server konfigurieren können. Sie können SWAT verwenden, indem Sie in einem Webbrowser http://localhost:901 aufrufen und sich als root
anmelden. Wenn Sie über kein spezielles root-Konto für Samba verfügen, verwenden Sie das root
-Systemkonto.
Aktivieren von SWAT | |
---|---|
Nach der Installation von Samba-Server ist SWAT nicht aktiviert. Öffnen Sie zur Aktivierung in YaST + , aktivieren Sie die Konfiguration der Netzwerkdienste, wählen Sie aus der Tabelle und klicken Sie auf . |
Wenn Sie Samba als Server einsetzen möchten, installieren Sie samba
. Die Hauptkonfigurationsdatei von Samba ist /etc/samba/smb.conf
. Diese Datei kann in zwei logische Bereiche aufgeteilt werden. Der Abschnitt [global]
enthält die zentralen und globalen Einstellungen. Die Abschnitte [share]
enthalten die einzelnen Datei- und Druckerfreigaben. Mit dieser Vorgehensweise können Details der Freigaben unterschiedlich oder im Abschnitt [global]
übergreifend festgelegt werden. Letzteres trägt zur Übersichtlichkeit der Konfigurationsdatei bei.
Die folgenden Parameter im Abschnitt [global]
sind den Gegebenheiten Ihres Netzwerkes anzupassen, damit Ihr Samba-Server in einer Windows-Umgebung von anderen Computern über SMB erreichbar ist.
Mit dieser Zeile wird der Samba-Server einer Arbeitsgruppe zugeordnet. Ersetzen Sie TUX-NET
durch eine entsprechende Arbeitsgruppe Ihrer Netzwerkumgebung. Der Samba-Server erscheint mit seinem DNS-Namen, sofern der Name noch nicht vergeben ist. Sollte der Name bereits vergeben sein, kann der Servername mithilfe von netbiosname=MEINNAME
festgelegt werden. Weitere Informationen zu diesem Parameter finden Sie auf der Manualpage mansmb.conf
.
Anhand dieses Parameters entscheidet Ihr Samba-Server, ob er versucht, LMB (Local Master Browser) für seine Arbeitsgruppe zu werden. Wählen Sie bewusst einen niedrigen Wert, damit ein vorhandenes Windows-Netz nicht durch einen falsch konfigurierten Samba-Server gestört wird. Weitere Informationen zu diesem wichtigen Thema finden Sie in den Dateien BROWSING.txt
und BROWSING-Config.txt
im Unterverzeichnis textdocs
der Paketdokumentation.
Wenn im Netzwerk kein anderer SMB-Server (z. B. ein Windows NT- oder 2000-Server) vorhanden ist und der Samba-Server eine Liste aller in der lokalen Umgebung vorhandenen Systeme verwalten soll, setzen Sie den Parameter os level
auf einen höheren Wert (z. B. 65
). Der Samba-Server wird dann als LMB für das lokale Netzwerk ausgewählt.
Beim Ändern dieses Werts sollten Sie besonders vorsichtig sein, da dies den Betrieb einer vorhandenen Windows-Netzwerkumgebung stören könnte. Testen Sie Änderungen zuerst in einem isolierten Netzwerk oder zu unkritischen Zeiten.
Wenn Sie den Samba-Server in ein vorhandenes Windows-Netzwerk integrieren möchten, in dem bereits ein WINS-Server betrieben wird, aktivieren Sie den Parameter wins server
und setzen Sie seinen Wert auf die IP-Adresse des WINS-Servers.
Sie müssen einen WINS-Server einrichten, wenn Ihre Windows-Systeme in getrennten Subnetzen betrieben werden und sich gegenseitig erkennen sollen. Um einen Samba-Server als WINS-Server festzulegen, setzen Sie die Option wins support = Yes
. Stellen Sie sicher, dass diese Einstellung nur auf einem einzigen Samba-Server im Netzwerk aktiviert wird. Die Optionen wins server
und wins support
dürfen in der Datei smb.conf
niemals gleichzeitig aktiviert sein.
In den folgenden Beispielen werden einerseits das CD-ROM-Laufwerk und andererseits die Verzeichnisse der Nutzer (homes
) für SMB-Clients freigegeben.
Um die versehentliche Freigabe eines CD-ROM-Laufwerks zu verhindern, sind alle erforderlichen Zeilen dieser Freigabe durch Kommentarzeichen – hier Semikolons – deaktiviert. Entfernen Sie die Semikolons in der ersten Spalte, um das CD-ROM-Laufwerk für Samba freizugeben.
Beispiel 28.1. Eine CD-ROM-Freigabe
;[cdrom] ; comment = Linux CD-ROM ; path = /media/cdrom ; locking = No
[cdrom]
und comment
Der Eintrag [cdrom]
ist der Name der Freigabe, die von allen SMB-Clients im Netzwerk gesehen werden kann. Zur Beschreibung dieser Freigabe kann ein zusätzlicher comment
hinzugefügt werden.
path = /media/cdrom
path
exportiert das Verzeichnis /media/cdrom
.
Diese Art der Freigabe ist aufgrund einer bewusst restriktiv gewählten Voreinstellung lediglich für die auf dem System vorhandenen Benutzer verfügbar. Soll die Freigabe für alle Benutzer bereitgestellt werden, fügen Sie der Konfiguration die Zeile guest ok = yes
hinzu. Durch diese Einstellung erhalten alle Benutzer im Netzwerk Leseberechtigungen. Es wird empfohlen, diesen Parameter sehr vorsichtig zu verwenden. Dies gilt umso mehr für die Verwendung dieses Parameters im Abschnitt [global]
.
[homes]
Eine besondere Stellung nimmt die Freigabe [homes]
ein. Hat der Benutzer auf dem Linux-Dateiserver ein gültiges Konto und ein eigenes Home-Verzeichnis, so kann er eine Verbindung zu diesem herstellen.
Beispiel 28.2. homes-Freigabe
[homes] comment = Home Directories valid users = %S browseable = No read only = No create mask = 0640 directory mask = 0750
Insoweit keine ausdrückliche Freigabe mit dem Freigabenamen des Benutzers existiert, der die Verbindung zum SMB-Server herstellt, wird aufgrund der [homes]
-Freigabe dynamisch eine Freigabe erzeugt. Dabei ist der Freigabename identisch mit dem Benutzernamen.
valid users = %S
%S
wird nach erfolgreichem Verbindungsaufbau durch den konkreten Freigabenamen ersetzt. Bei einer [homes]
-Freigabe ist dies immer der Benutzername. Aus diesem Grund werden die Zugriffsberechtigungen auf die Freigabe eines Benutzers immer exklusiv auf den Eigentümer des Benutzerverzeichnisses beschränkt.
browseable = No
Durch diese Einstellung wird die Freigabe in der Netzwerkumgebung unsichtbar gemacht.
read only = No
Samba untersagt Schreibzugriff auf exportierte Freigaben standardmäßig mit dem Parameter read only = Yes
. Soll also ein Verzeichnis als schreibbar freigegeben werden, muss der Wert read only = No
festgesetzt werden, was dem Wert writeable = Yes
entspricht.
create mask = 0640
Nicht auf MS Windows NT basierende Systeme kennen das Konzept der Unix-Zugriffsberechtigungen nicht, sodass sie beim Erstellen einer Datei keine Berechtigungen zuweisen können. Der Parameter create mask
legt fest, welche Zugriffsberechtigungen neu erstellten Dateien zugewiesen werden. Dies gilt jedoch nur für Freigaben mit Schreibberechtigung. Konkret wird hier dem Eigentümer das Lesen und Schreiben und den Mitgliedern der primären Gruppe des Eigentümers das Lesen erlaubt. valid users = %S
verhindert den Lesezugriff auch dann, wenn die Gruppe über Leseberechtigungen verfügt. Um der Gruppe Lese- oder Schreibzugriff zu gewähren, deaktivieren Sie die Zeile valid users = %S
.
Jeder Zugriff auf eine Freigabe kann für mehr Sicherheit durch ein Passwort geschützt werden. SMB kennt drei verschiedene Möglichkeiten der Berechtigungsprüfung:
Einer Freigabe wird ein Passwort fest zugeordnet. Jeder Benutzer, der dieses Passwort kennt, hat Zugriff auf die Freigabe.
Diese Variante führt das Konzept des Benutzers in SMB ein. Jeder Benutzer muss sich bei einem Server mit einem Passwort anmelden. Nach der Authentifizierung kann der Server dann abhängig vom Benutzernamen Zugriff auf die einzelnen exportierten Freigaben gewähren.
Seinen Clients gibt Samba vor, im User Level Mode zu arbeiten. Allerdings übergibt es alle Passwortanfragen an einen anderen User Level Mode Server, der die Authentifizierung übernimmt. Diese Einstellung erwartet einen weiteren Parameter (password server
).
Die Sicherheit auf Freigabe-, Benutzer- und Serverebene (Share, User und Server Level Security) gilt für den gesamten Server. Es ist nicht möglich, einzelne Freigaben einer Serverkonfiguration mit Share Level Security und andere mit User Level Security zu exportieren. Sie können jedoch auf einem System für jede konfigurierte IP-Adresse einen eigenen Samba-Server ausführen.
Weitere Informationen zu diesem Thema finden Sie in der Samba-HOWTO-Collection. Wenn sich mehrere Server auf einem System befinden, beachten Sie die Optionen interfaces
und bind interfaces only
.