Portál AbcLinuxu, 10. května 2025 08:44

Dotaz: Samba - práva

10.10.2010 18:15 Pavel
Samba - práva
Přečteno: 867×
Odpovědět | Admin
Ahoj,,
řeším problém, jak správně nastavit práva. V systému budou dvě skupiny a dva uživatelé (pouze zatím pro tento příklad). Uživatel "pavel" by měl mít právo zapisovat a číst ze sdílení "Install" a uživatel "petr" by měl mít právo ze sdílení "Install" pouze číst.

Postupoval jsem takto....

V systému jsem založil uživatele "pavel" a uživatele "petr":
useradd pavel (založení uživatele v OS)
passwd pavel (nastavení hesla uživatele do OS)
smbpasswd -a pavel (založení uživatele a nastavení hesla v SMB)

useradd petr
passwd petr
smbpasswd -a petr

Dále jsem vytvořil dvě skupiny "smb-install-rw" a "smb-install-ro"
groupadd smb-install-rw (členové této skupiny budou mít práva jak READ, tak i WRITE)
groupadd smb-install-ro (členové této skupiny budou mít práva pouze READ)

...a začlenil jsem uživatele do patřičných skupin:
gpasswd -a pavel smb-install-rw
gpasswd -a petr smb-install-ro

...poté jsem zbastlil tento konfigurační soubor "smb.conf"

[global]
        workgroup = SKUPINA
        server string = Samba Server Version %v

        interfaces = lo eth0 172.20.100.200/24
        hosts allow = 127. 172.20.100.

        log file = /var/log/samba/%m.log
        max log size = 50

        security = user
        passdb backend = tdbsam

        display charset = 852
        unix charset = UTF-8
        dos charset = CP852


[install]
        comment = Instalace
        path = /mnt/storage1/samba/install
        write list = @smb-install_rw
        read list = @smb-install_ro
Co mi není jasné je, jak nastavit správně práva na úrovni systému v adresáři /mnt/storage1/samba/install. Nevím, jak nadefinovat na jeden adresář víc skupin, kde každá skupina bude mít "různá" práva.

Mohu poprosit o radu, jak na to ?
Děkuji.


Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

10.10.2010 18:27 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Samba - práva
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pokud potřebujete nastavovat více práv (ne jen jednu skupinu a jednoho uživatele, ale třeba více skupin), použijte ACL.
10.10.2010 18:34 Pavel
Rozbalit Rozbalit vše Re: Samba - práva
WoW, asi to je to co hledám, ale mám z toho obavy. Přeci jenom se s Linuxem kamarádit teprve začínám. Mohu poprosit, jak by to vypadalo ve skutečnosti v příkazech "step-by-step" ? A kdo má být skutečný vlastník souboru/adresáře v /mnt/storage1/samba/install ?

Děkuji
10.10.2010 19:36 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Samba - práva
Např. takhle:
chgrp skupina-zapis adresar
chmod g+rw adresar
setfacl -m g:skupina-cteni:r adresar
setfacl -d -m g:skupina-cteni:r adresar
Skupina pro zápis bude adresář vlastnit, skupině pro čtení přidáte právo přes ACL (a přes -d přidáte to právo jako výchozí pro nově vytvořené podadresáře a soubory).

Vlastníkem by měl být skutečný vlastník, pokud takový není, pak root.
otula avatar 10.10.2010 19:12 otula | skóre: 45 | blog: otakar | Adamov
Rozbalit Rozbalit vše Re: Samba - práva
Odpovědět | | Sbalit | Link | Blokovat | Admin
ACL je vcelku komlexní řešení, pro tento případ by stačilo použít direktivu read list. Nějak takto:
read only = yes
write list = pavel
Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
otula avatar 10.10.2010 19:17 otula | skóre: 45 | blog: otakar | Adamov
Rozbalit Rozbalit vše Re: Samba - práva
případně ne jen pro pavla, ale uvedenou skupinu
write list = @smb-install-rw
Kdo vám tvrdí, že jste paranoidní, ten v tom spiknutí s největší pravděpodobností jede taky.
10.10.2010 19:20 Pavel
Rozbalit Rozbalit vše Re: Samba - práva
Odpovědět | | Sbalit | Link | Blokovat | Admin
možná ano, ale to by pak na Linux FS muselo být chmod 777 na /mnt/storage0/samba/install což není zrovna žádoucí. Zajímá mě ta metoda pomocí ACL.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.