Problemas de permissão FTP e Apache

10

Estou tendo problemas sobre qual usuário deve possuir meu diretório www - ftp ou apache? Quando configurado para o usuário ftp, o usuário pode adicionar, remoer e modificar facilmente os arquivos, mas as ações do sistema de arquivos php geram erros de permissão negada (é claro, porque eles exigem que o usuário seja o apache). Se, no entanto, o diretório www for chown para o apache, o ftpuser não poderá realizar algumas ações como modificação e exclusão de arquivos. Alguém já encontrou um problema semelhante? Qual a correção? Obrigado

    
por ray 25.09.2010 / 04:11

3 respostas

11

É para isso que os grupos são.

Você pode adicionar o usuário ftp ao grupo apache e vice-versa. Ou, melhor ainda, você poderia adicioná-los a um terceiro grupo criado especificamente para essa finalidade.

por exemplo,

# groupadd mygroup
# useradd -G mygroup ftp
# useradd -G mygroup apache
# chown -R :mygroup /var/www
# chmod -R g+rw /var/www

Esses comandos fazem o seguinte:

  1. Cria um novo grupo 'mygroup'
  2. Adiciona o usuário do ftp ao mygroup
  3. Adiciona o usuário do apache ao mygroup
  4. Concede de forma recursiva a propriedade do grupo ao conteúdo de / var / www / to mygroup
  5. Concede de forma recursiva read & escrever perms para o conteúdo de / var / www /

Você só precisa se certificar de que os arquivos adicionados no futuro pertençam ao grupo 'mygroup' e tenham as permissões apropriadas para que o apache e o ftp os leiam / gravem.

    
por 25.09.2010 / 04:23
4

A maior parte do seu conteúdo deve pertencer a um usuário que não seja o apache. Supondo que você use o FTP para atualizar seu conteúdo, você pode configurar todos os arquivos de propriedade do ftp: apache. Eu sugiro usar SCP para SFTP em vez de ftp. Os arquivos devem ter permissões 644 ou 640 e as permissões de diretórios 755 ou 750.

Para arquivos e diretórios, o aplicativo precisa gravar para adicionar acesso de gravação de grupo.

    
por 26.09.2010 / 03:26
0

Eu tive um problema semelhante com uma página PHP construída que copiaria uma pasta no servidor com um nome diferente. Eu consertei desligando o modo de segurança do php.

    
por 03.11.2011 / 22:42