Raspberry Pi: Netzwerkfreigabe mit Benutzerverwaltung

Der Raspberry Pi ist ein Mini-PC, welcher sich auch als Home-Server eignet. In diesem mehrteiligen Tutorial wird erklärt, wie man ihn als Dateiserver im Netzwerk nutzt und dabei die Zugriffe für einzelne Nutzer regelt.

Einrichtung des Raspberrys

1. Download der benötigten Software

Als Betriebssystem verwenden wir Raspbian. Dies ist ein Betriebssystem speziell für den Raspberry Pi, welches auf der Linux-Distribution Debian basiert. Achtung: Auf der Download-Seite gibt es auch andere Betriebssysteme zum Download. Bitte achtet darauf, dass ihr wirklich Raspbian herunterladet.

Download: http://www.raspberrypi.org/downloads

Um Raspbian auf die SD-Karte spielen zu können, wird außerdem der Win32 Disk Imager benötigt.

Download: http://sourceforge.net/projects/win32diskimager/

2. Kopieren des Systems auf die SD-Karte

Beide Pakete werden anschließend entpackt. Im Verzeichnis des Win32 Disk Imager findet sich die Datei Win32DiskImager.exe. Diese muss nun mit Administratorrechten ausgeführt werden. Über das blaue Ordner-Icon wird nun das entpackte Raspbian-Image ausgewählt.

Aufspielen von Raspbian auf die SD-Karte
Aufspielen von Raspbian auf die SD-Karte

Mittels Klick auf „Write“ und Bestätigung der folgenden Meldung mit „yes“ wird das Aufspielen des Images gestartet. Dieser Vorgang kann nun ein paar Minuten dauern.

3. Anschließen des Raspberrys

Ist der Vorgang abgeschlossen, wird die SD-Karte in den Raspberry Pi gesteckt und ein Monitor und eine externe Tastatur angeschlossen. Anschließend wird die Stromversorgung über den Micro-USB-Stecker verbunden.

Anschluss der Hardware
Anschluss der Hardware

3. Einrichtung des Grundsystems

Nun folgt die Einrichtung von Raspberry. Zuerst wird mit den Pfeiltasten der Punkt „1 Expand Filesystem“ ausgewählt und mit Enter bestätigt. Auch die nachfolgende Meldung wird mit OK bestätigt. Mit der Pfeiltaste nach rechts wird nun der <Finish> ausgewählt und bestätigt. Auch die jetzt erscheinende Nachfrage nach Reboot wird bestätigt.

Konfigurationsoberfläche des Raspberry Pi
Konfigurationsoberfläche des Raspberry Pi

Sobald der Raspberry wieder gestartet ist, melder man sich mit dem Benutzernamen „pi“ und dem Password „raspberry“ am Raspberry an. Achtung, es ist das englische Tastaturlayout eingestellt. Somit muss statt dem Y das Z gedrückt werden (und umgekehrt).

Mit dem Kommando

sudo raspi-config

kommt man wieder in die Konfigurationsoberfläche. Das Minus erreicht man am einfachsten über den Nummernblock.

Im nächsten Schritt wird das Passwort des Benutzers geändert. Hierfür wird der zweite Punkt (change user password) ausgewählt und die Meldung bestätigt. Nun muss das Passwort zweimal eingegeben werden. Achtung! Auch hier müssen das Z und Y vertauscht werden, da das englische Tastaturlayout eingestellt ist. Wurde das Passwort erfolgreich gesetzt, kann die Meldung mit OK bestätigt werden.

Anschließend wird unter „Advanced Options“  der Name des Raspberrys festgelegt. Über diesen ist er später im Netzwerke erreichbar. Hierfür wird der Punkt Hostname ausgewählt und die Meldung wie gewohnt bestätigt. Nun muss der Hostname eingegeben werden und wird ebenfalls betätigt.

Zuletzt wird ebenfalls im Menü Advanced Options der Punkt SSD ausgewählt. Hier wird mit enable die Funktion aktiviert, dass der PI über das Netzwerk gesteuert werden kann. Nun wird die Konfigurationsoberfläche erneut geschlossen und der Reboot bestätigt.

3. Herstellen der SSH-Verbindung

Sobald der Raspberry Pi wieder gestartet ist, muss man sich wieder mit dem Nutznamen pi und dem im vorherigen Schritt vergebenen Passwort anmelden.

