Diese Anleitung erklärt die Installation und Konfiguration eines Samba-Servers auf Ubuntu 15.10 (Wiley Werewolf) mit anonymen und gesicherten Samba-Freigaben. Samba ist eine Open Source/freie Software-Suite, die nahtlose Datei- und Druckdienste für SMB/CIFS-Clients bereitstellt. Samba ist im Gegensatz zu anderen SMB/CIFS-Implementierungen frei verfügbar und ermöglicht die Interoperabilität zwischen Linux/Unix-Servern und Windows-basierten Clients.
1 Vorbemerkung
Ich habe den Ubuntu 15.10-Server neu installiert, auf dem ich den Samba-Server installieren werde. Als Samba-Client-System werde ich einen Windows-Desktop verwenden, um mich mit dem Samba-Server zu verbinden und das Setup 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 cmd-Eingabeaufforderung aus:
net config workstation
Die Ausgabe sieht so aus:
Ihr Windows-Rechner muss sich in derselben Workstation-Domäne wie der Ubuntu-Server befinden, in meinem Fall also WORKGROUP.
- 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 erreichen den Administratormodus, indem Sie mit der rechten Maustaste auf das Terminal-Symbol im Programmmenü 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
2 Anonymes Samba-Sharing
Samba ist in den Ubuntu-Repositories verfügbar. Der erste Schritt ist die Installation des Samba-Servers und seiner Abhängigkeiten mit apt.
apt-get install -y samba samba-common python-glade2 system-config-samba
Es installiert die Samba-Version 4.1.17-Ubuntu.
Um Samba zu konfigurieren, bearbeiten Sie die Datei /etc/samba/smb.conf. Ich werde nano als Editor verwenden und eine Sicherungskopie der Originaldatei erstellen, bevor ich anfange, sie zu ändern. 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 erstelle ich ein Verzeichnis für die anonyme Freigabe.
mkdir -p /samba/anonymous
Legen Sie die richtigen Berechtigungen fest.
chmod -R 0755 /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 Windows-Suchfeld des Menüs eingeben oder den Netzwerkbrowser des Windows-Datei-Explorers verwenden, um eine Verbindung zur Freigabe herzustellen.
Versuchen Sie, eine Datei per Drag&Drop auf die Freigabe hochzuladen, um zu sehen, ob es richtig funktioniert.
Sie können den Inhalt auch auf dem Server überprüfen.
ls -la /sambe/anonymous/
[email protected]:/# ls -la /samba/anonymous/
total 8228
drwxr-xr-x 2 nobody nogroup 4096 Oct 30 15:14 .
drwxr-xr-x 3 root root 4096 Oct 30 15:07 ..
-rwxr--r-- 1 nobody nogroup 8414449 Jul 14 2009 Kalimba.mp3
3. Gesicherter Samba-Server
Für die passwortgeschützte Freigabe erstelle ich eine Gruppe smbgrp und einen Benutzer till um auf den Samba-Server zuzugreifen. Ich werde in diesem Beispiel "howtoforge" als Passwort verwenden, bitte wählen Sie ein benutzerdefiniertes und sicheres Passwort auf Ihrem Server.
addgroup smbgrp
useradd till -G smbgrp
smbpasswd -a till
[email protected]:~# smbpasswd -a till
New SMB password:<--howtoforge
Retype new SMB password:<--howtoforge
Added user till.
[email protected]:~#
Erstellen Sie nun den Ordner mit dem Namen "secured" im /samba-Ordner und geben Sie Berechtigungen wie diese
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 guest ok = no writable = yes browsable = yes
service smbd restart
Um die Einstellungen zu überprüfen, führen Sie diesen Befehl aus:
cd
testparm
[email protected]:~# 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<--ENTER
[global]
netbios name = UBUNTU
server string = Samba Server %v
map to guest = Bad User
dns proxy = No
idmap config * : backend = tdb
[Anonymous]
path = /samba/anonymous
read only = No
guest ok = Yes
[secured]
path = /samba/secured
valid users = @smbgrp
read only = No
[email protected]:~#
Öffnen Sie auf dem Windows-Rechner "\\server1" Netzwerkgerät erneut, wird es nun einen Benutzernamen und ein Passwort anfordern. Geben Sie die Benutzerdaten ein, die Sie oben erstellt haben. In meinem Fall waren die Werte user=till und password=howtoforge.
Wir können die Datei auf dem Ubuntu-Server wie folgt überprüfen:
ls -la /samba/secured/
[email protected]:~# ls -la /samba/secured/
total 64
drwxrwx--- 2 root smbgrp 4096 Oct 30 15:33 .
drwxr-xr-x 4 root root 4096 Oct 30 15:23 ..
-rwxr--r-- 1 till till 57113 Oct 13 2012 OptimizationReport.htm
Jetzt haben wir einen erfolgreich konfigurierten Samba-Server mit einer anonymen und einer gesicherten Freigabe auf Ubuntu 15.10 :)
4 Links
- Ubuntu: http://www.ubuntu.com/
- Samba: http://www.samba.org/samba/