Acabo de construir un servidor doméstico modesto usando CentOS 5.5. Quiero que el servidor pueda enviar correos electrónicos a mi cuenta de Gmail u otras cuentas de correo electrónico para varias cosas, como trabajos cron. También sería bueno poder enviar correos electrónicos a través de aplicaciones PHP que también ejecuto / desarrollo en el servidor. O incluso poder que el servidor envíe correos electrónicos a través del comando de correo.
Sé que hay un millón de resultados de búsqueda de Google sobre la configuración de su servidor Linux como un servidor de correo electrónico o la configuración de sendmail, etc. Pero no parecen ser lo que estoy buscando ... al menos no lo creo. No estoy tratando de configurar un servidor corporativo que otros clientes puedan conectar para enviar correos electrónicos o cualquier cosa complicada como esa.
Solo quiero que mi servidor me envíe correos electrónicos sobre cosas. Parece que debería ser simple ... ¿Alguien puede señalarme en la dirección correcta?
ACTUALIZAR
Según la solicitud de los usuarios a continuación, probé este comando:
/bin/mail -s "My Subject" "[email protected]" < /home/john/test
Sin errores ni nada. Pero el correo electrónico nunca apareció en mi bandeja de entrada. Aquí está mimaillog
Oct 27 00:52:19 localhost sendmail[13702]: o9R6qJhU013702: from=root, size=10906, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Oct 27 00:52:19 localhost sendmail[13703]: o9R6qJOd013703: from=<[email protected]>, size=11209, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1]
Oct 27 00:52:19 localhost sendmail[13702]: o9R6qJhU013702: [email protected], ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=40906, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (o9R6qJOd013703 Message accepted for delivery)
¿Alguna pista?
Respuestas:
/bin/mail -s "Enter Subject Line here" -a
/home/.../whateverFileYouWantAttached
"you@YourEmailAddress"
< /home/me/textBody.letter
pruebe el comando anterior :)
fuente
Respuesta simple:
Configura sendmail . Dependerá de su distribución, pero esto no es difícil en absoluto. Si tiene alguna pregunta específica, pregunte.
Respuesta complicada:
Si está preguntando esto, probablemente no debería simplemente saltar el arma y configurar sendmail por el momento.
Deberá tener en cuenta algunas cosas:
¿Su ISP le permite enviar correos electrónicos? Es posible que se encuentre en un rango de IP que no sea del servidor y, por lo tanto, muchos proveedores de correo electrónico lo bloquearán por completo.
¿Qué dirección usará como su dirección de origen? ¿Está autorizado para enviar desde esta dirección (SPF, DomainKeys, etc.)? De lo contrario, los proveedores de correo electrónico pueden detectar sus mensajes como spam, y con razón.
Por último, pero no menos importante: ¿realmente necesita usar su propio servicio SMTP? ¿Alguna razón por la que usar su ISP no es lo suficientemente bueno?
En aquellos días, configurar un servidor SMTP no era un gran problema. Hoy en día, la configuración puede ser más fácil, pero configurarlo para que realmente envíe mensajes a los buzones de las personas es un desafío.
fuente
Puedo confirmar que ninguna de las sugerencias anteriores está funcionando en mi sistema CentOS en casa tampoco, ni una sola. Lo cual es molesto!
Luego intenté lo mismo en una nueva instancia de Amazon que ejecuta CentOS 6.4, e incluso con la configuración predeterminada, puedo enviar correo sin problemas. Todo lo que tenía que hacer era
después de lo cual el envío de correo como se describe anteriormente funciona como un encanto. La instalación de complicaciones como sendmail NO es necesaria para lo que Jakub está tratando de hacer.
Debe ser una configuración con mi ISP, ya que aquí no tengo un firewall configurable.
fuente
Debes hacer lo siguiente:
sudo yum install postfix telnet mailx
sudo /etc/init.d/postfix start
sudo vi /etc/postfix/main.cf
Cambio
mydestination = mydomain.com, localhost.mydomain.com, localhost
a
mydestination = localhost.mydomain.com, localhost
Pruebe usando lo siguiente desde la línea de comando
.
No. 4: solo hay un punto final para completar el cuerpo del correo electrónico. Ahora deberías tener correo.
Lo anterior le proporcionará un MTA (Agente de transferencia de correo) en funcionamiento. Puede encontrar algunos recursos que lo ayudarán con una configuración más avanzada en los artículos de slicehost sobre configuración de correo electrónico para CentOS (desplácese hacia abajo hasta la sección CentOS y correo electrónico). Realmente debería considerar configurar lo siguiente correctamente: nombre de host, RDNS (DNS inverso) y registros SPF (Marco de políticas del remitente) con su proveedor de DNS.
fuente
¿Ha modificado su /etc/mail.rc para configurar la dirección smtp?
fuente
/etc/mail.rc
esset ask askcc append dot save crt ignore Received Message-Id Resent-Message-Id Status Mail-From Return-Path Via
¿Qué sugieres que haga?Intente instalar postfix y configure el destino en el archivo de configuración, incluso si funciona con sendmail.
fuente
Postfix está en el camino correcto, pero a menos que Gmail piense que eres al menos remotamente legítimo (por ejemplo, no eres un spammer) es muy poco probable que recibas tu correo.
El proceso es un poco complicado para publicar aquí, pero la forma más simple que he encontrado de lograr esto (y recibir su correo) es configurar Postfix como un relé, utilizando su propia cuenta de Gmail como transporte.
El proceso que uso se detalla aquí:
http://rs20.mine.nu/w/2011/07/gmail-as-relay-host-in-postfix/
No es necesario configurar certificados autofirmados (según sendmail) y, en mi experiencia, ¡simplemente funciona!
fuente
La solución fácil no es sendmail, sino sendEmail:
http://caspian.dotconf.net/menu/Software/SendEmail/#download
Un script perl que se configura fácilmente para enviar a través de cualquier servidor SMTP al que pueda acceder: lo uso para enviar a través de cuentas de Gmail todo el tiempo, pero también funciona para SMTP ordinario sobre TCP en el puerto 25, etc.
Por lo general, envuelvo el script perl sendEmail con mi propio script de shell para Gmail:
fuente