Nun wird das Netzwerkkabel am Raspberry eingesteckt.

Zum Verbinden mit dem Raspberry wird nun das Programm putty benötigt. Die Datei putty.exe kann hier heruntergeladen werden: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. Anschließend wird das Programm gestartet. Im Feld Host Name wird der festgelegte Name des Raspberrys eingegeben und mit Open die Verbindung hergestellt.

Herstellen der Verbindung in Putty
Herstellen der Verbindung in Putty

Putty fragt nun, ob dem Gerät vertraut werden kann. Dies muss bestätigt werden.

Nun kann man sich mit den vorhin vergebenen Nutzerdaten anmelden. In Putty gilt das Tastaturlayout des Computers, hier könne wir also Y und Z wieder wie gewohnt verwenden.

Anmeldung am Raspberry
Anmeldung am Raspberry

Anschließend lesen wir die IP-Adresse des Raspberrys aus. Diese kann hilfreich sein, wenn der Raspberry über den Hostname nicht erreichbar ist. Hierfür verwenden wir das Kommando ifconfig. Die IP-Adresse erscheint beim Netzwerkadapter eth0 unter dem Punkt inet addr. Sie ist im folgenden Bild rot markiert.

Auslesen der IP-Adresse
Auslesen der IP-Adresse

Das Grundsystem des Raspberrys ist nun fertig konfiguriert. Zuletzt prüfen wir noch, ob Updates für die vorinstallierten Befehle verfügbar sind. Dies geschieht mit folgenden Befehlen:

sudo apt-get update
sudo apt-get upgrade

Die Ausführung der einzelnen Befehle kann einige Minuten dauern. Der zweite Befehl muss nach einiger Zeit eventuell mit y und Enter bestätigt werden.

Die Tastatur und der Bildschirm am Raspberry werden nun nicht mehr benötigt. Diese können abgeschlossen werden.

4. Anschließen der Festplatte

Nun wird die Festplatte angeschlossen. Ob diese richtig erkannt wurde, wird mit dem Befehl

ls /dev/sd*

überprüft. Dieser listet alle Dateien und Ordner auf, welche sich im Verzeichnis /dev/ befinden. Da unter Linux alles einer Datei entspricht, erscheint auch die Festplatte hier. Die Angabe sd* bewirkt, dass nur die Objekte ausgegeben werden, deren Name mit sd beginnt.

Hat alles geklappt, erscheint die Festplatte als /dev/sda. In Ausnahmefällen kann der letzte Buchstabe abweichen.

Ausgabe der Festplatten
Ausgabe der Festplatten

5. Formatieren der Festplatte

Hat das Anschließen der Festplatte geklappt, wird formatieren wir diese nun. Dabei gehen alle darauf gespeicherten Daten verloren. Sollten sich also wichtige Daten darauf befinden, müssen diese vorher gesichert werden. Nach der Formatierung lassen sich die Daten nicht mehr wiederherstellen.

Hierfür starten wir das Programm fdisk mit folgendem Befehl:

sudo fdisk /dev/sda

Erscheint die Festplatte bei euch nicht unter /dev/sda, muss die Angabe entsprechend geändert werden.

Durch Eingabe von P zeigt uns das Programm alle vorhandenen Partitionen an.

Vorhandene Partitionen in fdisk
Vorhandene Partitionen in fdisk

Diese löschen wir nun alle mit dem folgenden Befehl. Dieser muss für alle unter „Device Boot“ aufgelisteten Partitionen ausgeführt werden. Hierfür wird das Kommando d für alle vorhandenen Partitionen ausgeführt. Dabei muss bei derjenigen mit der größen Nummer begonnen werden. In unserem Beispiel sieht das wiefolgt aus:

Löschen der Partitionen in fdisk
Löschen der Partitionen in fdisk

Anschließend erstellen wir mit dem Kommando p eine neue Partition. Alle folgenden Nachfragen bestätigen wir einfach mit Enter.

Erstellen der Partition in fdisk
Erstellen der Partition in fdisk

Nun speichern wir die veränderte Partitionstabelle mit dem Kommando w und verlassen danach automatisch das Programm fdisk.

Rufen wir jetzt erneut ls /dev/sd* auf, erscheint nur noch die Festplatte (/dev/sda) und die neue Partition (/dev/sda1).

