Reinicie rspamd.service como usuário não root

Reinicie rspamd.service como usuário não root

Tenho uma página da web com botão, quando o usuário clica no botão, o script restart.shno servidor é executado. Este script contém:

#!/bin/bash
systemctl restart rspamd.service

Após clicar no botão, restart.shé executado, mas rspamd.service não é reiniciado:"Falha ao reiniciar rspamd.service: acesso negado"Como o script é executado clicando no botão da página da web, o usuário real que o executa no servidor é www-data. Tentei definir o bit suid para executar o script como root, mas não está funcionando. Como posso reiniciar o rspamd.service como www-datausuário?

Responder1

Resolvido comsudo. Já tentei antes, mas escrevi na ordem errada. Editarsudoerscom visudoe adicione isto ao final do arquivo:

www-data ALL = NOPASSWD: /bin/systemctl restart rspamd.service

Então posso simplesmente correr sudo systemctl restart rspamd.servicee tudo correrá bem. Obrigado.

informação relacionada