![É seguro alterar o proprietário da pasta html/ no Apache?](https://rvso.com/image/1127594/%C3%89%20seguro%20alterar%20o%20propriet%C3%A1rio%20da%20pasta%20html%2F%20no%20Apache%3F.png)
Eu sei como usar chmod e outras coisas, então essa não é a questão. Eu tenho um pequeno servidor (Ubuntu LTS) rodando com Apache com a pasta padrão em /var/www/html/
. Por padrão, root é o proprietário da html/
pasta.
Pergunta: É seguro alterar o proprietário da html/
pasta?
Responder1
É perfeitamente seguro alterar a propriedade dos arquivos /var/www
e, de fato, qualquer coisa nessa pasta é sua para editar e alterar como desejar.
Por exemplo, se o usuário tsmith
precisar gravar em arquivos, /var/www/myweb
é perfeitamente adequado definir o proprietário desses arquivos como tsmith
. Ou, se preferir, mantenha o proprietário como root
e exija tsmith
o sudo para escrever para ele - se você confiar nele com o sudo.
Se você tiver vários usuários que precisam editar os arquivos e não quiser fornecer sudo a eles, você pode alternativamente usar a associação ao grupo, por exemplo, criar um grupo e adicionar usuários a esse grupo e, em seguida, definir a propriedade do grupo e o grupo grave nos arquivos relevantes para permitir que os membros desse grupo modifiquem esses arquivos. Ao fazer isso, você provavelmente desejará usar o bit SetGID ( chmod g+s dir
) no diretório que o contém para garantir que os novos arquivos herdem a mesma propriedade do grupo e umask 002
em cada usuário ~/.profile
para garantir que eles obtenham permissão de gravação do grupo, caso contrário, quaisquer novos arquivos só serão editáveis por seus criador e não outros membros do grupo.
No entanto, você deve estar ciente das seguintes práticas inadequadas:
Não defina a propriedade de nenhum arquivo para o
www-data
usuário ouwww-data
grupo se você estiver concedendo permissões de gravação ao grupo. O ponto principal dowww-data
usuário é que ele é um usuário sem privilégios, incapaz de gravar em nenhum arquivo. Os daemons de servidor acessíveis a partir da rede externa (como o servidor web) normalmente são executados como um usuário sem privilégios, de modo que, no caso de serem hackeados devido a uma vulnerabilidade, as coisas possíveis que o invasor pode fazer sejam mínimas.Exceção: alguns aplicativos da web exigem acesso de gravação a determinados arquivos e pastas para implementar coisas como armazenamento de anexos, etc.
www-data
APENASpara esses arquivos, mantendo o número de arquivos graváveis nowww-data
mínimo.Pela mesma razão, não defina nenhum arquivo para ser gravável mundialmente.
Se estiver criando grupos, não reaproveite grupos de usuários existentes como
admin
,sudo
ou especialmentewww-data
, que já têm finalidades no Ubuntu, pois isso pode reduzir a segurança do sistema se esses grupos não foram planejados para serem capazes de gravar em arquivos. Em vez disso, crie seus próprios grupos e adicione membros a eles.
Responder2
Não é muito seguro usar diretórios ou arquivos com permissões de root (seja propriedade ou permissões únicas). Para arquivos HTML estáticos não seria um grande problema de segurança, mas assim que houver scripts em execução (PHP, JavaScript, qualquer formulário e assim por diante), você poderá ter sérios problemas.
Responder3
Se você só precisa servir conteúdo (html, imagens, etc), não há necessidade de definir uma propriedade especial para os diretórios/arquivos em /var/www
, desde que o usuário apache2 ( www-data
) tenha permissão para acessar o conteúdo.
Caso precise fazer mais, pode ser necessário modificar as propriedades. Por exemplo, se você precisar fazer upload de arquivos de um CMS (como WordPress, Joomla, etc.), você precisará alterar a propriedade do diretório de upload para www-data
(ou pelo menos conceder permissões de gravação a esse usuário)
Eu pessoalmente /var/www
possuo root
um usuário com mod 1777
(o mesmo que /tmp
) e os /var/www/site1
diretórios de sites (ou seja:) de propriedade de www-data
.
Espero que ajude!