Teil 4 – Selbstgebauter Homeserver/NAS: Dateifreigaben für das Heimnetz mit SAMBA

Dieser Artikel ist Teil der Reihe Selbstgebauter Homeserver/NAS mit Ubuntu Server


Nachdem die Grundkonfiguration erledigt ist können nun die eigentlichen Dienste installiert und konfiguriert werden. Als erstes kommen die Dateifreigaben dran, damit wir von allen Rechnern in unserer Wohnung Zugriff auf die zentral gespeicherten Daten bekommen. Da wir sowohl mit Windows als auch mit Linux Clients auf die Dateien zugreifen wollen nutzen wir hierfür SAMBA.

In diesem Artikel werden zwei Benutzer für den Zugriff auf die Freigaben über das Netzwerk angelegt. Einen User nenne ich mediamaster. Dieser ist der User, welcher von uns auf unseren eigenen Rechnern genutzt wird und welcher Lese- und Schreibzugriff auf alle Dateien hat.

Ein zweiter User, genannt mediaaccess, ist für die Nutzung auf Mediacentern oder zur Weitergabe ab Besucher gedacht. Dieser User hat keinerlei Schreibrechte und nur Leserechte auf bestimmte Verzeichnisse.

Samba hat seine eigene Benutzerdatenbank. Sambabenutzer müssen aber schon als „normale“ Systenbenutzer vorhanden sein. Aus diesem Grund müssen wir die Benutzer zweimal anlegen. Einmal als Systembenutzer und einmal als Sambabenutzer.

Zuerst legen wir den Mediamaster als Systembenutzer an. Dieser User darf sich anschließend auch per SSH einloggen, hat jedoch keine Root- oder Sudorechte. Die Abfragen zum kompletten Namen, Zimmernummer usw. können einfach mit Enter übersprungen werden.

sudo adduser mediamaster

Anschließend legen wir den Mediaaccess als Systemuser an. Dieser bekommt kein eigenes Homeverzeichnis und darf sich auch nicht per SSH auf dem System einloggen.

sudo adduser --no-create-home --disabled-login --shell /bin/false mediaaccess

Als nächstes wird Samba installiert mit

sudo apt-get install samba-common samba

Jetzt legen wir die gerade angelegten Systemuser auch in der Samba Benutzerdatenbank an mit

sudo smbpasswd -a mediamaster

und

sudo smbpasswd -a mediaaccess

Sinnvollerweise wird hier für den Meadiamaster in Samba das selbe Passwort wie für den Systemuser vergeben, zwingend ist das jedoch nicht. Die mit dem Befehl smbpasswd vergebenen Passwörter sind auch die, welche nachher zum Dateizugriff über das Netzwerk nötig sind.

Jetzt wechseln wir zum Benutzer mediamaster und legen die Ordner an, welche wir anschließend im Netzwerk freigeben wollen. In diesem Fall legen wir im Homeverzeichnis die Ordner Videos, Musik, Dokumente und Public an und wechseln wieder zum User homeadmin zurück.

$ sudo su mediamaster
$ cd
$ mkdir videos musik dokumente public
$ exit

Die weitere Konfiguration von Samba erfolgt über die Datei /etc/samba/smb.conf, welche im Texteditor geöffnet werden muss.

$ sudo nano /etc/samba/smb.conf

Hier scrollen wir mit der Bild-nach-unten Taste ganz an das Ende der Datei. Hier wird die folgende Konfiguration für die Freigaben eingefügt:

[Videos]
comment = Videos
path = /home/mediamaster/videos
write list = mediamaster
valid users = mediamaster,mediaaccess
force user = mediamaster

[Musik]
comment = Musik
path = /home/mediamaster/musik
write list = mediamaster
valid users = mediamaster,mediaaccess
force user = mediamaster

[Dokumente]
comment = Dokumente
path = /home/mediamaster/dokumente
write list = mediamaster
valid users = mediamaster
force user = mediamaster

[Public]
comment = Public
path = /home/mediamaster/public
write list = mediamaster, mediaaccess
valid users = mediamaster,mediaaccess
force user = mediamaster

Die Datei kann jetzt mit STRG+O gespeichert und anschließend mit STRG+X geschlossen werden.

Damit die Änderung übernommen wird muss Samba neu gestartet werden mit

$ sudo service smbd restart

