ubuntuusers.de

NAS mounten ohne root?

Status: Ungelöst | Ubuntu-Version: Ubuntu 20.04 (Focal Fossa)
Antworten |

mivogt

Anmeldungsdatum:
25. September 2005

Beiträge: 91

Hallo ich brauch gerade eine Hilfestellung weil ich mich irgendwie festgefahren habe.

Ich habe eine NAS (QNAP), auf der Freigaben (über FTP und SMB) eingerichtet sind.

Als root User kann ich über mount in der Konsole diese auch bequem mounten.

Wenn ich aber den Standard User Account benutze, ohne root Rechte, dann hat dieser keine Möglichkeit mount auszuführen.

Das kann man doch bestimmt irgendwie einstellen? So, dass man Server Ressourcen pro Benutzerprofil mounten kann, ohne dafür jedesmal das root Passwort zu brauchen oder den User in die root Gruppe zu setzen.

Die Frage ist nur wie... ????

Da ich verschiedene Benutzer auf der Maschine habe, die auf verschiedene Ressourcen zugreifen sollen, glaube ich nicht, dass es sinnig wäre alle Freigaben in FSTab mit einem credntial zum mounten beim Boot zu integrieren. Wenn das eleganter geht - teach me ! 😉

Ungefähr so: /mnt/NAS123/Verzeichnis1 (alle User) /mnt/NAS123/Verzeichnis2 (nur User 2) /mnt/NAS123/Verzeichnis3 (User 2 und 3) /mnt/NAS123/Verzeichnis4 (User 3 und 4)

Wenn ich irgendwann einen Denkfehler habe bzw jemand eine intelligente Lösung kennt bitte bitte bitte lasst es mich wissen!

Danke schon vorab!

Michael

PS: https://askubuntu.com/questions/1100114/mount-share-cifs-folder-without-sudo

sieht nicht ganz nach der Lösung aus die ich suche, da ich ja im Verzeichnisbaum einen MoutPoint habe und dahin mounten will und icht nur im FileManager über den Schlüsselbund ...

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

Hallo!

Ich nutze für meine NFS-Mounts tatsächlich die fstab; für eine granularere Einstellung könntest du dir aber auch eine systemd Unit schreiben, die auf den eingeloggten Nutzer reagiert. Also so einen „@.service“. Vorlagen gibt es einige, z.B. bei wpa_supplicant, oder dem User selbst: systemctl cat user@.service.

Bei der fstab-Lösung nutze ich folgendes:

heimknecht.ck:/sam /home/me/Sammelmappe/ nfs4 defaults,users,noauto,x-systemd.requires=network-online.target,x-systemd.automount 0 0

Damit kann der User „me“ die Freigabe mittels mount ~/Sammelmappe einhängen und aushängen, wann und wie er will. In meinem Beispiel ist es so, dass users ALLEN Nutzern (mit Zugriff auf /home/me/Sammelmappe) das (u)mount erlaubt, siehe fstab

sshfs (für externe Freigaben über SSH) bspw. funktioniert auch so mit Nutzerrechten und kann über einen Alias definiert werden und natürlich auch über die ~/.ssh/config. Speziell zu Samba kann ich aber nichts beitragen, ich habe keinerlei Windows hier, um damit zu spielen.

archy

Anmeldungsdatum:
24. November 2009

Beiträge: 1920

hallo,

zuerst die Frage, gibt es den User und sein samba-Passwort auf dem Server und auf dem Client ??

wenn nicht, dann schleunigst nachholen näheres dazu im Samba-Wiki.

gruß

archy

mivogt

(Themenstarter)

Anmeldungsdatum:
25. September 2005

Beiträge: 91

Wir haben es 'etwas kompliziert' gemacht.

Es gibt User mit Logins MA-VornNachn auf den PCs

dazu NAS-User NU-VornNachn auf der NAS

und am PC erfogt die Anmeldung mit dem MA-Login und das Mounten mit dem NU-User

archy

Anmeldungsdatum:
24. November 2009

Beiträge: 1920

hallo,

