Usuário por host virtual no Nginx

29

É possível no nginx configurar um usuário diferente por host virtual?

Algo como

 server {
     user myprojectuser myprojectgroup;
     ...
 }
    
por Alex Netkachov 18.03.2012 / 02:12

2 respostas

8

Não, porque todas as sub-rotinas do servidor em uma configuração nginx são atendidas a partir do mesmo conjunto de processos de trabalho. Além disso, do ponto de vista de segurança, você é melhor para executá-lo assim, pois significa que o conteúdo é automaticamente regravável pelo servidor web (ausência de idiotices como chmod -R 0777 ), de modo que se houver é uma vulnerabilidade no nginx, nenhum conteúdo está em risco.

    
por 18.03.2012 / 02:16
5

Em resposta ao comentário de Ivan acima e que parece aplicável ao OP. Duas coisas:

  1. A raiz do documento do aplicativo seria algo como /blah/peterWeb/html e /blah/johnWeb/html . Tanto o NGINX quanto o Apache2 não permitiriam a leitura ou operação no outro diretório, mesmo se ambos executassem www-data como grupo.

  2. Colocar cada árvore de diretórios sob sua própria permissão de usuário permitiria que cada usuário fizesse ssh / login em um sistema UNIX e mantivesse seus diretórios privados para cada um - apenas não coloque cada usuário no grupo de dados www. Se você concorda, então sua frase:

    every user that can serve a PHP script or a cgi-bin process can access any file accessible to the www-data user.

    pode ser mais bem escrito como:

    every user that you put in the same group as the apache/nginx server (www-data) can then do whatever they want (including running a php script) in any file that is accessible to it (which would essentially be everything on a web server).

EDIT 1: Tendo que resolver alguns problemas de administração do servidor, eu olhei mais para este tópico. Eu não sabia quão precisas eram as informações de Ivan! Se você pretende dar aos usuários a capacidade de fazer upload e executar scripts em uma configuração de hospedagem compartilhada, observe. Aqui está uma abordagem . Sugestão de Hat para Ivan para me certificar de que compreendi esta vulnerabilidade.

    
por 04.06.2014 / 21:27