well I'm aware that apache runs under apache but I think the question is how to give more permissions to apache so it can execute all these commands
a maneira típica de fazer isso é conceder acesso sudo
ao apache com NOPASSWD. você vai querer ser excessivamente cauteloso com isso, porque isso pode ser extremamente perigoso se for mal configurado. algo como
apache ALL=(ALL) NOPASSWD: killall horas
pode funcionar. Você também pode querer escrever a coisa toda como um script "wrapper" e, em seguida, apenas conceder acesso ao apache sudo para esse script. (outra resposta também recomenda isso.)
lembre-se de que você está concedendo ao apache a escalação de privilégios AND de execução. isso é potencialmente uma exploração remota em nível de raiz. teste seus scripts antes de implantá-lo e certifique-se de investigar o acesso seguro à página com a autenticação básica e / ou o IP permite. você também pode ser mais bem servido investigando soluções alternativas. o apache realmente precisa gerenciar seu resolv.conf? poderia um cronjob executar o killall
?