Good to Know Database

Ubuntu 16.04: Samba 4.3 als Dateiserver einrichten


Samba ist ein Linux-Dienst, welcher Datei- und Druckdienste für Windows-Systeme zur Verfügung stellt beziehungsweise diese nutzen kann. Durch Samba werden das Server Message Block Protokoll (SMB) und das erweiterte Common Internet File System (CIFS) für Linux bereitgestellt.

Die folgende Anleitung soll Ihnen zeigen, wie Sie auf Ihrem Odroid HC2 unter Ubuntu 16.04 Samba 4.3 als einfachen Dateiserver für ein Windows-Netzwerk einrichten können.

Samba 4.3 installieren

Durch die folgenden Befehle aktualisieren Sie die lokale Paketdatenbank und installieren die benötigten Pakete für Samba 4.3.

root@odroid:~# apt-get update
root@odroid:~# apt-get install samba samba-common-bin

Samba 4.3 konfigurieren

Die Konfiguration von Samba finden Sie in der Datei /etc/samba/smb.conf. Benennen Sie zuerst die Beispiel-Konfiguration in smb.conf.original um.

root@odroid:~# mv /etc/samba/smb.conf /etc/samba/smb.conf.original

Danach erstellen Sie eine neue smb.conf.

root@odroid:~# nano /etc/samba/smb.conf

Eine einfache Konfiguration könnte wie folgt aussehen.

[global]
  workgroup = HOME
  netbios name = ODROID-HC2
  server string = ODROID-HC2.HOME.LAN

  # security settings
  security = user
  passdb backend = tdbsam
  encrypt passwords = yes

[data]
  path = /data
  valid users = georg
  read list = georg
  write list = georg
  read only = No
  create mask = 0664
  directory mask = 0775

Im Abschnitt [global] werden die allgemeinen Einstellungen für Samba vorgenommen. Mit dem Parameter workgroup gibt man die Arbeitsgruppe zu welcher der Samba-Server gehören soll an. Durch den Parameter netbios name wird in dieser Beispielkonfiguration der Rechnername festgelegt, welcher später in der Netzwerkumgebung erscheinen soll. Eine kurze Computerbeschreibung kann man mit dem Parameter server string angeben.
Indem man die Direktive security auf den Wert user setzt, wird Samba mit der Sicherheitstufe User-Level betrieben. Seit Samba 2.0 ist der User-Level der voreingestellte Wert, weshalb man diese Angabe auch weglassen könnte. Der User-Level erfordert, dass sich jeder Windows-Benutzer vor dem Zugriff auf den Samba-Server mit seinem Benutzernamen und Passwort authentifiziert.
Durch passdb backend können Sie das gewünschte Format für die Samba-Benutzerdatenbank festlegen. Sie sollten hier das neuere tdbsam-Format bevorzugen.
Die Option encrypt passwords muss auf yes gesetzt werden, wenn Ihre Clients die Passwortübermittlung verschlüsseln. Dies ist seit Windows 98 standardmäßig der Fall.

Nach den allgemeinen Einstellungen folgen die Abschnitte für die einzelnen Freigaben. Jede Freigabe muss einen eindeutigen Namen erhalten, welcher in eckigen Klammern angegeben wird und später in der Netzwerkumgebung angezeigt wird. Danach folgen die einzelnen Einstellungen für diese Freigabe. Mit dem Parameter comment können Sie einen kurzen Kommentar für die Freigabe eintragen, welcher später ebenfalls in der Netzwerkumgebung angezeigt wird.
Durch path wird der Pfad zum lokalen Verzeichnis angegeben. Dieses Verzeichnis muss beim Starten des Samba-Daemons existieren und über die benötigten Rechte verfügen, damit die Benutzer die enthaltenen Dateien lesen, bearbeiten und neue Dateien anlegen können.
Mit dem Parameter valid users kann man die Benutzer angeben, welchen der Zugriff auf diese Freigabe gestattet wird. Die einzelnen Benutzer werden mit einem Komma und einem Leerzeichen getrennt aufgelistet. Sollten Sie Benutzer ausschließen wollen, geben Sie diese mit invalid users an. Durch die Parameter read list und write list kann man einzelnen Benutzern die Berechtigung zum Lesen und Schreiben geben. Jeder Benutzername, welchen Sie bei den Parametern valid users, invalid users, read list und write list angegeben haben, muss auf dem lokalen System und in der Benutzerdatenbank von Samba vorhanden sein. Sollten Sie hier Benutzer angeben, welche nicht existieren, können sich diese nicht am Samba-Daemon anmelden. Wie Sie die Benutzer anlegen und in die Benutzerdatenbank von Samba eintragen, wird im weiteren Verlauf des Artikels noch erklärt.
Wenn die Benutzer in der Freigabe Dateien anlegen oder bearbeiten können sollen, müssen Sie den Parameter read only auf den Wert no setzen. Durch create mask und directory mask legt man fest, mit welchen Linux-Rechten, Dateien und Verzeichnisse in dem lokalen Verzeichnis angelegt werden sollen.

Mit dem Programm testparm können Sie die Konfigurationsdatei /etc/samba/smb.conf auf Syntaxfehler überprüfen. Dies sollten Sie nach jeder manuellen Änderung durchführen um Syntaxfehler auszuschließen.

root@odroid:~# testparm -s

Nachdem Sie die Konfigurationsdatei auf Syntaxfehler überprüft haben, sollten Sie sicherstellen, dass alle lokalen Verzeichnisse existieren, welche Sie in der Konfigurationsdatei angegeben haben. Wenn dies nicht der Fall ist, erstellen Sie diese und ändern die Rechte entsprechend. In diesem Beispiel erstellen wir das Verzeichnis /data und ändern die Zugriffsrechte auf 0775 damit wir beim ersten Test Probleme mit den Zugriffsrechten ausschließen können.

root@odroid:~# mkdir -p /data
root@odroid:~# chown root:users /data
root@odroid:~# chmod 0775 /data

Benutzeraccounts einrichten

Wie bereits erwähnt, müssen die in der Konfigurationsdatei /etc/samba/smb.conf eingetragenen Benutzer auch einen gleichlautenden Account auf dem Linux-System besitzen. Diese Benutzer-Accounts können Sie mit dem folgenden Befehl erstellen. Durch die Option -m wird automatisch ein privates Verzeichnis unter /home für den Benutzer angelegt. Durch -s /sbin/nologin wird verhindert, dass sich der Benutzer lokal an einer Konsole oder über SSH anmelden kann. Mit der Option -g wird der Benutzer zur Gruppe users hinzugefügt.

root@odroid:~# useradd -m -s /sbin/nologin -g users georg

Durch den folgenden Befehl wird der Benutzer in die Benutzerdatenbank von Samba eingetragen. Dabei müssen Sie das Passwort festlegen, welches für den späteren Zugriff auf den Samba-Server benötigt wird.

root@odroid:~# smbpasswd -a georg

Samba starten

Da Samba jetzt vollständig konfiguriert wurde, starten Sie den Samba-Daemon neu.

root@odroid:~# /etc/init.d/samba restart


Dieser Eintrag wurde am 01.04.2018 erstellt und zuletzt am 02.04.2018 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_40_3007.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer