Benutzer-Werkzeuge

Webseiten-Werkzeuge


it-themen:allgemein:samba-mischfreigabe_linux_windows

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:

  • ein dedizierter Benutzer Zugriff erhält
  • andere Benutzer keinen Zugriff haben
  • alle drei Ebenen korrekt greifen: Freigabe, Dateiberechtigung, Authentifizierung

🔧 Voraussetzungen

  • Linux-Server mit root-Zugriff (Debian/Ubuntu empfohlen)
  • installierte Pakete: samba, samba-common, smbclient
  • Windows-Client im selben Netzwerk

🧱 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

  • Öffne den Explorer
  • Eingabe in die Adresszeile:
\\<IP-des-Servers>\<Freigabename>
  • Mit Benutzername und Passwort anmelden (testuser / changeme123)
  • Zugriff auf Ordner testen (lesen/schreiben)

🧠 Hinweise

  • Das Passwort kann danach sicher geändert werden: smbpasswd testuser
  • Für produktive Systeme solltest du auf setfacl oder AD/LDAP setzen
  • Firewall prüfen: Port 445 und 139 müssen offen sein
  • Teste mit: smbclient -L localhost -U testuser

🔐 Sicherheitstipps

  • Immer mit dedizierten Benutzern arbeiten
  • Rechte nie global mit 777 setzen!
  • Wenn mehrere Benutzer Zugriff brauchen: force group + ACL nutzen

🧬 Weiterführend

it-themen/allgemein/samba-mischfreigabe_linux_windows.txt · Zuletzt geändert: von lars