getestet 17.02.2022 – proxmox, ubuntu 20.04. lxc container
Installation
Zunächst müssen die einzelnen Komponenten des Samba Servers installiert werden. Hierzu wechselt man in eine Konsole und gibt folgenden Befehl ein:
sudo apt-get install samba-common samba
Benutzerkonfiguration
In Samba existieren zwei Möglichkeiten der Benutzerverwaltung. Zum einen kann man virtuelle Benutzer verwenden und zum anderen besteht die Option echte, also lokale, Benutzer zu verwenden.
In der Praxis erweist sich die Verwendung von echten Benutzer meist als am besten.
Neuen Benutzer anlegen
Im nächsten Schritt muss also ein neuer Benutzer angelegt werden. Natürlich kann man hier auch einen bereits vorhandenen Benutzer verwenden.
Einen neuen Benutzer können wir mit Hilfe des folgenden Befehls anlegen:
sudo adduser –no-create-home –disabled-login –shell /bin/false smb
Mit diesem Befehl wird ein neuer Benutzer mit dem Namen smb angelegt. Die Option –no-create-home bewirkt, dass er kein eigenes Home-Verzeichnis (/home/smb) bekommt. Die Optionen –disabled-login und –shell /bin/false verhindern, dass sich der User lokal oder über SSH am System anmelden kann.
Beim Ausführen des Befehls muss in einem Dialog der vollständige Name festgelegt werden. Diesen kann man hier auch auf smb setzen. Die weiteren Optionen können durch Drücken der Eingabetaste übersprungen werden. Im letzten Schritt wird noch nach einem Passwort gefragt, welches man setzen sollte.
Benutzer in Samba eintragen
Jetzt muss der neue Benutzer noch in die Benutzerdatenbank von Samba eingetragen werden. Dies geschieht über folgenden Befehl:
sudo smbpasswd -a smb
Hier wird der oben angelegte Benutzer in die Samba Datenbank eingetragen. Auch hier muss wieder ein Passwort gesetzt werden. Dabei kann das gleiche Passwort wie für den neuen Benutzer verwendet werden.
Freigabe einrichten
Nun kann man eine neue Freigabe festlegen. Hierzu erstellen wir zunächst ein neues Verzeichnis für die Freigabe:
sudo mkdir /srv/freigabe
Im Anschluss vergeben für jeden Benutzer vollen Lese- und Schreibzugriff:
sudo chmod 777 -R /srv/freigabe
Danach muss die Konfigurationsdatei des Samba Servers editiert werden. Dazu öffnet man die Datei mit root Rechten:
sudo nano /etc/samba/smb.conf
An das Ende der Datei wird folgendes angefügt:
[Freigabe]
public = no
read only = yes
path = /srv/freigabe
user = smb
Damit wird eine neue Freigabe mit dem Namen „Freigabe“ erstellt. Diese ist für den Benutzer smb zugänglich und befindet sich auf dem oben angelegten Verzeichnis /srv/freigabe. Der Benutzer erhält allerdings nur Lesezugriff. Um dies zu ändern muss die Zeile
durch
writeable = yes
ersetzt werden. Dabei ist zu beachten, dass der Benutzer nur auf das Verzeichnis schreiben kann, wenn er auch lokal auf dem System dazu berechtigt ist. In unserem Fall ist dies möglich, da wir jedem Benutzer vollen Lese- und Schreibzugriff vergeben haben.
Damit die Änderungen übernommen werden, muss der Samba-Server neu gestartet werden: #evtl smbd
sudo /etc/init.d/samba restart
Autostart
Teilweise startet der Samba-Server beim Systemstart nicht automatisch. Um dies zu ermöglichen muss mit folgendem Befehl der Autostart aktiviert werden: #evtl smbd
sudo update-rc.d samba defaults
cd /etc/init.d && smbd restart
Weitere Optionen…
sudo smbpasswd -a USERNAME # Fügt den Benutzer USERNAME der Samba Datenbank hinzu und aktiviert diesen
sudo smbpasswd -x USERNAME # Entfernt den Benutzer USERNAME aus der Samba Datenbank
sudo smbpasswd -d USERNAME # Deaktiviert den Benutzer USERNAME in der Datenbank
sudo smbpasswd -e USERNAME # Aktiviert den vorher deaktivierten Benutzer USERNAME in der Datenbank wieder
gefunden auf: https://www.foxplex.com/sites/samba-server-einrichten-mit-ubuntu/