Samba Server · 5 min read · Dec 06, 2025

Samba-Server-Installation auf Ubuntu 16.04 LTS

Diese Anleitung erklärt die Installation und Konfiguration eines Samba-Servers auf Ubuntu 16.04 (Xenial Xerus) mit anonymen und gesicherten Samba-Freigaben. Samba ist eine Open Source/Free Software-Suite, die nahtlose Datei- und Druckdienste für SMB/CIFS-Clients bereitstellt. Samba ist kostenlos verfügbar, im Gegensatz zu anderen SMB/CIFS-Implementierungen, und ermöglicht die Interoperabilität zwischen Linux/Unix-Servern und Windows-basierten Clients.

1 Vorbemerkung

Ich habe einen frisch installierten Ubuntu 16.04 LTS-Server, auf dem ich den Samba-Server installieren werde. Als Samba-Client-System werde ich einen Windows-Desktop verwenden, um eine Verbindung zum Samba-Server herzustellen und die Einrichtung zu überprüfen. Der Windows-Desktop sollte sich im selben Netzwerk befinden, damit er den Ubuntu-Server erreichen kann. Der Hostname meines Ubuntu-Servers ist server1.example.com und die IP ist 192.168.1.100

Wenn Sie noch keinen Ubuntu-Server haben, folgen Sie diesem Tutorial, um eine minimale Servereinrichtung als Grundlage für dieses Tutorial zu erhalten.

Hinweis: Der Windows-Rechner muss sich in derselben Arbeitsgruppe befinden. Um den Wert auf dem Windows-Rechner zu überprüfen, führen Sie den folgenden Befehl an der Eingabeaufforderung aus:

net config workstation

Die Ausgabe wird wie folgt aussehen:

Holen Sie sich den Windows-Arbeitsgruppennamen.

Ihr Windows-Rechner muss sich im selben Arbeitsgruppendomain wie der Ubuntu-Server befinden, d.h. WORKGROUP in meinem Fall.

Um den Windows-Rechner in Windows über seinen Hostnamen erreichbar zu machen, gehen Sie wie folgt vor. Öffnen Sie ein Windows-Terminal im Administratormodus (Sie können den Administratormodus erreichen, indem Sie mit der rechten Maustaste auf das Terminal-Symbol im Programmenü klicken) und führen Sie den folgenden Befehl aus, um die Windows-Hosts-Datei zu öffnen:

notepad C:\Windows\System32\drivers\etc\hosts

Dort fügen Sie die folgende rote Zeile hinzu und speichern die Datei:

[...]  
192.168.1.100   server1.example.com     server1

Die folgenden Schritte müssen als Root-Benutzer ausgeführt werden. Führen Sie aus:

sudo -s

in der Shell Ihres Linux-Servers, um Root-Benutzer zu werden.

2 Anonyme Samba-Freigabe

Samba ist in den Ubuntu-Repositories verfügbar. Der erste Schritt besteht darin, den Samba-Server und seine Abhängigkeiten mit apt zu installieren.

apt-get install -y samba samba-common python-glade2 system-config-samba

Es wird die Samba-Version 4.3.9-Ubuntu installiert.

Um Samba zu konfigurieren, bearbeiten Sie die Datei /etc/samba/smb.conf. Ich werde nano als Editor verwenden und eine Sicherung der Originaldatei erstellen, bevor ich mit den Änderungen beginne. Die Sicherungsdatei heißt /etc/samba/smb.conf.bak

cp -pf /etc/samba/smb.conf /etc/samba/smb.conf.bak  
cat /dev/null  > /etc/samba/smb.conf

Öffnen Sie die Samba-Konfigurationsdatei mit nano:

nano /etc/samba/smb.conf

Und fügen Sie die folgenden Zeilen hinzu.

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = ubuntu
security = user
map to guest = bad user
dns proxy = no
  
#============================ Share Definitions ==============================  
  
[Anonymous]
path = /samba/anonymous
browsable =yes
writable = yes
guest ok = yes
read only = no  
force user = nobody

Dann werde ich ein Verzeichnis für die anonyme Freigabe erstellen.

mkdir -p /samba/anonymous

Setzen Sie die richtigen Berechtigungen.

chmod -R 0775 /samba/anonymous  
chown -R nobody:nogroup  /samba/anonymous

Und starten Sie Samba neu, um die neue Konfiguration anzuwenden.

service smbd restart  

Jetzt können Sie auf die Ubuntu-Freigabe in Windows zugreifen, indem Sie “\server1” in das Suchfeld des Windows-Menüs eingeben oder den Netzwerkbrowser des Windows-Dateiexplorers verwenden, um eine Verbindung zur Freigabe herzustellen.

