Risco de segurança ao usar um usuário para todos os clientes de hospedagem compartilhada?

Risco de segurança ao usar um usuário para todos os clientes de hospedagem compartilhada?

Atualmente configurei meu VPS CentOS 6.6 para clientes que hospedam sites em meu servidor. Eles têm acesso FTP usando um usuário virtual (com vsftpd como usuário real) que está chroot em sua pasta www. Seus e-mails são armazenados na pasta inicial do vmail, categorizados por domínio e usuário (virtual).

Em retrospecto, vejo que isso foi bastante desajeitado. Teria sido mais fácil e provavelmente melhor usar usuários reais para todos os meus clientes, redirecionar sua pasta pessoal para dentro de /var/www e armazenar seus e-mails lá também. Provavelmente deveria proibir o PHP de deixar o diretório inicial do usuário também (não tenho certeza de como).

Existe algum risco envolvido na minha configuração? Um invasor que comprometeu o usuário X poderia facilmente comprometer o usuário Y? Seria sensato mudar para a configuração proposta? Isso vai levar dias, não tenho certeza se vale a pena o esforço...

Estou executando Apache, MySQL, PHP, Postfix, Dovecot, VSFTP.

Responder1

Para a ameaça específica de um usuário poder acessar os arquivos de outro usuário, executar todos os "usuários" no mesmo contexto de segurança como está agora é mais provável e, portanto, mais arriscado.

Existem sutilezas aqui porque a outra configuração terá outras ameaças que talvez a versão chroot não tenha, no entantochroot não é um recurso de segurança.

Provavelmente se resumirá a qual seria o impacto se um usuário obtivesse acesso aos dados de outro usuário, o que determinará o risco. Se o impacto for baixo então pode não valer a pena mudar tudo, mas de acordo com as boas práticas para salvaguardar a confidencialidade “deveria” ser mudado? Provavelmente.

informação relacionada