Ein paar irrelevante Tutorials

Samba-Server

Mit Samba kann man Verzeichnisse eines Linux-Systems im Netzwerk für andere Systeme aus dem Netzwerk freigeben. Die zugreifenden Systeme können dann sowohl Linux- als auch Windoof-Systeme sein. Das SMB-Protokoll wird auch von der Firmware einiger Endgeräte, wie z.B. Scanner unterstützt.

Installation

Die Installation der Samba-Server-Software ist sehr einfach:

sudo apt install samba

Konfiguration

Freigaben einrichten

Die Einrichtung von Samba-Freigaben erfolgt in der Datei /etc/samba/smb.conf. Die Syntax für Freigaben lautet dabei:

   [Freigabename]
comment = Hat technisch keine Bedeutung
path = /wo/liegt/der/freizugebende/Ordner
browsable = yes
read only = no
guest ok = no

 Mit dem Freigabename wird der freizugebende Ordner später angesprochen. Das heißt, wenn ein Ordner "/home/hanswurst/freigabe" unter dem Namen "Ablage" freigegeben wird, dann würde er z.B. mit "smb://{Servername oder IP-Adresse}/Ablage" ansprechbar sein. Der Eintrag in der Datei /etc/samba/smb.conf" sähe dann so aus:

   [Ablage]
comment = Ablagefreigabe
path = /home/andreas/hanswurst/freigabe
browsable = yes
read only = no
guest ok = no

Die Parameter browsable, read only und guest ok sind selbsterklärend. Die Freigabe wird durch Neustart des Sambaservers aktiviert:

sudo systemctl restart smbd.service  

User einrichten

Samba hat eine eigene Benutzerdatenbank und nutzt nicht die des Servers. Trotzdem kann man nur User hinzufügen, die auch auf dem Server als User vorhanden sind. Für große Organisationen werden natürlich andere Methoden, wie z.B. LDAP oder AD genutzt. Im Kleinen aber geht das prima zu Fuß. Zunächst einmal wird also ein neuer User auf dem Linux-System hinzugefügt, der sich aber auf der SSH-Shell nicht anmelden können soll:

sudo  adduser --no-create-home --disabled-login --shell /bin/false hanswurst

Dann wird ein SMB-User dazu eingerichtet:

sudo smbpasswd -a hanswurst

Was bei den Zugriffsrechten noch zu beachten ist

Der Zugriff auf ein Samba-Share erfordert zunächst auch den Zugang zum Server als berechtigter User. Außerdem muss der zugreifende User natürlich auf dem Server auch generell das Zugriffsrecht auf den Pfad haben. Wenn ich einen Ordner auf dem Server, auf den User hanswurst kein Zugriffsrecht hat, über Samba freigebe, dann kann hanswurst immer noch nicht darauf zugreifen. Möchte ich also einen Ordner "Freigabe" im Wurzelverzeichnis des Servers für User der Gruppe users (wie z.B. hanswurst) freigeben, dann muss ich folgende Befehle auf der Konsole absetzen:

sudo chown -R :users /Freigabe
sudo chmod -R 0660 /Freigabe

Der Parameter "-R" ist dabei nur erforderlich, wenn der Ordner nicht leer ist. Er dient dazu, dass die Berechtigungen rekursiv, das heißt, auch für alle unter dem angegebenen Pfad befindlichen Objekte vergeben werden.