Die anonyme Samba-Freigabe wird in Windows angezeigt.

Versuchen Sie, eine Datei per Drag & Drop in die Freigabe hochzuladen, um zu sehen, ob es korrekt funktioniert.

Der Upload zur anonymen Samba-Freigabe war erfolgreich.

Sie können den Inhalt auch auf dem Server überprüfen.

ls -la /samba/anonymous/
root@server1:/samba/anonymous# ls -la /samba/anonymous/  
total 16  
drwxrwxr-x 2 nobody nogroup 4096 Jun 1 18:46 .  
drwxr-xr-x 3 root root 4096 Jun 1 18:39 ..  
-rwxr--r-- 1 nobody nogroup 7405 Jun 1 18:42 test.odt  
root@server1:/samba/anonymous#

3 Gesicherter Samba-Server

Für die passwortgeschützte Freigabe werde ich eine Gruppe smbgrp und den Benutzer till erstellen, um auf den Samba-Server zuzugreifen. Ich werde “howtoforge” als Passwort in diesem Beispiel verwenden, bitte wählen Sie ein benutzerdefiniertes und sicheres Passwort auf Ihrem Server.

addgroup smbgrp
useradd till -G smbgrp
smbpasswd -a  till
root@server1:~# smbpasswd -a  till  
New SMB password:<--howtoforge  
Retype new SMB password:<--howtoforge  
Added user till.  
root@server1:~#

Jetzt erstellen Sie den Ordner mit dem Namen “secured” im /samba-Ordner und geben Sie die Berechtigungen wie folgt:

mkdir -p /samba/secured  
cd /samba  
chmod -R 0770 secured  
chown root:smbgrp  secured

Bearbeiten Sie die Samba-Konfigurationsdatei und fügen Sie die folgenden (roten) Zeilen am Ende der Datei hinzu:

nano /etc/samba/smb.conf

[...]  
[secured]
 path = /samba/secured
 valid users = @smbgrp
guess ok = no
 writable = yes
 browsable = yes
service smbd restart  

Um die Einstellungen zu überprüfen, führen Sie diesen Befehl aus:

testparm  
root@server1:/samba# testparm  
Load smb config files from /etc/samba/smb.conf  
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)  
Processing section "[Anonymous]"  
Processing section "[secured]"  
Loaded services file OK.  
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions <-- Press Enter
# Global parameters  
[global]  
netbios name = UBUNTU  
server string = Samba Server %v  
security = USER  
map to guest = Bad User  
dns proxy = No  
idmap config * : backend = tdb
  
[Anonymous]  
path = /samba/anonymous  
force user = nobody  
read only = No  
guess ok = Yes
  
[secured]  
path = /samba/secured  
valid users = @smbgrp  
read only = No

Am Windows-Rechner öffnen Sie das Netzwerkgerät “\server1“ erneut, es wird jetzt nach einem Benutzernamen und Passwort fragen. Geben Sie die Benutzerdaten ein, die Sie oben erstellt haben. In meinem Fall waren die Werte Benutzer = till und Passwort = howtoforge.

Anmeldung zur Samba-Freigabe.

Beide Samba-Freigaben werden im Windows Explorer angezeigt.

Der Test-Upload war erfolgreich.

Wir können die Datei auf dem Ubuntu-Server wie folgt überprüfen:

ls -la /samba/secured/
root@server1:/samba# ls -la /samba/secured/  
total 16  
drwxrwx--- 2 root smbgrp 4096 Jun 1 19:25 .  
drwxr-xr-x 4 root root 4096 Jun 1 18:49 ..  
-rwxr--r-- 1 till till 7405 Jun 1 18:42 test.odt  
root@server1:/samba#

Jetzt haben wir einen erfolgreich konfigurierten Samba-Server mit einer anonymen und einer gesicherten Freigabe auf Ubuntu 16.04 :)

4 Virtuelle Maschinen-Image-Download dieses Tutorials

Dieses Tutorial ist als sofort einsatzbereites virtuelles Maschinen-Image im ovf/ova-Format verfügbar, das mit VMWare und Virtualbox kompatibel ist. Das virtuelle Maschinen-Image verwendet die folgenden Anmeldedaten:

SSH / Shell-Anmeldung

Benutzername: administrator
Passwort: howtoforge

Dieser Benutzer hat Sudo-Rechte.

Die IP der VM ist 192.168.1.100, sie kann in der Datei /etc/network/interfaces geändert werden. Bitte ändern Sie alle oben genannten Passwörter, um die virtuelle Maschine zu sichern.

5 Links

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.