Protege os conjuntos de propriedade / permissão de arquivos para arquivos diferentes em / var / www

1

Estou tentando estabelecer um conjunto de padrões de propriedade / permissão segura para / var / www no meu servidor. A propriedade é apache ou não-apache e as permissões são qualquer coisa de 000 a 777.

Aqui está minha primeira tentativa. Eu não me considero um administrador de servidor, ou segurança qualificada, então estou procurando por sugestão, feedback e correções.

/uploads/ Directories apache:666
( So apache and devs can read/write, but not execute? )

PHP files not-apache:665
( so anybody can exec, but only devs can change? )

.htaccess files, and maybe JS and CSS? not-apache:664
( apache can only read, devs can change? )

    
por Robert Kuykendall 18.08.2010 / 18:38

1 resposta

1

O primeiro não funcionará - você precisa ser capaz de executar um diretório para abri-lo (isso é o que a execução faz em um diretório unix).
Eu recomendaria adicionar usuários diferentes a grupos relevantes (por exemplo, desenvolvedores) e dar "qualquer um" sem permissão ou somente leitura (por isso, defina a última parte como 0). Se você tiver apenas um grupo relevante, altere o grupo da pasta para esse grupo e defina as permissões recursivamente para fazer o que você precisa. Alternativamente, se você estiver em uma distro baseada em RedHat com acl habilitado, olhe em setfacl - ele permite que você dê permissões específicas em arquivos / pastas para usuários / grupos. Dois exemplos abaixo:
setfacl -m user:john:r-x someFile.php
setfacl -m user:michael:--- michael_mustnt_read.txt
setfacl -R -m group:devs:rwx scripts/ - permite que os desenvolvedores tenham permissões totais dentro deste diretório.
setfacl -d -R -m group:devs:rwx scripts/ - o mesmo que acima, mas não faz alterações em arquivos existentes, define as permissões por padrão em novos arquivos.

    
por 18.08.2010 / 18:46