¿Puedo ejecutar mi aplicación mod_perl como un usuario normal
Pregunta
¿Puedo ejecutar mi aplicacion mod_perl como un usuario normal similar a la ejecución de una aplicación CGI de vainilla llana bajo suexec?
Solución
Desde el fuente :
¿Es posible hacer funcionar mod_perl habilitado Apache como suExec?
La respuesta es No. La razón es que no se puede "suid" una parte de un proceso. mod_perl vive dentro del Apache proceso, por lo que su UID y GID son los mismo que el proceso Apache.
Usted tiene que usar mod_cgi si necesita esta funcionalidad.
Otra solución es utilizar un crontab llamar a una secuencia de comandos que verificará si hay algo que hacer y lo ejecutará. El script mod_perl será capaz de crear y actualizar esta lista de tareas.
Una respuesta más matizada con algunas soluciones posibles a partir de "mod_perl práctica" libro : (Espero que eso no es un contenido pirateado, si se trata de editar por favor hacia fuera)
mod_perl 2.0 mejora la situación, ya que permite a un grupo de Perl intérpretes para ser dedicados a una host virtual individual. Es posible establecer los UID y GID de éstos intérpretes sean los del usuario para los que el host virtual es configurado, por lo que los usuarios pueden operar dentro de sus propios espacios protegidos y no son capaces de interferir con la otra usuarios.
soluciones adicionales del libro sme están en apéndice C2
Otros consejos
A medida que se ejecuta mod_perl dentro del proceso de Apache, yo creo que la respuesta es generalmente no. Podría, por ejemplo, ejecutar un proceso de apache por separado ya que este usuario normal y utilizar el proceso principal de Apache como un proxy para ello.