Fórum Root.cz

Hlavní témata => Server => Téma založeno: Neo 09. 06. 2016, 11:12:41

Název: NFS sdílení pro konkrétního uživatele
Přispěvatel: Neo 09. 06. 2016, 11:12:41
Ahoj,

potřebuji rozchodit sdílení adresáře /var/www z webserveru pro uživatele v jiném pc s právy zápisu. Moje situace:

Server: Debian 8 - minimal instalace - pouze webserver Apache, Open SSH a NFS (nainstalováno: nfs-kernel-server)

IP adresa serveru: 192.168.1.101

složka /var/www (práva root - root drwxr-xr-x)

nastavení nfs /etc/exports: /var/www 192.168.1.100(rw,root_squash,subtree_check)

Klient: Ubuntu 16.04 - NFS (nainstalováno: nfs-common)

IP adresa klienta: 192.168.1.100

potřebuji připojit sdílení do složky /mnt/webserver (práva: root - root drwxr-xr-x)

Zde mám uživatele: Karel, který je ve skupině sudo a chci aby mohl do složky /mnt/webserver zapisovat bez nutnosti zadávat před příkaz sudo

Pokud sdílení připojím

Kód: [Vybrat]
sudo mount 192.168.1.101:/var/www /mnt/webserver - připojí se, ale nejde zapisovat.

Pokud to samé udělám po změně v /etc/exports (root_squash => no_root_squash) připojí se a lze po zadání sudo před příkaz zapisovat, ale já potřebuji aby to fungovalo i bez sudo přímo pro uživatele Karel.

Nevím zda změnit práva k adresářům nebo jinak nastavit sdílení v /etc/exports?

Předem díky za rady
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: trubicoid2 09. 06. 2016, 12:02:12
u nfs byla otrava, ze klient a server museli mit stejne uid u uzivatelu, asi tedy i gid u skupin, mas to tak?

tedy treba karel musi mit uid 1000 na obou, stejne asi u skupin jako je sudo atd.
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: Lol Phirae 09. 06. 2016, 12:27:23
Bez NFSv4.x je bezpečnost nula a vojeb takový, že na NFS naprosto zapomeň. Použij SMB, SSHFS nebo cokoliv jiného. NFS se hodí opravdu tak leda na PXE boot.
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: Fantomas 09. 06. 2016, 12:37:27
Bez NFSv4.x je bezpečnost nula a vojeb takový, že na NFS naprosto zapomeň. Použij SMB, SSHFS nebo cokoliv jiného. NFS se hodí opravdu tak leda na PXE boot.
Presne, pro jednoduche sdileni je lepsi smb.
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: Pavouk106 09. 06. 2016, 14:06:53
Mě doma jede z NFS desktop. Má jen systémový disk, /home je na NFS. Na gigabitový síti se akorát dostávám k rychlost disků, nepoznám rozdíl. Ale stálo mě nějaký úsilí dostat to do tohohle stavu. Jedu NFSv3 jen lokálně pro jednu IP adresu. UID a GID musí být stejné (to pro mě není problém).

Když se připojuju k tomu PC (kdeje uložene /home) z jinýho, používám SSHFS.

Doma nemám Windows počítače (takže SMB je pro mě zbytečná).

Pro tazatele: Pokud chceš zapisovat do složky, musíš mít na kompu, ze kterýho budeš zapisovat, stejný UID nebo GID jako ta složka. Pokud GID, tak navíc musí ta skupina mít práva pro zápis. Jestli to děláš doma na koleni, asi bych změnil vlastníka (resp. jen skupinu) složky a srovnal to s mojí vlastní skupinou (GID). Nebo to neřešit přes NFS, jak píšou jiní.
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: ZAJDAN 09. 06. 2016, 14:33:58
samba umí být pěkně pomalá a je to opravdu vhodné, jen když jsou v síti wokna
NFS umí švihat pěkně rychle a opravdu stačí na obou stranách dodržet stejné UID/GID


useradd -u 999 nfs-user
nebo i se skupinou
useradd -u 1000 -g 500 nfs-user
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: Lol Phirae 09. 06. 2016, 15:21:00
a opravdu stačí na obou stranách dodržet stejné UID/GID

