Você pode adicionar permissão setuid a esse binário e alterar a propriedade para intelmq.
chmod u+s /usr/bin/intelmqctl
chown intelmq /usr/bin/intelmqctl
Em seguida, você pode executar esse executável com a propriedade de processo do intelmq.
Eu criei um usuário chamado intelmq
, que tem permissões para executar um programa chamado intelmqctl
. Em seguida, criei um usuário chamado apache
e gostaria que apache
executasse intelmqctl
como o usuário intelmq
. Eu adicionei as seguintes linhas ao arquivo sudoers
:
Defaults:apache !requiretty
apache ALL=(intelmq) NOPASSWD: /usr/bin/intelmqctl
No entanto, toda vez que eu tento executar o seguinte comando como usuário apache
o retorna isso:
: sudo -u apache sudo -u intelmq /usr/bin/intelmqctl --type json stop abusech-ip-parser
saída:
Sorry, user apache is not allowed to execute '/bin/sudo -u intelmq /usr/bin/intelmqctl --type json stop abusech-ip-parser' as apache on localhost.localdomain.
Estou usando o CentOS 7 e sou muito novo neste sistema.
Eu não sei se isso ajuda, mas aqui estão os passos que eu fiz para instalar intelmqctl
e o problema em si melhor explicado, talvez eu tenha falhado algo durante a instalação: link
Se eu tentar executar sudo -iu apache
como root
, ele será alterado para apache
user e, se eu executar o comando sudo -u intelmq /usr/bin/intelmqctl
, ele funcionar, ele mostrará todas as opções para executar intelmqctl
.
No entanto, se eu executar o comando sudo -iu apache
como o usuário apache
, ele retornará: Sorry, user apache is not allowed to execute '/bin/bash' as apache on localhost.localdomain.
Você pode adicionar permissão setuid a esse binário e alterar a propriedade para intelmq.
chmod u+s /usr/bin/intelmqctl
chown intelmq /usr/bin/intelmqctl
Em seguida, você pode executar esse executável com a propriedade de processo do intelmq.