tut mir leid aber mit deinen Abkürzungen kann ich nichts anfangen. Es scheint aber als hättest du dir mit der Vielzahl unterschiedlicher Namen und Passwörter selbst ein Bein gestellt.

- Und nein, grundsätzlich darf nur root Geräte mounten, Ausnahme über die Option "users" im Mount-Befehl kann das umgangen werden, eigentlich nur in /etc/fstab üblich und zwar im Zusammenhang mit der Option"noauto". Aber eigentlich mountet hier natürlich beim Systemstart auch "root", es wir nur erlaubt, dass der User das schon bereitgestellte Gerät selbst Ein- und Ausblenden darf.

- Auf dem NAS muß dazu SAMBA komplett konfiguriert laufen und die Freigaben müssen für den jeweiligen User "rw" freigegeben sein.

- Dazu gehört, dass Samba auf dem NAS die Usernamen und Passwörter kennt, der Befehl dazu lautet

sudo smbpasswd -a username Rootpasswort UserPasswort UserpasswortPasswort

- Der selbe Befehl muss auf allen Linux-Clients für den jeweiligen User ausgeführt werden

- Bei einer größeren Anzahl unterschiedlicher User benötigen die meisten NAS eine ausgefeiltere User- / Anmeldedatenbank e.g LDAP, die musst du zuerst konfigurieren.

- Gemeinerweise möchte SAMBA, dass die Namen und Passwörter buchstabengetreu gleich sind auf NAS/Server und Client, sonst gibt es Abfragen oder wird gar der Zugang verweigert.

gruß

archy

mivogt

(Themenstarter)

Anmeldungsdatum:
25. September 2005

Beiträge: 91

Hallo Archy, du hast zwar viel geschrieben DANKE DAFÜR aber leider wenig beigetragen 😉

Das NAS (QNAP in dem Fall) ist natürlich konfiguriert. D.h. alle User sind angelegt.

Ich kann jeder Freigabe gemäß meinen Vorgaben per FTP und SMB erreichen. zB per FileZilla für FTP oder den Ubuntu FileMananger per SMB.

Korrekte Schreibweise versteht sich von selbst. 😉

Vereinfacht sollte meine Liste sagen ich habe einen Satz User die sich teils Freigaben teilen.

Beispiel in epischer Breite:

Bsp1: Azubi scannt in Azubi-Ablage auf der NAS. Das dürfen dann Ausbilder, Chef und Azubi auf dem Server abholen.

Bsp2: Azubi scannt in ChefAblage auf der NAS. Das dürfen dann nur Chef und seine Assitenz auf dem Server abholen.

Bsp3: Chef scannt in ChefAblage auf der NAS. Das dürfen dann nur Chef und seine Assitenz auf dem Server abholen.

Dazu habe ich für jeden User einen Account auf der NAS angelegt. Die gleichen Daten im im MFC Scanner hinterlegt im Adressbuch. Scannen klappt also ganz einfach.

Es geht nur darum dass ich nun an den PCs klar die Freigaben auch mounten will. Dabei sollte der Azubi eben auch nur die Freigabe 'Azubi' und meinetwegen noch auf die Freigabe 'Praktikant' zugreifen können.

Beide User verwenden mal diesen und mal jenen PC, haben aber eigene Logins/Accounts in Ubutu. zB Login MA-Azubi und MA-Praktikant am PC.

Meine Frage ist nur, wo und wie ich in Ubuntu die Freigaben benutzerbezogen mounten kann. Würde ich das mounten in der fstab für alle Freigabeb Chef, Azubi, Assitenz, .... machen, dann hätte der Azubi da ja zugriff vom PC aus - was nicht sein soll. 😉

Bisher habe ich es mit einem kleinen MountSkript versucht. Das muss dann aber morgens der Chef mit Sudo ausführen. Diese Rennerei will ich einsparen.

Also suche ich eine Lösung um - analog zum Autostart bei Windoof - beim Login zu mounten. Der Linux-FileManager hat den Schlüsselbund, der merkt sich das eh von selbst. Wenn es mal angelegt ist. (ich glaube dann liegt es in /media/userName/...)

