Enviar correo electrónico a través de php genera un error exim después de la actualización de cPanel

Enviar correo electrónico a través de php genera un error exim después de la actualización de cPanel

Tengo un script que maneja correos electrónicos canalizados y envía respuestas automáticas. Este script ha estado funcionando bien durante más de un año, sin embargo, después de que mi host actualizó a cPanel 11.38.2, mi script no puede enviar correo electrónico:

Este mensaje fue creado automáticamente por el software de entrega de correo.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

  pipe to |/home/user/public_html/email_proc.php
    generated by [email protected]

The following text was generated during the delivery attempt:

------ pipe to |/home/user/public_html/email_proc.php
       generated by [email protected] ------

2013-12-24 10:36:27 [6] Cannot open main log file "/var/log/exim_mainlog": Read-only file system: euid=0 egid=32007
2013-12-24 10:36:27 [6] cwd=/home/user/public_html/ 5 args: /usr/sbin/sendmail -t -i -f [email protected]
2013-12-24 10:36:27 [6] Cannot open main log file "/var/log/exim_mainlog": Read-only file system: euid=0 egid=32007
exim: could not open panic log - aborting: see message(s) above

He estado yendo y viniendo con el proveedor de host porque no tengo acceso ssh. No puedo ver exactamente qué está pasando, pero insisten en que es un error de cPanel o php y está fuera de su control. Luego crearon una cuenta de correo electrónico de prueba y descubrieron que el servidor de correo funciona bien, pero sigo diciéndoles que algo está pasando con la configuración de acceso a su biblioteca php, no con el servidor de correo en sí.

¿Alguien puede dar algunas sugerencias sobre:

  1. ¿Cómo podría intentar rastrear esto con acceso limitado al servidor?

  2. ¿Sugerencias para que el soporte técnico intente solucionar el problema?

¡Gracias!


Pruebas adicionales muestran que este problema es específico del canal de correo electrónico de cPanel. Si el script se ejecuta directamente a través de Apache, todo funciona bien. Si se ejecuta a través de la tubería con exec, falla. Si alguien pudiera hacer una sugerencia, se lo agradecería. Esto parece estar más allá del conocimiento del personal administrativo.

Respuesta1

ACTUALIZACIÓN para otras personas que encuentren este problema en sistemas compartidos que sean jailshell o noshell:

cPanel 11.38 ahoraobliga a reglas estrictasLos elementos segundo y tercero afectan a las aplicaciones de correo canalizado.

  • Los sistemas de archivos montados dentro de virtfs ahora se montan en nosuid.
  • La mayoría de los sistemas de archivos montados dentro de virtfs ahora se montan en modo de solo lectura en CentOS 6, CloudLinux 6, RHEL 6 o posterior.
  • El sistema de entrega de correo se ha actualizado para tener en cuenta el jailshell y ahora ejecuta todas las entregas canalizadas a través del jailshell.
  • Los usuarios de mod_ruid2 ahora pueden habilitar el soporte para “Apache encarcelado”, que hará chroot() cada host virtual en sus virtfs.
  • Las tareas cron ahora se ejecutan con jailshell.

Resulta que este problema está relacionado con un error de cPanel corregido en 11.40.1:

Caso solucionado 80437: Solucionar el problema de fs de solo lectura de montaje recursivo de jailshell

Si un sistema de archivos designado como montaje virtfs de lectura/escritura existiera en el sistema como un sistema de archivos separado, también sería tratado como un montaje recursivo, lo que haría que heredara el estado ro o rw del sistema de archivos principal sin tener en cuenta los indicadores de montaje especificados para el sistema de archivos. en cuestión.

información relacionada