Mit dem folgenden Befehl formatieren wir die Partition nun im Dateisystem ext4:

sudo mkfs.ext4 /dev/sda1

6. Mounten der Festplatte

Zunächst erstellen wir das Verzeichnis, in welches wir die Festplatte mounten wollen. Ich nenne dieses /mnt/fileshare/. Dies geschieht mit folgendem Befehl:

sudo mkdir /mnt/fileshare

Mit dem nachfolgenden Befehl wird die Partition nun in diesen Ordner eingebunden:

sudo mount /dev/sda1 /mnt/share/

Alle Dateien, welche nun auf der Festplatte gespeichert werden, sind jetzt über das Verzeichnis /mnt/share erreichbar.

Damit die Festplatte nach Neustarts des Raspberrys gemountet wird, müssen wir dem System mitteilen, sie dann automatisch zu mounten. Dies geschieht, indem wir mit folgendem Befehl die Datei /etc/fstab bearbeiten. Zur Sicherheit legen wir aber vorher ein Backup der Datei an. Dies geschieht mit folgenden Befehlen:
sudo cp /etc/fstab /etc/fstab_backup
sudo vi /etc/fstab

Bearbeiten von fstab
Bearbeiten von fstab

Nun öffnet sich der Editor vi mit der Datei fstab. Vi ist ein Editor, der für Neulinge kompliziert zu bedienen ist. Er ist jedoch ein sehr mächtiges Werkzeug unter Linux und für fast jede Distribution verfügbar, sodass man die grundlegenden Befehle kennen sollte.

Eine Anleitung zu vi findet sich beispielsweise hier: http://www.linux-fuer-alle.de/doc_show.php?docid=29.

Eine Auseinandersetzung mit dem Editor lohnt sich schon deswegen, weil wir ihn in diesem Tutorial öfter nutzen.

Zuerst navigieren wir mit den Pfeiltasten den Cursor hinter den letzten Eintrag. Dann drücken wir o, um darunter eine Zeile anzufügen.

Diese lautet wiefolgt:

/dev/sda <Tab> /mnt/share <Tab> ext4 <Tab> defaults <Tab> 0 <Tab> 0
Die Datei fstab mit der ergänzten Zeile
Die Datei fstab mit der ergänzten Zeile

Mit Escape verlassen wir den Editiermodus und speichern mit der Eingabe von :w die Datei. Mit :q verlassen wir sie schließlich.

 7. Installation und Einrichtung von Samba

Mit folgendem Befehl installieren wir nun den Samba-Server, welche wir für die Dateifreigabe benötigen:

sudo apt-get install samba samba-common-bin

Dieser muss nach einigen Sekunden mit y bestätigt werden. Die Installation dauert danach noch einige Zeit.

Anschließend bearbeiten wir mit dem folgenden Befehl die Konfigurationsdatei des Servers:

sudo vi /etc/samba/smb.conf

Dort suchen wir die Zeile „#   security = user“ unter dem Punkt Authentication. Wir navigieren den Cursor auf die Raute in dieser Zeile und entfernen diese durch aufeinanderfolgendes Drücken von d und l. Mit :wq speichern wir die Datei wieder und verlassen den Editor.

Die bearbeitete Konfigurationsdatei von Samba
Die bearbeitete Konfigurationsdatei von Samba

8. Anlegen der Ordner

Anschließend legen wir alle Ordner an, die wie später freigeben wollen. Dafür navigieren wir in das Verzeichnis der Partition:

cd /mnt/share

Für jeden Ordner, welchen wir nun anlegen möchten, führen wir den folgenden Befehl aus. Es ist sinnvoll, für jeden gewünschten Benutzer einen privaten Ordner und einen gemeinsamen Ordner für alle Benutzer anzulegen.

sudo mkdir <Ordnername>

Geben wir nun den Ordnerinhalt mit dem Kommando ls aus, sollten alle erstellten Ordner erscheinen.

ls

9. Anlegen des Administrators

Nun legen wir eine Benutzergruppe an. Alle Mitglieder dieser Gruppe sollen später Zugriff auf alle Freigaben haben. Dies ist besonders für Administratoren sinnvoll. In unserem Fall nennen wir die Gruppe sambaadmins. Das Anlegen geschieht mit folgendem Befehl:

sudo groupadd sambaadmins

