Como endurecer vhosts nginx (hospedagem WordPress) de outros usuários em instalações WP hackeadas

3

Visão geral:
Eu tenho uma dúzia ou mais de instalações WP hospedadas em um Ubuntu 14.04 LTS, com PHP 5.5.9 & Nginx 1.4.6. O MySQL é executado no nó alternativo, não na rede pública.

Meta:
Para ter diretórios & os arquivos de cada instalação do WP NÃO podem ser lidos pelo mundo. Se um usuário mal-intencionado obtiver acesso a uma determinada instalação do WP, não será possível navegar para uma instalação alternativa do WP e ler credenciais de banco de dados.

Detalhes:
O Nginx é executado como www-data. Um usuário, sem shell, é criado para cada vhost. Cada vhost suporta uma única instalação do WP. Os conjuntos PHP-FPM são executados especificamente para cada usuário / vhost. Conjuntos PHP-FPM conectam w / Nginx via socks, não o IP de loopback.

Lendo o seguinte artigo Wordfence , tentei definir o arquivo permissões da seguinte forma:
Arquivos - 640
Diretórios - 750

Quando configuro permissões desse tipo, o Nginx, executado como www-data, não pode mais acessar corretamente os arquivos WP. Se eu definir permissões de volta para 644 & 755 , tudo funciona conforme esperado.

Os sites são instalados na seguinte estrutura:
/var/www/site1.com/public
/var/www/site2.com/public
/var/www/site3.com/public

e assim por diante.

Cada diretório é de propriedade do usuário correspondente & grupo de usuários. ie:
site1-com: site1-com /var/www/site1.com

Tivemos um site do WP sendo invadido e eles puderam obter um script de gerenciador de arquivos php no servidor. Meu entendimento é que esse script está sendo executado pelo usuário www-data. (Verificado com ps aux ) Se isso for verdade, suspeito que o usuário mal-intencionado possa acessar todas as outras instalações do WP por meio de seu script de gerenciador de arquivos php.

Como posso melhorar minha configuração de permissão para proteger a segurança? Estou aberto a todas as sugestões, mesmo que isso signifique reconfigurar toda a instalação da pilha.

Obrigado antecipadamente.

    
por user2977468 16.08.2016 / 17:56

0 respostas