Ano, to je báječné zabezpečení. Klient: Hele, já jsem Karel. Server: No a jak ti mám věřit? Klient: No, mám přece UID 1000, tak musím bejt Karel. Server: Tak jo, já ti věřím, smaž si tady, co chceš.

O chvíli později: Karle, do (_|_) kam zmizel ten web?!
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: Karel Karlik 09. 06. 2016, 15:22:13
Je na tom serveru zapnute/povolene ACL?
Zkusil bych (snad je to spravne a dostatecne): setfacl -Rdm u:Karel:r /var/www/
Pak by uz na serveru mel mit user Karel cteci pristup do vseho pod /var/www (vcetne vseho co tam od ted vznikne), takze by ho mozna mohl mit i pres nfs.
Nemam vyzkouseno. Muze se stat i ze to sice funguje, ale nedostane se do podadresaru. Pak by mohlo pomoct setfacl -Rdm u:Karel:r-X /var/www/
(velke X ma znamenat ze acl povoli execute jenom tam, kde je jinak povolene pro vlastnika)
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: ZAJDAN 09. 06. 2016, 15:52:01
Securing NFS
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/3/html/Reference_Guide/s1-nfs-security.html

http://www.tldp.org/HOWTO/NFS-HOWTO/security.html
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: Filip Jirsák 09. 06. 2016, 16:59:46
NFS je na rozdíl od Samby víceuživatelské, tj. do lokálního adresáře se připojí celý vzdálený disk nebo adresář, a v lokálním umístění pak uživatelé vidí (a aplikují se) ta stejná uživatelská práva, jako na vzdáleném serveru. Takže když třeba vzdálený disk připojíte do adresáře /mnt/webserver, můžou do toho adresáři všichni uživatelé lokálního počítače, a každý tam bude pracovat se svým oprávněním. To je rozdíl oproti Sambě, tam si uživatel připojí pod svým jménem a heslem svůj vzdálený disk, a když chce někdo na tom samém počítači pracovat se stejným vzdáleným diskem, musí si ho připojit znovu pod svým účtem – Samba je z pohledu klienta jednouživatelská.

V případě NFS to ale samozřejmě znamená, že server musí něco vědět o klientských účtech (kdyby si mohl kdokoli připojit vzdálený disk přes NFS, prohlásil by o sobě „já jsem Karel“ a server mu to zbaštil, nebylo by to moc bezpečné). Ve starších verzích protokolu to vyžadovalo, aby na serveru i klientovi měli uživatelé stejná ID, později přibyla možnost mapování jmen – v obou případech to musel root nastavit, že to takhle opravdu souhlasí a že server může ID nebo jménům z daného klienta důvěřovat. V NFS verze 4 už je to o něco menší otrava, zejména pokud používáte pro ověřování uživatelů Kerberos, mělo by být zprovoznění relativně jednoduché. Nejlepší je najít si návod pro vaši konkrétní distribuci.
Název: Re:NFS sdílení pro konkrétního uživatele
Přispěvatel: hugochavez 09. 06. 2016, 17:36:51
samba umí být pěkně pomalá a je to opravdu vhodné, jen když jsou v síti wokna
NFS umí švihat pěkně rychle a opravdu stačí na obou stranách dodržet stejné UID/GID

"Samba is single threaded, so CPU speed makes a big difference in CIFS performance. Your typical 2.5Ghz Intel quad core or greater should be capable to handle speeds in excess of Gb LAN while low power CPUs such as Intel Atoms and AMD C-30sE-350E-450 will not be able to achieve more than about 30-40MB/sec typically."
http://doc.freenas.org/9.3/freenas_services.html#troubleshooting-cifs

NFS je vyhodne ve vlastnim LANu, pri startu PC se mi namapujou serverovy adresare pro Syncthing, BTsync, FTP dataset, torrent-download-folder atd. Jak uz bylo zmineno, je potreba osetrit pristupovy prava aby se dalo lokalne mazat/prepisovat "vzdaleny" obsah.