Um monte de arquivos tem 777 permissões

3

Eu tenho aprendido scripts em Python e Bash, e até agora dei permissões aos meus scripts 777. Tendo aprendido mais sobre como definir permissões e sabendo que isso é uma má ideia, executei o seguinte comando (no Mac OSX, v10.6.8):

find / -type f -perm 0777

Eu estava esperando apenas obter uma pequena lista de arquivos que eu havia atribuído 777 permissões, mas em vez disso eu tenho uma lista enorme. (1.503 para ser exato). Estes incluem meu pequeno número de scripts, bem como todos os meus arquivos de imagem, arquivos html e css, código de exemplo que vem com ebooks, bem como arquivos relacionados a aplicativos como o Adobe Flash Catalyst, Smith Micro Anime Studio, algo chamado Microsoft Play Ready (suponho que isso faz parte do Silverlight) e outros.

Eu sou meio novo nisso, mas isso não é um problema? Algum arquivo tem 777 permissões?

    
por John Aten 16.03.2013 / 16:26

2 respostas

3

Realmente não é normal dar aos arquivos 777 permissão. Eu não consigo pensar em uma razão legítima para qualquer arquivo ter essa permissão, mas se existir, é melhor que tenha uma razão realmente boa.

Eu aconselho você a alterar essas permissões imediatamente.

  • No mínimo, remova a permissão de gravação de outras pessoas, com chmod -R o-w
  • Provavelmente você também deseja remover a permissão de gravação do grupo, com chmod -R g-w
  • Pessoalmente, eu realmente não gosto de ver arquivos de imagem / áudio / vídeo / documento com bits executáveis. Eu removeria esses também, com algo como find /path -name '*.png' -exec chmod a-x {} \;

No futuro, seja mais cuidadoso. É a segurança 101 para não dar mais permissões do que realmente necessário. Por exemplo, você pode começar definindo todos os arquivos para 0400 e todos os diretórios para 0500 e, em seguida, ver o que não está funcionando e gradualmente adicionar as permissões mínimas.

Qual é a saída de umask em seu sistema? Se for mais permissivo do que 0022 , acho que você pode querer incluir seu ~/.bashrc no comando umask 0022 . Isso tem o efeito de que novos arquivos criados por você não terão permissão de gravação para grupos e outros por padrão.

    
por 16.03.2013 / 19:04
1

permissão 777 não é necessária para todos os arquivos.

as permissões são: rwxrwxrwx, que são três grupos de "rwx" primeiro para o usuário proprietário, segundo para o grupo proprietário e terceiro para os outros.

777 é binário de 111 111 111, portanto: 777 - > rwxrwxrwx

outro exemplo: 760 - > rwxrw ----

se um arquivo não for executável, não é necessário conceder permissão de execução, como Ebooks.

e se você tem um programa executável como um script bash, e você não quer deixar que outros executem o script, o terceiro número da terceira parte deve ser zero, quero dizer: ??? ??? ?? 0

por exemplo, você quer que os outros leiam o seu script, mas você não os deixa escrever ou executar, então a permissão será: ??? ??? r-- = > ?? 4

    
por 16.03.2013 / 16:40