Arquivos criados pelo Samba sempre definem g + rwx quando o ACL é usado

1

Estou usando ACLs para habilitar o acesso rw aos usuários locais e do samba, e notei que as permissões do grupo estão sempre definidas como rwx.

Este é o ACL definido no diretório de teste:

ubuntu@server:/test$ getfacl .
# file: .
# owner: samba
# group: samba
user::rwx
user:samba:rwx
user:ubuntu:rwx
group::rwx
mask::rwx
other::r-x
default:user::rwx
default:user:samba:rwx
default:user:ubuntu:rwx
default:group::rwx
default:mask::rwx
default:other::r-x


Arquivos criados via Samba resultarão em -rw-rwxr--+ :

ubuntu@server:/test$ ls -l
total 0
-rw-rwxr--+ 1 samba samba 0 Feb 19 03:40 file1


Para isolar o problema, defini create mask = 0000 on smb.conf :

/etc/samba/smb.conf:

[Share]
path = /test
browseable = yes
guest ok = yes
read only = no
map archive = no
create mask = 0000

ubuntu@server:/test$ sudo systemctl restart smbd.service

*Create file2 via Samba*

ubuntu@server:/test$ ls -l
total 0
-rw-rwxr--+ 1 samba samba 0 Feb 19 03:40 file1
----rwx---+ 1 samba samba 0 Feb 19 03:41 file2


Nós podemos descobrir que não é o ACL se comportando mal criando um arquivo sob o usuário do samba:

ubuntu@server:/test$ sudo -u samba touch file3
ubuntu@server:/test$ ls -l
total 0
-rw-rwxr--+ 1 samba samba 0 Feb 19 03:40 file1
----rwx---+ 1 samba samba 0 Feb 19 03:41 file2
-rw-rw-r--+ 1 samba samba 0 Feb 19 03:42 file3

Então, podemos ver aqui, é o samba que está configurando g + rwx.


O problema desaparece depois de desativar a ACL:

ubuntu@server:/test$ sudo setfacl -b /test
ubuntu@server:/test$ sudo getfacl .
# file: .
# owner: samba
# group: samba
user::rwx
group::rwx
other::r-x

*Create file4 via Samba*

ubuntu@server:/test$ ls -l
total 0
-rw-rwxr--+ 1 samba samba 0 Feb 19 03:40 file1
----rwx---+ 1 samba samba 0 Feb 19 03:41 file2
-rw-rw-r--+ 1 samba samba 0 Feb 19 03:42 file3
---------- 1 samba samba 0 Feb 19 03:43 file4


Então, é correto concluir que com o ACL ativado, o samba definirá g + rwx? É um bug, ou eu perdi alguma coisa?

Eu vasculhei os documentos do samba e tentei todas as opções relevantes para as permissões: criar máscara, forçar o modo de criação, herdar permissões, mapear arquivo, oculto, somente leitura, sistema e estou com prejuízo do que mais poderia estar causando isso.

    
por loongyh 18.02.2017 / 20:38

0 respostas

yii\base\ErrorException
Copied! Copy Stacktrace Search Stackoverflow Search Google Error

PHP Core Warningyii\base\ErrorException

PHP Startup: Unable to load dynamic library 'memcached.so' (tried: /usr/lib/php/20190902/memcached.so (/usr/lib/php/20190902/memcached.so: undefined symbol: igbinary_serialize), /usr/lib/php/20190902/memcached.so.so (/usr/lib/php/20190902/memcached.so.so: cannot open shared object file: No such file or directory))

$_GET = [
    'id' => '758464',
    'url' => 'files-created-by-samba-always-sets-grwx-when-acl-is-used',
];

$_COOKIE = [
    'advanced-frontend' => '012mr88v6046fprve0fjifghrk',
    '_csrf-frontend' => '92f3b9ecb49f93e37a43608c0e86a5debaad50cf6e9e2ebbf6e9179668e3d8cea:2:{i:0;s:14:"_csrf-frontend";i:1;s:32:"gliKic9z2Nq-Sfyd38pizdJU4XafxRwo";}',
];

$_SESSION = [
    '__flash' => [],
];