Qual é a configuração padrão de propriedade / permissões para userdirs do Apache?

2

Ao habilitar userdirs (ou seja, ~ / public_html) no apache, qual é a maneira padrão de configurar a propriedade e as permissões do meu diretório public_html? Idealmente, gostaria de dar permissão ao servidor apache para fazer o que quiser nesse diretório sem tornar a coisa toda mundial gravável. Existe uma maneira padrão de fazer isso?

Se a solução envolver a definição de propriedade ou permissões específicas, como posso garantir que todos os novos arquivos criados nesse diretório recebam automaticamente as permissões apropriadas?

    
por Ryan Thompson 07.08.2010 / 19:01

2 respostas

3

Normalmente, em um sistema multiusuário, basta definir o diretório como executável e deixar todos os arquivos dentro do diretório legível para o público.

Se você mesmo executar o servidor, terá a capacidade de definir o grupo para o mesmo grupo que o grupo Apache e definir o grupo de diretórios gravável. Além disso, você desejaria o SGID, de modo que qualquer coisa criada no diretório herda a propriedade.

chmod 2771 /path/to/public_html/incoming

    
por 07.08.2010 / 19:08
1

Se as ACLs estiverem disponíveis, colocar o seguinte em /etc/cron.daily/public_html garantirá que o usuário do sistema www-data tenha acesso total a todas as pastas public_html:

#!/bin/sh

HOME_DIR="/home"
WWW_DIRNAME="public_html"
WWW_USER="www-data"

setfacl -Rm "u:${WWW_USER}:rwX,d:u:${WWW_USER}:rwX" "$HOME_DIR/*/$WWW_DIRNAME"
    
por 28.04.2011 / 10:52