Configurações do usuário para monit? Deve ser executado como root ou como usuário?

2

Estou tentando instalar o monit em um servidor Ubuntu 12.04. Eu configurei e configurei (acho), mas não tenho certeza de qual usuário deve ser executado.

Meu usuário no servidor é chamado de deploy e meu arquivo monitrc é assim:

$ ls -l /etc/monit/monitrc
-rwx------ 1 deploy deploy 10229 2015-07-30 12:38 /etc/monit/monitrc

ou seja, é de propriedade do usuário que eu logar no servidor com. Eu comecei o daemon de monit, e eu posso vê-lo rodando com ps e eu posso logar na interface web dele.

O que eu não tenho certeza é como dar privilégios para reiniciar processos. Por exemplo, nginx: se eu quiser reiniciar o nginx eu preciso fazer

sudo /etc/init.d/nginx restart

Isso significa que o monit também precisa fazer o sudo para reiniciá-lo? Ou, devo configurar o monit com seu próprio usuário e configurar esse usuário para que ele possa reiniciar o nginx (e quaisquer outros serviços que o monit precise reiniciar ou acessar) sem o sudo?

obrigado, Max

    
por Max Williams 30.07.2015 / 16:12

1 resposta

4

Sim, o monit precisa executar o sudo ou estar em execução como usuário root. Configurar o monit como seu próprio usuário com as permissões corretas também é viável, mas é provavelmente o mais envolvido com as possíveis soluções.

Normalmente, executar o sudo a partir de scripts não é viável, pois solicitará uma senha. É possível parar o sudo solicitando uma senha em situações específicas editando /etc/sudoers . A resposta para este pergunta explica uma abordagem adequada.

    
por 30.07.2015 / 17:24