• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[Gelöst] Wie macht ihr denn das so mit eurem NAS?

revealed

Guru
Hallo. Ich habe eine Fritz Box und die bringt ein NAS mit. Dann dachte ich mir, ich schreibe mal nieder wie ich es einbinde. Ich wollte auch in diesem Zuge fragen, wie ihr das so einrichtet.

Gruß,

R

Unsichere automatische Anbindung eines Fritz NAS an KDE nach Anmeldung:

(Verwendung diesesr Anleitung ist ein Sicherheitsrisiko. Nur empfehlenswert, wenn wenn beispielsweise nur eine Einzige Person das NAS im lokalen Netzwerk verwendet):

Einige Fritzboxen bringen ein NAS mit. Ich möchte hier beschreiben, wie so eines automatisch nach Anmeldung an KDE für einen Bestimmten Benutzer erledigen kann. Der Vorteil ist, dass das System beim Boot nicht ausgebremst wird, bis das Netzwerk verfügbar ist. Ein Eintrag in die fstab ist nicht nötig. Es ist gedacht für ein Szenario wie das heim NAS auf dass sowieso nur eine Person und wirklich nur intern zugreift. Deswegen werden hier auch keine weiteren Sicherheitsvorkehrungen getroffen. Da das lokale Netz durch andere Schutzmaßnahmen von Außen geschützt wird.

Warnung: Es könnte als Sicherheitsrisiko angesehen werden, wenn Benutzern erlaubt wird, einen mount via „sudo“ durchführen zu lassen. Außerdem werden Kennwörter in Klartext abgespeichert.

Verwendete tools:
visudo, sudo, mount.cifs, kcmshell4, yast2 Benutzerverwaltung,

Damit Benutzern das einhängen des NAS ermöglicht werden kann, weise ich der Gruppe „cdrom“ via sudo entsprechende Berechtigungen zu. Dazu verwende ich visudo.

Code:
su
visudo

Am Ende der Seite in visudo ergänze ich folgende Einträge: (Einzeiler.)
Code:
# Allow mounting remotefileshares for group cdrom via sudo:
%cdrom ALL = NOPASSWD:NOEXEC: /bin/mount, /bin/umount, /sbin/mount.cifs, /sbin/mount.nfs

Dies gestattet es wie gesagt der Gruppe 'cdrom' die Befehle mount unmount und mount.cifs zu verwenden. Benutzer denen dies erlaubt werden soll, müssen noch dieser Gruppe hinzugefügt werden. Benutzer der Gruppe 'cdrom' hinzufügen:
- Dazu empfehle ich die Benutzerverwaltung in YaST.

Ich erstelle auf der Festplatte an geeigneter Stelle einen Einhängepunkt:
Code:
mkdir /mnt/nas

Ich erstelle ein Skript in folgendem Pfad:
Code:
touch /usr/local/bin/mountNAS.sh

Mit diesem Inhalt:
Code:
#!/bin/bash
# Ausführen mounted einmalig das NAS für diese Sitzung.
sudo /sbin/mount.cifs "//192.168.178.1/FRITZ.NAS" /mnt/nas -o credentials=$HOME/.cifslist,rw
exit 0

Ausführbar machen:
Code:
chmod +x /usr/local/bin/mountNAS.sh

Bitte beachtet ggf. die Adresse und den Name eures NAS anzupassen. Außerdem muss in der Oberfläche der FritzBox entsprechend der Benutzer für das NAS angelegt werden.

Das credentials file für die Anmeldedaten per user.
Code:
touch /$HOME/.cifslist
Inhalt:
Code:
# Credentials for mounNAS
username=
password=
Berechtigungen:
Code:
chown root.root /$HOME/.cifslist
Code:
chmod 600 /$HOME/.cifslist

Damit das ganze bei Anmeldung eines jeweiligen Benutzers automatisch passiert, gehe ich wie folgt vor:
Code:
kcmshell4 autostart

Dort füge ich das zuvor erstellte Skript beim Startzeitpunkt zur Anmeldung ein. Hier nochmal der Pfad:
/usr/local/bin/mountNAS.sh

