Executando um perl cgi como root com segurança * adequada *

Eu tenho a necessidade de executar um Perl cgi como root. Eu já entendo a maioria das preocupações de segurança, mas deixe-me explicar primeiro.

O Perl cgi pode ser executado como servidor da Web, mas exigiria acesso ao sudo para executar alguns comandos. Foi o que fiz primeiro, mas isso não apenas permite que o cgi execute esses comandos, mas todo o usuário que executa o servidor da web. Além disso, em vez de executar comandos com o sudo, eu preferiria usar uma biblioteca nativa muito mais rápida do que executar comandos externos. No entanto, essa biblioteca nativa requer acesso raiz para algumas das operações.

Então, o que eu tinha em mente era executar este único cgi como root (ainda não encontrei até agora, esse é o meu principal problema no momento). A primeira coisa que eu faria no cgi do Perl seria alterar o uid efetivo $2$gt; / gid $) para um usuário não privilegiado e alterá-lo novamente para raiz quando precisar chamar uma biblioteca nativa que requer acesso raiz, altere-o novamente para os usuários não privilegiados.

Até agora, você tem algum comentário sobre essa ideia?

Voltando à pergunta principal: como posso permitir que o cgi seja executado como root? Dei uma olhada no suexec, mas ele não parece permitir o root. Não é possível usar o setuid em um script Perl procurando alguma ajuda / idéias aqui

Cumprimentos,

Yannick Bergeron

questionAnswers(1)

yourAnswerToTheQuestion