Permissões do Samba sendo ignoradas

3

Eu defini o seguinte compartilhamento no smb.conf

[development_server]
    comment = Development directories
    path = /sites
    writeable = yes
    valid users = @dev
    guest ok = no
    directory mask = 0775
    create mask = 0775

O problema é que sempre que eu crio um arquivo dentro do Windows, as permissões desse arquivo são definidas como 764, em vez de serem definidas como 755. No entanto, os diretórios estão definidos corretamente com 775. Estou confuso. Tentei definir o seguinte:

[global]
    unix extensions = yes

Mas isso também não ajudou.

    
por nullReference 18.11.2014 / 01:32

3 respostas

3

O problema acabou sendo as configurações do modo de segurança dentro da minha configuração (ou falta dela). A seguinte configuração do smb.conf agora está funcionando para mim e todos os usuários dentro do meu grupo de segurança "dev" agora têm 775 para todos os arquivos que eles criam dentro do compartilhamento:

[development_server]
    comment = Development directories
    path = /sites
    writeable = yes
    valid users = @dev
    guest ok = no

    create mask = 0775
    force create mode = 0775
    security mask = 0775
    force security mode = 0775

    directory mask = 0775
    force directory mode = 0775
    directory security mask = 0775
    force directory security mode = 0775

Encontrei esta solução enquanto procurava askubuntu

    
por 18.11.2014 / 04:10
1

create mask só pode ser usado para impedir que um bit de permissão seja definido, pois a máscara é bit a bit AND ed com os bits que o cliente tentou definir. Se a máscara está definida para 7, mas o cliente tenta algo menos, por ex. 6, o cliente "ganha" como 0 AND 1 para o bit de execução é 0 .

force create mask funciona ao contrário, será bitwise OR a máscara para o que o cliente tenta definir, por isso, se você definir um 7 aqui, cada bit terminará com x OR 1 , que é sempre 1 .

Para forçar o valor 0775 , independentemente do que o cliente tenta definir, você precisa combinar os dois:

create mask = 0770   (0000 would also work)
force create mask = 0775

Veja a documentação .

    
por 18.11.2014 / 02:00
0

Verifique o parâmetro obey PAM restrictions . Se ativado, o Samba criará arquivos com restrição de umask para determinado usuário.

    
por 24.07.2018 / 13:24