Com qual usuário devo executar servidores web, redis e mongodb?

8

Neste VPS existem três usuários: root, another_one, nobody. Todos os arquivos do servidor web, configurações e & c. são de propriedade de root . No entanto, estou em dúvida quanto ao funcionamento das coisas. Se eu usar root para o servidor web, eu posso expor o sistema a falhas de segurança, ao passo que, se eu tentar entrar no nobody , ele me perguntará uma senha que eu nunca configurei e não sei. Devo criar outro usuário?

Por enquanto só tenho certeza sobre o nginx: Eu o executo como root e ele gera processos como ninguém. Mas e os servidores web e outros serviços como db e redis?

Nota: eu devo mencionar que o another_user pode sudo, então não é diferente do root.

    
por rubik 20.07.2013 / 10:28

2 respostas

9

Eu sempre executo serviços com um usuário dedicado. Então, eu criaria esses usuários:

  • nginx
  • mongo
  • apache
  • mysql
  • redis

Você nunca deve executar os serviços reais como root!

Geralmente, ao instalar esses aplicativos usando o gerenciador de pacotes de distribuição, como parte da instalação, um usuário será criado automaticamente para cada um desses serviços.

Eu normalmente uso o CentOS / RHEL e quando eu instalo coisas como o Apache, o usuário "apache" é criado automaticamente nesse ponto. O mesmo acontece com o MySQL e o Nginx.

    
por 20.07.2013 / 13:55
1

Você está certo em hesitar em executar serviços como root. Você será melhor criar usuários separados para o servidor da web. Não faria mal também ler sobre a propriedade de arquivos e a discussão de permissão em link

    
por 20.07.2013 / 20:30