Inhaltsverzeichnis

zurück

Samba-Mischfreigabe (Linux ↔ Windows)

Dieser Artikel beschreibt die vollständige Einrichtung einer Netzwerkfreigabe auf einem Linux-Server mittels Samba, die von Windows-Clients genutzt werden kann.

Ziel ist eine private, authentifizierte Freigabe, bei der:

🔧 Voraussetzungen

🧱 Strukturübersicht

Komponente Aufgabe
Samba-Freigabe (smb.conf) macht Ordner im Netzwerk sichtbar
Dateirechte (chmod, chown) erlaubt Zugriff auf dem Dateisystem
Benutzer (smbpasswd) erlaubt Anmeldung am Samba-Dienst

🛠 Setup-Skript (Root nötig)

code Bash-Skript zur automatisierten Einrichtung einer privaten Freigabe


#!/bin/bash

# === Konfiguration ===
SMB_USER="testuser"
SHARE_NAME="private"
SHARE_PATH="/srv/samba/$SHARE_NAME"
SMB_COMMENT="Private Freigabe für $SMB_USER"
PASSWORD="changeme123"

# === Benutzer anlegen ===
useradd -m -s /bin/bash "$SMB_USER"
echo "$SMB_USER:$PASSWORD" | chpasswd
(echo "$PASSWORD"; echo "$PASSWORD") | smbpasswd -a "$SMB_USER"

# === Verzeichnis anlegen ===
mkdir -p "$SHARE_PATH"
chown "$SMB_USER":"$SMB_USER" "$SHARE_PATH"
chmod 700 "$SHARE_PATH"

# === Samba-Konfiguration anhängen ===
cat <<EOF >> /etc/samba/smb.conf

[$SHARE_NAME]
   comment = $SMB_COMMENT
   path = $SHARE_PATH
   browseable = yes
   writable = yes
   valid users = $SMB_USER
   force user = $SMB_USER
   create mask = 0700
   directory mask = 0700
EOF

# === Samba neustarten ===
systemctl restart smbd nmbd

# === Ausgabe ===
echo "Freigabe [$SHARE_NAME] erfolgreich eingerichtet!"
echo "Zugriff über: \\$(hostname -I | awk '{print $1}')\\$SHARE_NAME"

Speichern unter z. B. /root/setupsambafreigabe.sh und ausführbar machen mit:

chmod +x /root/setup_samba_freigabe.sh

✅ Testen unter Windows

\\<IP-des-Servers>\<Freigabename>

🧠 Hinweise

🔐 Sicherheitstipps

🧬 Weiterführend


Lars.Weiss@gmail.com?l|Lars Weiß Lars Weiß 10.07.2025 12:11