Damit werden vier Freigaben erstellt. Auf die Freigaben Videos und Musik haben sofowhl der User mediamaster, als auch der user mediaaccess zugriff, wobei der User mediaaccess nur lesen, mediamaster aber lesen uns schreiben darf. Die Angabe „force user“ gibt an dass Samba geschriebene Dateien immer mit den Rechten des Systemusers mediamaster erstellt. Die hat keine Auswirkung auf die Freigaben, aber auf die Rechtevergabe auf Dateiebene.

Auf die Freigabe Dokumente darf nur der User mediamaster zugreifen.

Auf die Freigabe Public darf sowohl der mediamaster, als auch der mediaaccess zugreifen und schreiben

Samba bietet auch die Möglichkeit einen Papierkorb zu erstellen, so dass gelöschte Dateien wiederhergestellt werden können. Wie dieser eingerichtet wird habe ich im Artikel „Papierkorb für SAMBA Freigaben“ beschrieben. Die Serverseitige Einrichtung der Freigaben ist damit abgeschlossen. Nun müssen diese nur noch auf den Clients eingerichtet werden.

Diese Art der Dateifreigabe bietet sich für das heimische Netzwerk an, da die Übertragungsraten sehr hoch sind. Da die Übertragung jedoch unverschlüsselt stattfindet ist diese Möglichkeit nicht zur Datenübertragung über das Internet geeignet. Damit die möglich wäre müsste jedoch eine Portweiterleitung im Router eingerichtet werden. Wer dies nicht gezielt macht kommt auch nicht in die Verlegenheit versehentlich aus dem Internet auf die eigenen Dateien zuzugreifen. Außerdem ist die lokale IP Adresse 192.168.178.100 nicht über das Internet erreichbar.

Schnellzugriff auf die Freigaben unter Windows

Die schnellste Möglichkeit auf die Freigaben des Homeservers zuzugreifen ist es, einfach in die Adresszeile des Windows Explorers \\192.168.178.100 einzugeben. Dann werden die Freigaben angezeigt und bei einem Klick auf die Freigabe erscheint die Abfrage des Benutzernamens und des Passworts. Diese Möglichkeit ist besonders geeignet wenn man schnell einige Dateien mit einem Gast austauschen möchte.

windows-smb-8

Einbinden der Freigaben als Netzlaufwerk unter Windows

Für einen bequemen Zugriff auf die Dateifreigaben unter Windows können diese als Netzlaufwerk eingebunden werden. Dies eignet sich besonders für eigene Computer, die ständig Zugriff auf die Freigaben des Homeservers benötigen.

Zur Einrichtung öffnet man den Arbeitsplatz und macht einen Rechtsklick auf eine freie Stelle. Dann klickt man auf Netzwerkadresse hinzufügen.

windows-smb-1Im nächsten Schritt wählt man „Eine Benutzerdefinierte Netzwerkadresse auswählen„. Je nach Windowsversion ist dies unter Umständen auch die einzig auswählbare Option.windows-smb-2

In das Feld zur Eingabe der Netzwerkadresse geben wir die IP Adresse unseres Homeservers gefolgt von der Freigabe in Form von „\\192.168.178.100\Dokumente“ einwindows-smb-3

Im nächsten Schritt können wir einen beliebigen Namen für die Freigabe eingeben, z.B. „Homeserver Dokumente

windows-smb-4

Nach einem Klick auf weiter kommt die Passwortabfrage. Hier geben wir die Zugangsdaten unseres Mediamasters ein und setzen einen Haken bei „Anmeldedaten speichern„.

windows-smb-5

Wenn die Zugangsdaten korrekt eingegeben wurden ist nun unsere Freigabe unter dem gerade vergebenen Namen im Arbeitsplatz zu finden. Dieser Vorgang muss nun für alle Freigaben wiederholt werden.

windows-smb-6

Schnellzugriff auf die Freigaben unter Ubuntu

Auch unter Ubuntu ist ein einfacher Schnellzugriff auf die Freigaben möglich. Dies ist besonders geeignet wenn die Freigaben nicht dauerhaft verfügbar sein müssen, z.B. für einen Gast. für den Zugriff öffnen wir Nautilus bzw. Dateien und wählen oben in der Menüleiste „Ort eingeben“ aus.

ubuntu-smb-1

Dort geben wir smb://192.168.178.100 ein und drücken Enter. Daraufhin werden unsere Freigaben angezeigt. Bei einem Klick darauf kommt die Passwortabfrage.ubuntu-smb-2

Dauerhaftes einbinden der Freigaben unter Ubuntu

