Qual é a maneira correta de configurar a raiz do documento do Apache em termos de privilégios?

5

Acabei de instalar o Ubuntu 9.10 server edition em minha máquina e gostaria de executar meu próprio servidor local pessoal com outros usuários na mesma LAN.

Primeiro, queria saber qual estrutura de diretórios de pasta é melhor para a raiz da Web?

Devo usar apenas:

/var/www/ 

e começar a jogar documentos da web lá ou devo criar uma pasta em outro lugar (talvez o diretório inicial)?

Em segundo lugar, no

/var/www/

diretório apenas o usuário root pode criar documentos lá, no entanto, eu desejo que outros usuários possam criar arquivos na raiz do documento e enviá-los via FTP. Devo alterar as permissões ou a pasta www/ ? Ou, novamente, devo criar o documento raiz em outro lugar com permissões diferentes? Qual é a maneira mais segura de fazer isso?

    
por user41157 26.04.2010 / 01:44

2 respostas

2

Eu não concordo com a Warner aqui, para um site single use /var/www , mas para algo mais complexo eu crio subdirites em /srv/www

Da sua pergunta, o guia básico é:

  1. aptitude install apache2
  2. chmod g+w /var/www
  3. adduser USER www-data (para cada usuário)

Em seguida, os usuários devem usar o SCP (por favor, não use o FTP) para fazer o upload dos arquivos. Se eles querem um cliente GUI, então olhe para o FileZilla.

    
por 26.04.2010 / 05:11
0

Normalmente, para servidores que atendem apenas a alguns grandes sites dedicados em função, como em um ambiente de TI profissional, eles estariam contidos em /var/www .

Eu criaria subdiretórios para cada site separado. Por exemplo:

/var/www/example.com
/var/www/testing.com
/var/www/anotherexample.com

O que você está descrevendo é mais parecido com um ambiente de hospedagem compartilhada. Com um servidor compartilhado, eu normalmente configuraria os sites de cada usuário dentro de seus diretórios pessoais em public_html. Se eles tivessem vários domínios, eu seguiria uma convenção semelhante à anterior, mas dentro desse diretório. Eu também separaria os ErrorLog e CustomLog em seu diretório inicial, mas fora da árvore da Web.

SuExec ee mod_suphp também seria aconselhado a impedir que os dados dos usuários fossem expostos a outros usuários no sistema e a limitar o escopo de vulnerabilidade de sites de qualquer usuário.

Se os usuários não tivessem domínios, você poderia usar subdomínios dentro de um domínio principal ou mod_userdir .

Se você preferir não adotar uma abordagem mais organizada, sugiro usar subdiretórios, grupos e o bit SGID em / var / www. No entanto, essa não seria a abordagem ideal em quase todas as situações.

    
por 26.04.2010 / 03:41