HowTo: Samba automatisierte Komplett-Installation

In dieser Anleitung wird beschrieben, wie ein Raspberry Pi 5 mit einem vorbereiteten Bash-Skript automatisch für Samba eingerichtet wird. Das Skript erstellt Benutzer, Gruppen, Freigaben und Berechtigungen passend zu einer einfachen Schulungs- oder Laborumgebung.

Ziel: Am Ende stehen drei Samba-Freigaben bereit: eine IT-Freigabe, eine Buchhaltungs-Freigabe und eine öffentliche Lesefreigabe. Die Benutzer werden automatisch angelegt und den passenden Gruppen zugeordnet.

1. Voraussetzungen prüfen

Für diese Anleitung wird ein Raspberry Pi 5 mit Raspberry Pi OS oder einem vergleichbaren Debian-basierten System benötigt.

Zusätzlich wird eine Internetverbindung benötigt, damit Pakete installiert und das Skript heruntergeladen werden können.

Benötigte Rechte

Das Skript muss mit administrativen Rechten ausgeführt werden. Dafür wird sudo verwendet.

Wichtig: Das Skript verändert Benutzer, Gruppen, Ordnerrechte und die Samba-Konfiguration. Es sollte daher nur auf einem Testsystem oder einem dafür vorgesehenen Server ausgeführt werden.

2. Skript herunterladen

Wechsle zuerst in ein Arbeitsverzeichnis. Für einen schnellen Test eignet sich /tmp.

cd /tmp

Lade anschließend das Skript von der Webseite herunter.

wget https://lernemit.duckdns.org/downloads/setup-samba.sh

Falls wget nicht installiert ist, kann es mit folgendem Befehl installiert werden:

sudo apt update
sudo apt install -y wget

3. Skript bearbeiten

Öffne das Skript mit dem Editor nano.

nano setup-samba.sh

Im oberen Bereich des Skripts befindet sich der Abschnitt, der angepasst werden muss. Dieser Bereich ist mit HIER EINTRAGEN / ANPASSEN markiert.

Benutzer eintragen

Die Benutzer werden im Bereich USERS eingetragen.

USERS=(
  "mueller:/home/mueller:/bin/bash:Mitarbeiter IT:it-abteilung:Passwort123!"
  "weber:/home/weber:/bin/bash:Mitarbeiter IT:it-abteilung:Passwort123!"
  "schmidt:/home/schmidt:/bin/bash:Mitarbeiter Buchhaltung:buchhaltung:Passwort123!"
  "fischer:/home/fischer:/bin/bash:Mitarbeiter Buchhaltung:buchhaltung:Passwort123!"
)

Jede Zeile hat folgendes Format:

"benutzername:home-verzeichnis:shell:beschreibung:gruppe:samba-passwort"
Feld Beispiel Bedeutung
Benutzername mueller Name des Linux- und Samba-Benutzers
Home-Verzeichnis /home/mueller Persönliches Benutzerverzeichnis
Shell /bin/bash Anmelde-Shell des Benutzers
Beschreibung Mitarbeiter IT Kommentar zum Benutzerkonto
Gruppe it-abteilung Gruppe, der der Benutzer zugeordnet wird
Samba-Passwort Passwort123! Passwort für den Samba-Zugriff

Freigaben eintragen

Die Freigaben werden im Bereich SHARES eingetragen.

SHARES=(
  "it-freigabe:/srv/samba/it-share:it-abteilung:no"
  "buchhaltung-freigabe:/srv/samba/buchhaltung-share:buchhaltung:no"
  "oeffentlich:/srv/samba/public:sambashare:yes"
)

Jede Zeile hat folgendes Format:

"freigabename:pfad:gruppe:read_only"
Freigabe Pfad Zugriff
it-freigabe /srv/samba/it-share Nur Gruppe it-abteilung, Lesen und Schreiben
buchhaltung-freigabe /srv/samba/buchhaltung-share Nur Gruppe buchhaltung, Lesen und Schreiben
oeffentlich /srv/samba/public Alle Samba-Benutzer, nur Lesen

Hinweis: Der Wert read_only steuert, ob eine Freigabe nur lesbar ist. no bedeutet Lesen und Schreiben. yes bedeutet nur Lesen.

4. Skript speichern

Wenn die Anpassungen abgeschlossen sind, wird die Datei in nano gespeichert.

  1. STRG + O drücken
  2. Mit Enter bestätigen
  3. STRG + X drücken, um den Editor zu verlassen

5. Skript ausführbar machen

Damit das Skript gestartet werden kann, muss es ausführbar gemacht werden.

chmod +x setup-samba.sh

6. Skript starten

Starte das Skript mit administrativen Rechten.

sudo ./setup-samba.sh

Das Skript führt nun automatisch folgende Schritte aus:

Passwörter: Die Samba-Passwörter stehen im Skript im Klartext. Nach erfolgreicher Einrichtung sollte das Skript gelöscht oder nur für root lesbar gemacht werden.

7. Zugriff auf die Freigaben testen

Nach Abschluss zeigt das Skript die IP-Adresse des Raspberry Pi an. Die Freigaben können anschließend von einem anderen Gerät im Netzwerk geöffnet werden.

Zugriff von Windows

Im Windows Explorer kann folgende Schreibweise verwendet werden:

\\IP-ADRESSE-DES-RASPBERRY-PI\it-freigabe
\\IP-ADRESSE-DES-RASPBERRY-PI\buchhaltung-freigabe
\\IP-ADRESSE-DES-RASPBERRY-PI\oeffentlich

Beispiel:

\\192.168.178.50\it-freigabe

Zugriff von Linux

Unter Linux kann die Freigabe über den Dateimanager oder per SMB-Adresse geöffnet werden.

smb://192.168.178.50/it-freigabe

8. Berechtigungen kontrollieren

Die IT-Benutzer mueller und weber dürfen auf die Freigabe it-freigabe zugreifen.

Die Buchhaltungs-Benutzer schmidt und fischer dürfen auf die Freigabe buchhaltung-freigabe zugreifen.

Die Freigabe oeffentlich ist für alle Samba-Benutzer lesbar.

Benutzer Gruppe Erlaubte Freigabe
mueller it-abteilung it-freigabe, oeffentlich
weber it-abteilung it-freigabe, oeffentlich
schmidt buchhaltung buchhaltung-freigabe, oeffentlich
fischer buchhaltung buchhaltung-freigabe, oeffentlich

9. Fehlerbehebung

Samba-Konfiguration prüfen

Die Samba-Konfiguration kann jederzeit mit folgendem Befehl geprüft werden:

sudo testparm -s

Samba neu starten

Falls Änderungen an der Konfiguration vorgenommen wurden, sollten die Samba-Dienste neu gestartet werden.

sudo systemctl restart smbd nmbd

Status anzeigen

Der Dienststatus kann mit folgenden Befehlen geprüft werden:

systemctl status smbd
systemctl status nmbd

IP-Adresse anzeigen

Die IP-Adresse des Raspberry Pi kann mit folgendem Befehl angezeigt werden:

hostname -I

10. Skript nach der Installation schützen oder löschen

Da im Skript Passwörter eingetragen sind, sollte es nach der Installation geschützt oder gelöscht werden.

Variante 1: Skript nur für root lesbar machen.

sudo chown root:root setup-samba.sh
sudo chmod 600 setup-samba.sh

Variante 2: Skript löschen.

rm setup-samba.sh

Fertig: Die Samba-Installation ist abgeschlossen. Benutzer, Gruppen, Freigaben und Berechtigungen wurden automatisch eingerichtet.