Configurar el servidor ubuntu para enviar correo ()

40

Intenté buscar mucho, pero no pude encontrar cómo configurar realmente un servidor ubuntu, para poder enviar correos a través de php usando la función mail () en php.

Tengo apache2, mysql y php5 instalados en mi servidor.

Gracias.

Shishant
fuente

Respuestas:

45

También estoy de acuerdo en que faltan tutoriales para las personas que solo necesitan un script para enviar, por ejemplo, correos electrónicos de error, y no necesitan un servidor de correo completo.

Primero, si postfix aún no está instalado, haga lo siguiente:

sudo apt-get install postfix

Se presenta con un par de preguntas. Para el primero elegí "sitio de Internet"; para una máquina detrás de un firewall, podría elegir smarthost en su lugar. Para la segunda pregunta, el valor predeterminado es el nombre de la máquina; Agregué un nombre de dominio que controlo (para poder configurar el DNS más adelante, si es necesario).

En este punto, debería poder usar "correo" desde la línea de comandos para enviar una prueba. (Por lo general , primero sigo las instrucciones en http://ubuntuforums.org/showthread.php?t=38429 , de lo contrario, tengo que usar el -findicador /usr/bin/sendmail. También me gusta crear /etc/aliasescon entradas para root y mi usuario normal, y luego ejecutar newaliases)

Luego, en /etc/php5/conf.d, cree un archivo (por ejemplo, mailconfig.ini) con estos contenidos:

sendmail_from = "[email protected]"
sendmail_path = "/usr/sbin/sendmail -t -i -f [email protected]"

Cambie [email protected] a su dirección de correo electrónico. Significan que todos los correos electrónicos parecerán enviados por usted, lo que puede ayudar a evitar que sean rechazados. Esto es suficiente para enviar correos electrónicos de error a un desarrollador.

(Las instrucciones anteriores se probaron en Ubuntu 10.04, 11.04, 11.10, 12.04)

PD Como se señaló en los comentarios, mailno siempre está ahí (por ejemplo, en Ubuntu 11.10 falta). En realidad, esto no afecta las instrucciones anteriores, solo necesita mailpara la prueba y puede usarlo sendmailigual de bien para eso. Pero mailtambién es útil para leer el correo electrónico, por lo que generalmente vale la pena instalarlo, con: apt-get install mailutils(como root).

Darren Cook
fuente
1
¡Gracias! Esto funcionó perfectamente. Probado en Ubuntu 12.04 LTS x64.
Trent Scott, el
¡Esto resuelve encontrar usando NGINX también! Y PHP5-FPM
TheBlackBenzKid
1
Nota en mi host, la mailutilidad de línea de comandos no está instalada en una instalación limpia de Ubuntu, y la instalación de PostFix no lo instala. Intente sudo apt-get install mailutilsobtener el mailcomando, o use alternativas como Mutt, ossmtp
atravesó
Necesitaba semanas para darme sendmail_pathcuenta de que todo lo que tenía que hacer "para funcionar correctamente, comosendmail_path = "/usr/sbin/sendmail -t -i -f [email protected]"
Sliq
1
¡Finalmente! Una solución sencilla y directa. Funciona en Ubuntu 14.04.
Knyri
2

Deberá configurar el servidor ubuntu para poder enviar correo ... como ejemplo, podría instalar y configurar postfix.

La documentación de Ubuntu tiene una buena página en https://help.ubuntu.com/community/MailServer

Dominik
fuente
¿Algún tutorial que me pueda vincular?
Shishant
agregó un enlace tutorial
Dominik
1

Siga el doloroso proceso de configurar un servidor de correo directamente en su servidor (postfix, etc.) o use una biblioteca que le permitirá conectarse directamente a un servidor smtp.


fuente
0

Primero debe instalar el paquete xmail, y si aún no funciona, eche un vistazo aquí .

Prof. Falken
fuente