## page was copied from Samba4/CreazioneShares == Creare e gestire uno share == In samba, se usato come domain controller AD o membro di un dominio AD, gli share fanno totalmente affidamento sulle ACL posix, questo rende le cose piu` semplici (all'apparenza) rispetto a Samba 3, ma in realta` si aprono scenari da incubo nei quali ogni file ha permessi tutti suoi, e tutto si incasina fino al punto in cui non riesce piu` a capire una ciolla, esattamente come e` sempre stato quando troppa gente clicca allegramente sulle impostazioni di sicurezza dei files in uno share. === Creare uno share === * Creare la entry per lo share in smb.conf. Notare la voluta semplicita` della entry. I permessi li diamo dal file system e non da qui. {{{ [documenti] path = /ud0/documenti read only = no }}} * Creare la directory e dare i permessi minimi. Qui c'e` da discutere sulla soluzione migliore. C'e` chi sostiene che sia meglio fare tutto dall'interfaccia di windows, ma a me infastidisce. In ogni caso, un minimo va fatto, ergo per il momento questa e` la mia idea. Sicuramente si puo` fare meglio. Il concetto e` che dopo aver tolto accesso a "others" con il chmod 770, imposto il gruppo a "domain admins". {{{ mkdir documenti chmod 770 documenti chgrp "domain admins" documenti }}} * A questo punto posso gestire i permessi da Windows (che tristezza) aprendo "gestione computer", poi connettendomi ad un altro computer (il domain controller) e sotto a Utilita` di sistema / Cartelle Condivise / Condivisioni posso modificare i permessi (nel tab "sicurezza", e non in quello "condivisione"). * Vi sono alcune entry "spurie" causate dai permessi "di base" (non posix), in quanto la directory appartiene a root.root di default. Queste entry possono essere tolte. Tipicamente sono un account sconosciuto con UID corto che finisce per zero (root) e "administrator" (un alias di root) che hanno solo "Autorizzazioni speciali" flaggato. * Assicuriamoci che "Domain admins" abbia tutto, compreso "full control", ed escluso "Autorizzazioni speciali" * Volendo credo che possiamo togliere ogni altra cosa a parte la entry per "Domain admins" * Aggiungiamo se serve "Domain users" senza "full control" ma con tutto il resto, o altro gruppo che deve usare lo share. * Dovremmo avere ottenuto una ACL Posix che suona piu` o meno cosi` (users = domain users, hanno lo stesso ID, cosi` come root = administrator): {{{ getfacl documenti # file: documenti # owner: root # group: DOMINIO\134domain\040admins user::rwx user:root:rwx user:DOMINIO\134domain\040admins:rwx group::rwx group:users:rwx group:DOMINIO\134domain\040admins:rwx mask::rwx other::--- default:user::rwx default:user:root:rwx default:user:DOMINIO\134domain\040admins:rwx default:group::--- default:group:users:rwx default:group:DOMINIO\134domain\040admins:rwx default:mask::rwx default:other::--- }}} * Se vogliamo tentare di evitare il passaggio per windows, possiamo tentare con questi comandi: {{{ # configurazione di base con solo domain admins: chmod 770 documenti chgrp "domain admins" documenti setfacl -m g:"domain admins":rwx documenti setfacl -m d:g:"domain admins":rwx documenti setfacl -m d:"domain admins":rwx documenti setfacl -m "domain admins":rwx documenti # aggiunta dei permssi per domain users: setfacl -m g:"domain users":rwx documenti setfacl -m d:g:"domain users":rwx documenti }}} * Per finire, proviamo da Windows a creare files e directory sia come Administrator che come utente normale, e dovremmo in questo caso vedere che in ogni caso l'utente ha diritto di scrivere / leggere / cancellare files e directory create da Administrator (e` voluto). === Shares speciali === Per il momento, in attesa di fare prove personalmente, mi e vi rimando al sito di Samba.org: * https://wiki.samba.org/index.php/Anonymous_Share * https://wiki.samba.org/index.php/Setting_up_a_home_share