Os 3 bits para permissões "outros" negarão todo o acesso se forem 000 (em binário) ou 0 (em octal, a base inserida numericamente em chmod) ou ---
conforme visualizado em ls -l
. Note que "todo o acesso" é relevante para o arquivo. A existência do arquivo ainda pode ser vista se o acesso ao diretório em que o arquivo está é permitido. Você pode usar chmod o-rwx filename
para remover permissões para outras pessoas, sem alterar a permissão para membros do grupo e proprietário.
Para que as permissões sejam configuradas atomicamente, isso pode ser feito no nível de programação ao executar programas com ligações de chamada do sistema. Caso contrário, defina o umask para o processo do shell com o comando umask
do shell, que é herdado pelos processos iniciados pelo shell. Os bits de umask que estão on farão com que os bits correspondentes nos arquivos criados sejam feitos 0. Esta é a maneira atômica que você está procurando e que não deixa nenhuma janela de oportunidade de exploração. Um umask de 022 normalmente daria aos arquivos uma permissão de 644 ( rw-r--r--
) e diretórios uma permissão de 755 ( rwxr-xr-x
). Um umask de 027 daria permissões de 640 ( rw-r-----
) e 750 ( rwxr-x---
).