Jetzt legen wir einen Administrator an und legen dessen Passwort fest. Diesen fügen wir anschließend der Gruppe sambaadmins hinzu.

sudo useradd admin
sudo passwd admin
sudo useradd -g admin sambaadmins

Nach dem zweiten Befehl muss das Passwort zweimal eingegeben werden.

Hiermit haben wir einen lokalen Benutzer für denRaspberry Pi erstellt. Damit dieser auch aus der Ferne auf die Freigabe zugreifen kann, legen wir dessen Freigabepasswort fest:

sudo smbpasswd -a admin

Wie gewohnt muss auch hier das Passwort zweimal eingegeben werden.

10. Anlegen der Nutzer

Auf ähnliche Art legen wir die weiteren Nutzer an, welche Zugriff auf bestimmte Ordner bekommen sollen. Für jeden Benutzer führen wir folgende Befehle aus:

sudo useradd benutzername
sudo passwd benutzername
sudo smbpasswd -a benutzername

11. Festlegen der Ordnerrechte

Nun legen wir die Zugriffsrechte für die einzelnen Ordner der Freigabe fest.

Hier unterscheiden wir zwischen Ordnern, auf die jeder Benutzer Zugriff hat (öffentliche Ordner) und Ordner, auf welche nur der Eigentümer und die Administratoren Zugriff haben (private Ordner).

Zuerst wechseln wir in das Freigabeverzeichnis:

cd /mnt/share

Öffentliche Ordner

Für öffentlich Ordner führen wir folgenden Befehl aus:

sudo chmod -R 777 ordnername

Außerdem legen wir einen beliebigen Benutzer und die Administratorengruppe als Eigentümer fest:

sudo chown -R sambaadmins:admin ordnername

Am Ende der Datei /etc/samba/smb.conf fügen wir die Freigabeeinstellungen ein.

sudo vi /etc/samba/smb.conf

Dazu navigieren wir ganz ans Ende der Datei und drücken o, um eine neue Zeile einzufügen:

[Freigabename]
path = /mnt/share/ordnername
writable = yes
guest ok = no

Mit diesen Einstellungen haben alle angelegten Benutzer Schreibzugriff auf den Ordner.

Konfiguration der Freigabe
Konfiguration der Freigabe

Mit :wq speichern und verlassen wir anschließend die Datei wieder.

Private Ordner

Das Einrichten privater Ordner läuft ähnlich ab.

Zuerst legen wir wieder die Zugriffsrechte fest:

sudo chmod -R 770 ordnername

Anschließend wird der Eigentümer festgelegt:

sudo chown -R sambaadmins:benutzername ordnername

Jetzt wird wieder die Freigabe in der Konfigurationsdatei eingetragen:

sudo vi /etc/samba/smb.con

Dazu muss ans Ende der Datei navigiert werden und dort folgender Text wir beim öffentlichen Ordner erklärt eingetragen werden:

[Freigabename]path = /mnt/share/ordnername
writable = yes
guest ok = no

Mit :wq wird gespeichert und die Datei verlassen.

12. Neustart des Samba-Servers

Zum Abschluss der Freigabe muss der Samba-Server noch neu gestartet werden. Das geschieht mit folgendem Befehl:

sudo service samba restart

13. Verbinden der Freigaben am Computer

Um nun am Computer auf die Freigaben zugreifen zu können, müssen diese noch eingebunden werden. Hierfür muss im Arbeitsplatz (Unter Windows 7 Computer genannt) auf die Schaltfläche „Netzlaufwerk verbinden“ geklickt werden.

Verbinden des Netzlaufwerks am Computer
Verbinden des Netzlaufwerks am Computer

Im folgenden Dialog kann ein Buchstabe für das Laufwerk ausgewählt werden. Der Ordner ist \\Hostname oder IP des Raspberrys\Freigabename. Außerdem muss der Haken bei „Verbindung mit anderen Anmeldeinformationen herstellen“ gesetzt werden.

Einrichten des Netzlaufwerks
Einrichten des Netzlaufwerks

Zuletzt müssen noch die Zugangsdaten eingegeben werden. Der Benutzername lautet Hostname des Raspberrys\benutzername.

Eingabe der Zugangsdaten
Eingabe der Zugangsdaten

Jetzt ist die Freigabe am Computer eingebunden und kann verwendet werden.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.