Mein Wunsch wäre aber, alles konkret beim Starten zu Mouten zb nach /mnt/UnsereKleineFirma/AzubiScan und /mnt/UnsereKleineFirma/PraktikantScan was per .sh skript in der bash (mit sudo) ja auch klappt.

Nur ohne Sudo suche ich noch ....

Hoffe so wird es besser verständlich 😛

PS: aus reiner Sicherheits-Denke haben wir für das Scannen andere User als zum Zugriff auf die NAS dh. ScannerUser scannt auf Ablage XYZ – und BenutzerUser hat Zugriff auf Ablage XYZ Sollte also mal ein Gerät gehackt werden trifft es nur die ScanOrdner und nicht _alles_ ... hoffentlich ^^

ChickenLipsRfun2eat Team-Icon

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12067

Jetzt habe ich dein Anliegen auch besser verstanden. Meine erste Idee war eine user-mount-unit, aber beim Nachlesen des Sambateils bin ich über smbnetfs gestoßen, was wohl deinen Anforderungen am nächsten kommen dürfte.

kB Team-Icon

Supporter, Wikiteam
Avatar von kB

Anmeldungsdatum:
4. Oktober 2007

Beiträge: 9772

Wohnort: Münster

Netzwerkverzeichnisse kann man als normaler Benutzer prima über gio mount einhängen, wobei natürlich gio mount selbst root-Berechtigungen nutzt. Das funktioniert auch über GUI-Dateimanager. Die SMB-Einbindung in die GUI-Dateimanager hat allerdings momentan ein Problem: Es wird die Protokollversion SMBv1 benötigt. Diese Macke kann man aber durch das Nautilus-Skript Nautilus/Skripte/SMBsession umschiffen.

archy

Anmeldungsdatum:
24. November 2009

Beiträge: 1920

hallo,

also ich würde dir raten, die jeweiligen Userfreigaben auch in den jeweiligen Userbereich, also z.B. /home/username/AzubiNAS zu mounten, das machst du am Besten über /etc/fstab und zwar sofort persistent, dann brauchen die User nix nachmounten und können sofort direkt zugreifen. Die /etc/fstab sieht natürlich auf jedem PC anders aus und die Freigaben werden auch schön einzeln ( jeweils eine eigene Zeile ) gemountet.

Manche, wie der Azubi haben eben nur eine Freigabe die bei ihnen geladen wird, andere wie der Chef haben eben mehrere.- Du kannst da im Homebereich ein ganzes Ordnersystem anlegen, damit der Chef den Überblick nicht verliert. Querzugriffe aus dem einen Userbereich in den anderen verhindert Linux zuverlässig, wenn du es entsprechend in den Freigabe-Rechten einstellst.

Du solltest bei diesem Ge( Miß-)brauch einer NAS als Dateiserver aber sicher stellen, dass die NAS die Platten nur ausserhalb der Arbeitszeit schlafen legt, denn sonst kann es Probleme geben mit Timeouts - Windows 10 ist da nicht so pingelig und rödelt bis die Verbindung wieder steht, aber Linuxclients sind da etwas verwöhnter und meckern schneller.

Ich habe hier auch 2 QNAPs ( Fujitsu Kelvin NAS) und die mounte ich immer in den Userbereich, das klappt ohne Probleme.

gruß

archy

mivogt

(Themenstarter)

Anmeldungsdatum:
25. September 2005

Beiträge: 91

... wenn man vor lauter Bäumen den Wald nicht sieht ☺ DAS war mein Ei des Columbus 😉

Klar per FSTAB ins HOME ... argh eifache Lösung für mein Problem ☺ Zu Simpel gedacht alles immer in den Stamm/sysroot zu mounten ....

Werde mich mal an die FSTAB machen ...

-D-A-N-K-E-

mivogt

(Themenstarter)

Anmeldungsdatum:
25. September 2005

Beiträge: 91

Doch noch ein Hänger:

Mount läuft nicht durch - dmesg meldet

[   16.156112] CIFS VFS: Error connecting to socket. Aborting operation.
[   16.156117] CIFS VFS: cifs_mount failed w/return code = -101
[   16.161392] No dialect specified on mount. Default has changed to a more secure dialect, SMB2.1 or later (e.g. SMB3), from CIFS (SMB1). To use the less secure SMB1 dialect to access old servers which do not support SMB3 (or SMB2.1) specify vers=1.0 on mount.