Bei allen selbst genutzten Computern ist es einfacher die Freigaben dauerhaft zu mounten Damit man immer Zugriff auf den Homeserver hat.. Dies ist ein bisschen aufwändiger als unter Windows, dafür sind die Freigaben anschließend nahtlos in das Dateisystem eingebunden und können genau wie lokale Ordner auf der Festplatte genutzt werden.

Damit Ubuntu Sambafreigaben beim Start mounten kann muss das Paket cifs-utils installiert werden.

$ sudo apt-get install cifs-utils

Dann legen wir in unserem Homeverzeichnis die Ordner an, die nachher der Freigabe auf dem Homeserver entsprechen sollen. Also z.B. zuerst einen Ordner Homeserver und darin die Ordner Dokumente, Musik, Public und Videos.

ubuntu-smb-3

Die weitere Konfiguration erledigen wir wieder auf der Kommandozeile. Wir erstellen einen versteckten Ordner, in dem wir die Zugangsdaten für die Netzwerkfreigabe hinterlegen. Die Leserechte auf diese Datei werden anschließend so beschränkt, dass sie nur nach Eingabe des Root-/Administratorpassworts gelesen werden kann.

$ cd
$ mkdir .credentials
$ nano .credentials/smbcredentials

in diese Datei kommen Benutzername und Passwort in der Form

username=mediamaster
password=MEINPASSWORT

ubuntu-smb-4Aus Sicherheitsgründen werden jetzt die Rechte der Datei angepasst.

$ sudo chown root: .credentials/smbcredentials
$ sudo chmod 600 .credentials/smbcredentials

Damit Ubuntu die Freigaben kennt müssen diese in die Datei /etc/fstab eingetragen werden.

$ sudo nano /etc/fstab

Der Eintrag muss folgendermaßen aussehen:

#Mount Homeserver
//192.168.178.100/Dokumente /home/MEINUSERNAME/Homeserver/Dokumente cifs credentials=/home/MEINUSERNAME/.credentials/smbcredentials,users,uid=1000,gid=1000 0 0
//192.168.178.100/Musik /home/MEINUSERNAME/Homeserver/Musik cifs credentials=/home/MEINUSERNAME/.credentials/smbcredentials,users,uid=1000,gid=1000 0 0
//192.168.178.100/Videos /home/MEINUSERNAME/Homeserver/Videos cifs credentials=/home/MEINUSERNAME/.credentials/smbcredentials,users,uid=1000,gid=1000 0 0
//192.168.178.100/Public /home/MEINUSERNAME/Homeserver/Public cifs credentials=/home/MEINUSERNAME/.credentials/smbcredentials,users,uid=1000,gid=1000 0 0

Die /etc/fstab sieht dann ungefähr so aus:

ubuntu-smb-5

MEINUSERNAME muss durch den eigenen Benutzername ersetzt werden. uid und gid sind beim ersten Benutzer normalerweise 1000. Wenn jedoch mehrere Benutzer auf dem Rechner angelegt sind kann diese ID auch eine andere sein. Die eigene UID und GID kann durch die Eingabe des Befehls „ID“ in das Terminal überprüft werden.

Jetzt können die Freigaben manuell eingebunden werden. Bei einem Neustart geschieht das automatisch.

$ sudo mount-a

Jetzt sind die Netzwerkfreigaben über die vorhin erstellten Ordner in das Dateisystem eingebunden. Die Icons der Ordner haben jetzt ein kleines Netzwerksymbol erhalten.

ubuntu-smb-6

Nächster Teil der Artikelreihe:
Teil 5 – Selbstgebauter Homeserver/NAS: Apache Webserver PHP und MySQL Datenbank installieren

 



88x31_CC_by
Dieser Artikel ist lizensiert unter einer Creative Commons Namensnennung 4.0 International Lizenz.

3 Kommentare

  • Basi

    Super Tutorial, leider komme ich an einem Punkt nicht weiter.

    System 14.04.5

    Und zwar habe ich alles nach Anleitung befolgt, jedoch kann ich kein Owncloud-Konto mit MySQL erstellen.

    Ich bekomme jedesmal die Meldung
    „Das Datenverzeichnis /home/BENUTZERNAME/owncloud kann nicht erstellt oder es kann darin nicht geschrieben werden.“

    Ich bitte um Hilfe!

  • T.Müller

    Super Anleitung. Hat alles funktioniert. Vielen Dank!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.