por que outros têm permissões de leitura por padrão em arquivos / pastas?

0

Tenho notado que em qualquer instalação padrão / padrão do * nix, quaisquer novos arquivos / pastas recebem automaticamente, no mínimo, read permissões em other .

Por que isso? Isso não é inseguro? Os sistemas * nix não devem fornecer permissões padrão para other por padrão? Isso não seria mais seguro?

Faz sentido que você queira que o user tenha acesso ao arquivo / pasta (duh) e é compreensível que group tenha acesso.

Mas qual é o benefício com other tendo acesso por padrão?

    
por IMTheNachoMan 07.12.2016 / 00:04

2 respostas

1

Um sistema operacional multiusuário como o Unix ganha mais benefícios com o compartilhamento de arquivos do que com a segurança, bloqueando tudo por padrão. Há um trade-off entre segurança e conveniência. Na prática, as configurações padrão são normalmente usadas bem e são um bom compromisso.

Você sempre pode tornar as permissões em uma pasta mais seguras. chmod 750 ./FOLDER dará permissões de Leitura, Gravação e Execução ao proprietário com as permissões 7, Ler e Executar para o grupo com o 5 e nenhuma permissão para o outro grupo.

Se você olhar para a pasta /etc/ , onde muitas configurações são armazenadas, as permissões permitem Ler e Executar para outras:

vagrant@host:~$ ls -ld /etc/
drwxr-xr-x 136 root root 12288 Dec  6 12:48 /etc/
vagrant@host:~$ 

A ideia aqui é que ele pode realmente ajudar a operação do sistema. Por exemplo, o servidor web apache, rodando como usuário apache , pode ler seus arquivos de configuração. No entanto, os arquivos de configuração são de propriedade de root, portanto, se um ator defeituoso se apossar do usuário do apache , essa conta não poderá criar novas permissões para si mesmo.

Os sistemas Linux (e Unix) são projetados para serem sistemas operacionais multiusuários. Ter outros usuários lendo arquivos por padrão é mais útil com mais frequência do que um problema de segurança. Às vezes você quer que os membros de uma equipe (seu grupo ) possam editar arquivos também; Assim, você define chmod g+rwx ./FOLDER , o que permite que membros do grupo editem arquivos nessa pasta.

O sistema de permissões é flexível o suficiente para ajustá-lo às suas necessidades. O Projeto de Documentação do Linux explica bem e tem ótimos exemplos. O Linux otimizado para segurança o estende ainda mais.

Eu sugiro que você dê uma olhada no unix.stackexchange.com, em particular, na tag marcada "Permissões", em que várias perguntas são respondidas com bons detalhes. Em particular:

  1. Como funcionam as permissões de diretório no Linux?
  2. Como definir permissões de arquivo padrão para todas as pastas / arquivos em um diretório?
por 07.12.2016 / 01:06
0

Os programas que criam novos arquivos definem suas permissões. As permissões dadas a um arquivo recém-criado de um shell geralmente são restritas a rwxr-xr-x , que é o padrão umask na maioria Distribuições Linux.

Você pode editar seus scripts de login privados, como ~/.bashrc , ou% system_wide /etc/profile scripts, para editar esse padrão umask e dar a ele um valor mais restritivo. Mas na maioria das vezes não há problema em mantê-lo como está, pois é provável que você tenha todos os seus arquivos privados em seu diretório pessoal. Você só precisa verificar as permissões do seu diretório pessoal para bloquear usuários indesejados de listar ( r ) e percorrer ( x ) .

No meu sistema Linux, esse comportamento padrão é definido em /etc/profile :

# 077 would be more secure, but 022 is generally quite realistic  
umask 022
    
por 30.12.2016 / 17:48