A pasta base possui permissões somente leitura de 'todos'

11

Acabei de perceber que minha pasta pessoal ( / HD / Usuários / Bob ) tem todas as permissões 'ReadOnly' definidas no nível raiz.

Se eu procurar nesta pasta a partir de outra conta, posso ver as pastas, mas não tenho permissão para abrir as pastas padrão do OS X (área de trabalho, documentos, músicas, filmes, etc ...). No entanto, criei algumas pastas no nível raiz da minha pasta pessoal, e essas SÃO acessíveis a esse outro usuário. Eles podem abrir pastas e abrir alguns dos documentos com acesso somente leitura.

Alguém mais está vendo isso? Essa é uma configuração padrão ou o meu Mac está ferrado? Parece uma falha de segurança para permitir que os usuários acessem arquivos de outros usuários no sistema.

Estou executando uma compilação bastante limpa do Yosemite 10.10.1 - isso foi instalado há cerca de um mês. Eu restaurei meus arquivos antigos de um disco rígido. Eles não foram restaurados via Time Machine

slidmac07
fonte

Respostas:

2

Esta é a configuração de permissões padrão. A raiz da sua pasta pessoal é a leitura global, mas as pastas padrão do OS X, como Desktop e Documentos, devem ter acesso global. Sinta-se à vontade para definir as permissões de outras pastas criadas na raiz da sua pasta pessoal para corresponder às permissões nas pastas padrão.

Se você deseja que novas pastas, por padrão, sejam globais sem acesso, altere as permissões na raiz da sua pasta pessoal, propague as permissões recursivamente e configure ACLs para herdar permissões para novas pastas; no entanto, não tenho certeza sobre os efeitos, pode ter.

grg
fonte
11
Isso é tão interessante .. alguma idéia de por que é assim? parece uma configuração estranha.
Slidmac07 01/01
Portanto, antes de postar aqui, alterei o acesso no nível raiz e propaguei para baixo. Definitivamente, estragou meu computador e eu aconselho as pessoas a NÃO alterar as ACLs aqui. Após a restauração de um backup, eu decidi mudar todos os diretórios não-Apple em pastas específicas da Apple
slidmac07
@ slidmac07 A menos que você tenha certeza absoluta de que sabe o que está fazendo, a alteração / propagação recursiva das permissões pode ser perigosa, como você descobriu.
Douggro 01/01
11
@ganbustein: no UNIX pré-ACL normal, um diretório somente de execução é "atravessável", mas não legível; o bit de leitura é necessário para realmente listar os arquivos em um diretório. // Sim, um bandido pode investigar todos os nomes possíveis, mas qualquer sistema decente de detecção de intrusões detectará esse padrão de acesso e sofrerá uma falta em breve. // Boas práticas de segurança podem tornar o diretório inicial ~ passível de ser percorrido (somente execução) (idealmente apenas para ~ / Público, etc.), ~ / Público legível por todos e todos os outros arquivos em ~ não podem ser lidos ou percorridos por todos por padrão , incluindo novos arquivos.
Krazy Glew
11
Se todo o argumento estiver tornando ~ / Public acessível, eu preferiria ter o diretório Público fora do diretório do usuário, por exemplo, mkdir / Users / Shared / <username> para cada usuário.
amdyes
5

Se você deseja que novas pastas no nível superior da sua pasta pessoal, por padrão, não sejam legíveis por ninguém, exceto você, adicione as duas ACLs a seguir à sua pasta pessoal. NÃO PROPAGUE PERMISSÕES. A primeira ACL torna todas as novas pastas ilegíveis, graváveis ​​e inacessíveis a todos. A segunda ACL faz uma exceção para você. Certifique-se de inseri-los nesta ordem, para que a segunda entrada possa se empurrar para a frente.

chown +a "group:everyone deny list,add_file,search,add_subdirectory,delete_child,directory_inherit,limit_inherit,only_inherit" ~
chown +a# 0 "user:$USER allow list,add_file,search,add_subdirectory,delete_child,directory_inherit,limit_inherit,only_inherit" ~

Mas, verdade seja dita, é mais fácil corrigir as permissões em todas as subpastas criadas diretamente na sua pasta pessoal. Quero dizer, não é como se você fosse fazer isso com frequência, certo?

Além disso, quem pode dizer que você deseja que essas novas pastas sejam legíveis apenas por você? E se você quiser uma pasta legível por grupo para algum grupo, mas não legível em todo o mundo? Essas ACLs herdadas apenas atrapalharão o seu caminho.

Criar uma pasta na parte superior da pasta inicial deve ser um evento raro. Soluções ad hoc são melhores para eventos raros.

ganbustein
fonte
2
No entanto, alguns chegaram ao MacOS a partir do UNIX e / ou Linux, onde a criação de uma pasta ou arquivo na parte superior da pasta pessoal é um evento comum. Essas permissões padrão do Mac nos estragam, se continuarmos a trabalhar como se estivéssemos em um sistema UNIX normal.
Krazy Glew
1

Uau, fiquei bastante chocado quando percebi isso.

Outra solução é bloquear o diretório inicial para todos os outros:

chmod 700 ~

ManuelSchneid3r
fonte
Que, como já foi dito um ano antes, faz um mentiroso fora do nome do ~ / Public
WGroleau