Probleme:
Falls es ohne zuweisen des SUID bit für mount.cifs nicht funktionieren sollte und klar ist, dass dies ein Sicherheitsrisiko darstellen kann, wird es mit diesem Befehl zugewiesen:
Code:
chmod +s /sbin/mount.cifs
 

josef-wien

Ultimate Guru
Was hältst Du von autofs? Oder einem fstab-Eintrag mit noauto,users,credentials=xxx? Deine "sudo-Vergewaltigung" finde ich nicht besonders gut.
 
OP
revealed

revealed

Guru
Hallo das klingt interessant.

"sudo-Vergewaltigung"
Das hat alt bekannten Nachklang in meinem Kopf. Ich denke du weisst woher.

(Hast ja schon verlinkt). Danke ich schaue es an.

Hab im wiki nach cifs gesucht. Da bin ich da nich drübergestolpert.
hmmm fstab....

Was mir bei autofs nicht klar ist, wie ich das erst nach dem Login automatisieren kann. Ich möchte nicht, dass das Erreichen von graphical.target deswegen verlangsamt wird, bis das Netzwerk in Abhängigkeit verfügbar ist. Deswegen geschieht das bei mir bisher erst wenn KDE oben ist. Und ich erhalte eine Fehlermeldung:
lookup(yp): map auto.master: Local domain name not set
Und im link hat er noch ein: 'user=' drin. Das brauch ich nicht, weil das in credentials steht.
Und auch interessant. Immer wenn ich starten will hab ich einen Eintrag im journal mit:
SFW2-INext-DROP-DEFLT
Was das jetz mit multicast? *wirr*

Glaube fstab Eintrag noauto und dann via script erneut mounten ist ersterem Ansatz wieder sehr ähnlich, oder?
Und noch ein Punkt den ich nicht verstehe. Dolphin würde ja an sich diesen slave anbieten. Aber das Problem kennst du ja wahrscheinlich, wenn man dann videos abspielen wollte müsste wieder user und pass an den stream gehängt werden.

Dann hatte ich mir überlegt, ob die credentials eventuel mit kpasswd abgehandelt werden könnten. Aber da bin ich recht schnell beim Forschen an meine Grenzen gestoßen.

Gruß,

R

PS.: Ich muss das jetzt erstmal nochmal deaktivieren und schauen. Glaube ich muss noch einen weiteren zusätzlichen Dienst starten für die autofs Variante.
 
OP
revealed

revealed

Guru
Hallo.

Danke für den Tipp. Bevor ich mein script jetz schlafen legen würde, gibt es nochmal dieses Problem:
Code:
mount //192.168.0.1/FRITZ.NAS
mount: //192.168.0.1/FRITZ.NAS: Datei oder Verzeichnis nicht gefunden

Der Eintrag sieht so aus:
Code:
//192.168.0.1/FRITZ.NAS  /mnt/nas        cifs    noauto,users,credentials=/usr/local/bin/.cifslist       0 0

Ich mach auch gleich noch ein Neustart und versuchs nochmal. Direkt nach dem Anlegen geht mounten nur al 'su'; Nicht als User :(
 
OP
revealed

revealed

Guru
Lol also jetz gib dir das:

Nach einem reboot funktioniert fstab als auch autofs auf einmal. Jetz versuch ich noch die cdrom gruppe wieder abzulösen.
- Das hat auch geklappt. Also die sudo story bin ich auch los.
- Jetzt ist noch die frage der Berechtigungen für das credentials File. chmod 600 funktioniert nicht mehr. Habe mal 666 gemacht.

Danke.

Gruß,

R
 

josef-wien

Ultimate Guru
Das hängt vermutlich damit zusammen, daß systemd mit Brachialgewalt alles Bewährte ändert:
Code:
man systemd-fstab-generator
revealed schrieb:
Habe mal 666 gemacht.
Du übertreibst. Lesen muß reichen, und "alle Welt" wäre auch noch hinterfragenswert.
 
OP
revealed

revealed

Guru
Ich bin da ja nicht so fit. Wärest du mit 640 dafür root.users einverstanden?
-rw-r----- 1 root users

Das hängt vermutlich damit zusammen, daß systemd mit Brachialgewalt alles Bewährte ändert:
Uia das hätte letztens wer im IRC gebraucht, der seinen Server nach hotswap immer neustarten muss.

Gruß,

R
 
Oben