Meine FSTAB Zeilen dazu

##mount ds-218 EinBenutzerName

 * //SYNODS218/EinBenutzerName-prv /home/EinBenutzerName/__NASMOUNT__/EinBenutzerName-prv cifs defaults,username=EinBenutzerName-nas,password=nas-EinBenutzerNamePWD


 * //SYNODS218/EinBenutzerName-backup /home/EinBenutzerName/__NASMOUNT__/EinBenutzerName-backup cifs defaults,username=EinBenutzerName-nas,password=nas-EinBenutzerNamePWD

Bearbeitet von ChickenLipsRfun2eat:

Bitte verwende in Zukunft Codeblöcke, um die Übersicht im Forum zu verbessern!

chr123

Anmeldungsdatum:
19. Juli 2018

Beiträge: 1632

Es wird noch die Versionsangabe erwartet:

//SYNODS218/EinBenutzerName-prv /home/EinBenutzerName/NASMOUNT/EinBenutzerName-prv cifs defaults,username=EinBenutzerName-nas,password=nas-EinBenutzerNamePWD,vers=1.0

Version 1.0 ist aber evtl deaktiviert, daher musst du hier etwas rumtesten.

archy

Anmeldungsdatum:
24. November 2009

Beiträge: 1920

hallo,

auf den Clients solltest du ausserdem unter [Global] in /etc/samba/smb.conf folgendes einfügen

client min protocol = NT1
server max protocol = SMB2

Das hilft, dass die Freigaben auch im Dateiexplorer unter "Netzwerk" angezeigt werden, sofern das gewünscht ist. Wo du die Samba-Einstellungen auf der QNAP anpassen kannst zeigt beiliegendes Bildchen

gruß

archy

Bilder

mivogt

(Themenstarter)

Anmeldungsdatum:
25. September 2005

Beiträge: 91

... funktioniert leider nicht in der FSTAB

weder mit ,ver=2.0 oder ,ver=2.1 oder ,ver=3.0 auch nicht mit ,sec=ntlmssp oder mit ,sec=ntlmssp,vers=2.1

Es gibt grds dmesg Fehler:

[  172.574334] cifs_vfs_err: 2 callbacks suppressed
[  172.574337] CIFS VFS: Error connecting to socket. Aborting operation.
[  172.574348] CIFS VFS: cifs_mount failed w/return code = -113


[   17.039799] Key type cifs.spnego registered
[   17.039804] Key type cifs.idmap registered
[   17.045433] CIFS VFS: Error connecting to socket. Aborting operation.
[   17.045443] CIFS VFS: cifs_mount failed w/return code = -101

Mount in der Shell per Sudo klappt übrigens ohne Probleme!

Ideen dazu????

Gruß

Mike

Bearbeitet von rklm:

Codeblock. Bitte beachte Forum/Syntax und nutze die Vorschaufunktion!

archy

Anmeldungsdatum:
24. November 2009

Beiträge: 1920

hallo,

ich sitze gerade an einer Windowsmaschine, deswegen kann ich den Mountbefehle nicht nachvollziehen, aber eines ist auf jeden Fall falsch, das vers=1.0 muß zu den Optionen, also so

//SYNODS218/EinBenutzerName-prv /home/EinBenutzerName/NASMOUNT/EinBenutzerName-prv cifs defaults,vers=1.0,username=EinBenutzerName-nas,password=nas-EinBenutzerNamePWD

ich würde aber cifs nie mit den "defaults" mounten, die sind viel zu restriktiv, und immer über die feste IP, mein Vorschlag wäre

//IP-Server/Freigabename /home/User/Ordner   cifs   rw,auto,users,vers=1.0,nosuid,nodev,noexec,passwd=Userpasswort   0    0

Beim Passwort bin ich mit nicht sicher ob du da nicht das root-passwort brauchst, bei mir funktionierte es mit dem Passwort des Sambausers.

gruß

archy

Antworten |