Várias instâncias do Apache – problemas de permissão

Várias instâncias do Apache – problemas de permissão

Estou com uma situação estranha aqui... configurei várias instâncias do Apache no debian:

  1. A instalação padrão é deixada como está - mas desativada e interrompida
  2. Uma instância personalizada (apache2-apps)

A ideia era executar cada instância como usuários distintos - o apache padrão executaria aplicativos de terceiros (WordPress, Drupal, OpenCart, etc.)

A segunda seria executar nossos aplicativos internos personalizados que funcionam com dados altamente proprietários...

A ideia/esperança por trás dessa configuração era isolar os aplicativos do software do site - sem recorrer a uma VM (como já estou executando uma) e com configuração um pouco mais fácil e segura? então Apache VirtualHost e/ou PHP CGI

De qualquer forma... o problema que estou encontrando é que o diretório /var/www precisa de:

1. 755 permissions which make it readable by OTHER
 --- OR ----
2.I need to make www-data or www-apps an owner or group of this base directory.

Minha estrutura de arquivos atual é a seguinte:

/var
  /www (user/group: webmin => RWXRWX--X)
    /applications (user/group: www-apps)
    /websites (user/group: www-data)

Esta configuração me deixaria acreditar que eu poderia configurar a instalação padrão do Apache para docroot o/var/www/sitese apache2-apps docroot o/var/www/aplicativos

Cada um com um usuário/grupo diferente (www-dadosewww-appsrespectivamente) isolando assim qualquer violação de segurança que possa ocorrer em sites públicos.

O problema que estou enfrentando é quando altero o docroot de cada instância do Apache para apontar para:

/var/www/applications
/var/www/websites

se eu remover "outras" permissões de leitura/exec em /var/www então 770 - o apache me dá um erro "Forbidden 403" ao acessar o URI mapeado para cada docroot listado acima. Não tenho certeza se entendi por que... o docroot de cada um acima tem 775 permissões

Alguém pode explicar por que estou enfrentando esse problema? O que não estou entendendo sobre como funcionam as permissões? Nenhuma configuração do Apache está apontando para /var/www, em vez disso, cada instância aponta para seu respectivo diretório um nível mais profundo.

Alex

Responder1

Ao acessar um diretório, todos os diretórios superiores também exigem pelo menos permissão de execução para esse usuário (ou grupo), caso contrário, o aplicativo não terá permissão para alternar para esse diretório ou diretório abaixo dele.

informação relacionada