Apache e gerenciamento de usuários no Ubuntu

1

Eu tenho o Ubuntu 10.1 instalado e configuro o Apache2.

Vou hospedar cerca de 4 a 5 sites nessa máquina, por isso preciso ter um usuário que controle arquivos / permissões para cada site.

Eu adicionei um usuário chamado 'site1' para controlar o site1.com.

Eu sei que devo alterar a pasta raiz na configuração do meu apache para ser / home / site1 para site1.com

Mas o servidor apache é executado no usuário www-data, que não poderá executar em ações em / home / site1.

Como adiciono permissões para www-data nas pastas necessárias?

Obrigado,

    
por James D 21.11.2010 / 00:53

2 respostas

1

Aqui está como eu faria isso. Faça o seguinte como root (assumindo que o site1 user e o diretório home já foram criados):

cd /home/site1
mkdir -m 0770 public_html
chown site1:www-data public_html
chmod g+s public_html

Isso cria o diretório public_html e torna-o legível e gravável pelo grupo www-data . Isso deve permitir que o Apache tenha acesso total a ele. Quaisquer arquivos ou diretórios criados lá também pertencerão ao grupo www-data , porque o bit SGID está definido no diretório.

Crie /home/site1/public_html do diretório raiz de site1.com em sua configuração do Apache. Eu sinto que é melhor colocar a raiz da web em um subdiretório de /home/site1 , em vez de em /home/site1 , para manter os dotfiles do usuário site1 e outros bric-a-brac potencialmente sensíveis fora de lá.

    
por 21.11.2010 / 01:30
0

Se eu estou fazendo isso certo, você precisa mudar o dono do

/home/site1

para www-data?

Se sim, você pode executar:

sudo chown -R www-data:www-data /home/site1
    
por 21.11.2010 / 01:10