Segurança estrita e isolamento de host virtual com Nginx?

4

Atualmente tenho um servidor web Apache configurado no qual cada host virtual é isolado usando o HTTPD-ITK e o módulo AppArmor. Os funcionários de cada host virtual são setuid / setgid pelo servidor e, em seguida, são colocados em um perfil do AppArmor.

Estou procurando usar o Nginx, mas não consigo encontrar nenhuma documentação sobre como configurá-lo para que, em vez de os processos de trabalho serem compartilhados entre todos os hosts virtuais, os processos de trabalho sejam por host virtual (e assim podem ser setuid / setgid ). Existe alguma maneira de fazer isso no Nginx?

    
por June Rhodes 09.12.2012 / 02:48

2 respostas

0

Acabei resolvendo isso executando uma instância Nginx para cada site, além de um Nginx mestre que reverte os proxies em cada um dos sites. Isso é combinado com o PHP-FPM para fornecer PHP para os sites que exigem isso.

Eu coloquei um framework que lida com a geração de configurações do Nginx para tal configuração em um repositório do GitHub para qualquer um usar: link .

    
por 09.12.2012 / 11:55
1

O nginx é uma coisa completamente diferente do Apache (além de ser um servidor HTTP). Seu modelo é que o próprio nginx não possui "workers" onde algum aplicativo da web é executado dentro do processo.

O nginx basicamente faz "terminação frontend" para requisições http e, em seguida, passa o trabalho para um servidor backend que pode ser feito através de HTTP novamente ou protocolos específicos como FCGI, mod_passenger, etc.

Assim, não há necessidade de fazer o que você está fazendo com o Apache diretamente no nginx. Isso é uma característica: ele permite que a arquitetura geral seja muito mais simplificada e, no final, muito mais rápida e menos exigente em recursos, como CPU e memória.

    
por 09.12.2012 / 11:13