Apache ejecutándose como root en lugar del usuario especificado en httpd.conf

Apache ejecutándose como root en lugar del usuario especificado en httpd.conf

Estoy intentando permitir que WordPress cargue archivos en la carpeta wp-content sin establecer permisos para la carpeta en 777. Sin embargo, tengo algunas dificultades.

El grupo y el usuario configurados para la carpeta wp-content coinciden con el grupo y el usuario que Apache está configurado para usar en httpd.conf. Sin embargo, cuando ejecuto el siguiente comando, parece que Apache en realidad se está ejecutando como root en lugar del usuario especificado en httpd.conf.

Configuración httpd.conf

Usuario xxx
grupo aaa

Ejecución de comando para determinar el usuario como Apache se está ejecutando

ps auxiliar | grephttpd

Salida del comando anterior

513 1294 0,4 ​​1,4 316420 54864 ? S 08:30 0:06 /usr/sbin/httpd

513 es el UID correcto para el usuario xxx, por lo que aparece correctamente. Sin embargo, todavía no puedo cargar archivos dentro de WordPress sin configurar los permisos para la carpeta wp-content en 777.

¿Alguien puede decirme cuál es el problema aquí?

Respuesta1

Apache siempre necesita comenzar como root, luego usa setuid para cambiar al contexto de usuario del usuario especificado en httpd.conf.

Sin root (uid = 0) no se puede crear un socket de escucha en puertos privilegiados (por debajo de 1024)

Para más detalles lea estos documentos:

Desde el primer enlace:

# ps -ef | grep -i http | awk '{print $1}'
root
apache
apache
apache
apache
apache

información relacionada