Adicionando seu usuário ao /var/www


dica do site: https://loc4n.wordpress.com/2014/06/01/adicionando-seu-usuario-ao-varwww/

Se você tem um servidor dedicado, e está configurando o apache, mas sempre chega a aquele problema, o seu usuário não tem permissão para mecher na /var/www do apache ou na pasta onde os seus hosts virtuais estão configurados. Ai você parte ou para o chmod 777 ou para usar o root para trabalhar nesses arquivos. Saiba que, existe uma solução muito mais segura e não é tão difícil de ser implementada.

Apache Web Server

Vamos fazer isso através de um grupo de usuários, sem alterar o dono da pasta, que é root.

Antes de tudo, crie um grupo onde as pessoas que terão permissão para mecher na pasta do apache irão usar, como por exemplo webserver. Para isso:

addgroup webserver

Agora adicione todo mundo que terá permissão de acesso ao apache nesse grupo, para isso, basta repetir o comando abaixo para todos os usuários:

usermod -a -G webserver (usuário)

Para que todas as funcionalidades do apache funcionem corretamente, você tem que adicionar o usuário do apache no grupo também, o problema é que em cada distribuição o usuário do apache é chamado de uma forma diferente, normalmente é algo distinto, como por exemplo www-dataapache ou httpd.

Para saber qual é o seu, verifique o arquivo /etc/passwd que tem a lista de todos os usuários do sistema atrás do usuário do apache:

xzdweasd212No meu caso, o usuário do apache chamada http, adicionamos ele também ao grupo:

usermod -a -G webserver http

Existe também um usuário chamado nobody que pode ser útil para o apache, onde as vezes o apache utiliza ele para escrever arquivos no servidor, verifique se sua distribuição tem ele, se ele existir, adicione-o ao grupo também:

usermod -a -G webserver nobody

Agora que todo mundo está no grupo, vamos alterar a permissão da pasta do apache, aqui assumirei que você está utilizando a /var/www, porém, você pode utilizar qualquer pasta que o apache utilize como virtual host.

Primeiramente temos que definir que o grupo dono dessa pasta é o webserver, para isso, digite em um terminal:

chgrp -R webserver /var/www

E depois temos que definir que o grupo pode ler e escrever nessa pasta, aplicando as permissões de escrita para grupo, para isso, utilize o comando:

chmod -R 775 /var/www

Provavelmente você terá de deslogar e logar novamente para que as permissões tenham efeito, porém, todos os usuários do grupo webserver agora podem escrever na pasta do apache e sem comprometer o funcionamento do apache em si, de uma maneira completamente segura e sem chmod 777.

——

resumo:
addgroup <nomenovogrupo>
usermod -a -G <nome-usuário-a-ser-add> <nomenovogrupo>
chgrp -vR webserver  /caminho/dir
chmod -R 775 /caminho/dir

sudo chmod -R g+s /caminho/dir   #vai fazer com que os arquivos criados na pasta usem o grupo-dono-da-pasta

sudo chmod -R g+s-=rwx /caminho/dir   #vai fazer com que os arquivos criados na pasta usem o grupo-dono-da-pasta com permissão de grupo sempre rwx

sudo chmod -R u=rwXs,g=rwXs,o=rw /dir

mais dicas de controle de usuário: https://aoredordoburacotudoebeira.wordpress.com/2019/08/01/dicas-de-permissao-de-usuarios-grupos-e-diretorios/

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s