¿Cómo enviar un correo electrónico desde el servidor Ubuntu?


13

Lo que se supone que debo hacer es enviar correos electrónicos desde Ubuntu. La forma más fácil que he encontrado es usar Thunderbird y vincular mi dirección de correo electrónico real (abc@hotmail.com) a la cuenta de Thunderbird. Puedo recibir correos electrónicos con éxito y descargar el historial completo de esta manera. Sin embargo, no puedo enviar correos electrónicos.

Lo que quiero hacer es enviar correos electrónicos directamente desde Ubuntu y aparecer como user1 @ localhost o algo similar.

¿Es eso posible? Después de leer diferentes temas sobre esto, parece que usar una dirección de retransmisión es la única forma.

También he instalado Postfix, de la misma manera que está escrito allí: ¿Cómo configurar un servidor de correo? Cuando me pidieron que eligiera el tipo de instalación, elegí el sitio de Internet.

Opciones que tenía:

  • Sin configuración;
  • Sitio de Internet;
  • Internet con smarthost;
  • Sistema Stellite;
  • Solo locales;

Cuando se me solicitó el nombre del correo del sistema, ingresé a un sitio web que tengo: some_website.com. Todavía no he descubierto cómo enviar correos electrónicos a través de postfix, pero supongo que nuevamente se usará un servidor de retransmisión.

Estoy ejecutando Ubuntu 11.10 como una máquina virtual.

Espero que esta pregunta tenga sentido.

Respuestas:


13

No tiene mucho sentido porque usted ha dicho "se supone que debe hacer", como si fuera su trabajo. ¿Estás configurando un servidor de correo real dentro de una máquina virtual? Supongo que significa que necesita que el servidor virtual tenga un sistema de correo, pero que el servidor virtual no es un servidor SMTP "real" a tiempo completo. (De lo contrario, ya lo sabrías, supongo salvajemente).

Con eso en mente, necesitaría la opción "Internet con smarthost". Esencialmente, la gran razón es que todos los servidores SMTP bien configurados en todo el mundo usan medidas anti-spam; y, entre estas medidas, está el rechazo de todas las conexiones SMTP que provienen de grupos conocidos de direcciones dinámicas (que los spammers adoran usar). Por lo tanto, debe usar otro servidor SMTP para el correo saliente.

Si desea seguir con Postfix para esto, es fácil de hacer: simplemente busque los artículos de Ubuntu relacionados con la configuración de Postfix como un smarthost. Sin embargo, si usted no tiene ninguna afinidad particular por un sistema sobre otro, hay un paquete diseñado sólo para esto: ssmtp. Entonces, si quieres darle una vuelta, simplemente instala ssmtp.

( Precaución: la acción a continuación eliminará postfix o sendmail ) .

sudo apt-get install ssmtp

Luego edite el archivo de configuración ssmtp:

sudo -e /etc/ssmtp/ssmtp.conf

No conozco detalles de un servidor SMTP disponible para usted, así que le daré un ejemplo de GMail:

Root=your_email@gmail.com
Mailhub=smtp.gmail.com:465
RewriteDomain=gmail.com
AuthUser=your_gmail_username # me@gmail.com
AuthPass=your_gmail_password
FromLineOverride=Yes
UseTLS=Yes

Ahora su sistema enviará el correo de la manera que desee. Puede usar localhost como servidor de correo en sus aplicaciones GUI para el servidor SMTP saliente. ¿Pero qué hay de la CLI? Usa el mailsoftware:

sudo apt-get install heirloom-mailx

Ahora también puede usar el correo de la línea de comando con algo como:

mail < filename.ascii someone@somewhere.com -s "My File"

O, si lo usa mailpara redactar un mensaje que escribe ( mail someone@somewhere.com), termine el mensaje de correo con un solo punto en una línea en blanco. Un mejor cliente de correo CLI es mutto pine.

¿Es este el ángulo que necesitabas? Si es así, ¿tuvo éxito?


1
Mutt dice "sendmail: No se puede abrir: 25" cuando intento enviar un correo electrónico. ssmtp dice "ssmtp: no se puede abrir: 25" También dije que podía enviar correos electrónicos a través de Thunderbird, pero creo que estaba equivocado. Lo siento por eso. Me agota el tiempo de espera al enviar mensajes de correo electrónico a través de Thunderbird y mensajes sobre el puerto 25 cuando uso clientes de correo CLI.
afaf12

@ afaf12 compruebe si el firewall está bloqueando. El error de tiempo de espera de conexión ocurre principalmente debido a un problema con el firewall.
Mughil

1
¿El servidor de correo remoto restringe el acceso a ciertos rangos de direcciones, por configuración o firewall?

¿Necesita utilizar en este servidor de correo remoto el puerto de envío: 465?

No puedo sudo /etc/init.d/ssmtp restarttrabajar en mi máquina.
Nam G VU

1

Si está utilizando Thunderbird, puede configurar un servidor remoto para SMTP. A menos que tenga un servidor de correo propio, este normalmente sería el servidor de retransmisión de su ISP o el servidor SMTP de su proveedor de correo. He utilizado con éxito Gmail como mi servidor SMTP, pero requiere autenticación. (Algunos de los otros hosts también pueden hacerlo).

Pruebe el acceso al servidor con el comando telnet mail.example.com 25. Si está funcionando, recibirá un mensaje de banner del servidor.

Una vez que tenga Thunderbird trabajando con el servidor, puede configurar Exim o Postfix como un servidor satelital para el mismo servidor. Puede omitir esto si no necesita enviar correos electrónicos fuera del sistema desde otras aplicaciones. Tenga cuidado, que la dirección de origen en el servidor saliente puede aceptar correo electrónico.

EDITAR: compruebe que no tiene iptables activadas y que bloquea el tráfico saliente. Si lo hace, habilite el tráfico saliente en su puerto deseado. Puede usar un comando como tcptraceroute mail.example.com 25para ver dónde está siendo bloqueado. tcptraceroutenecesitaría ser instalado antes de usarlo.


Telnet: no se puede conectar al host remoto: se agotó el tiempo de espera de la conexión. Estoy seguro de que el servidor remoto puede aceptar correo en el puerto 25. He enviado correctamente correos electrónicos a este servidor remoto desde otra máquina (Windows 7).
afaf12

0

Probé esto en una caja vagabunda y funcionaba perfectamente. Instalé las siguientes cosas ejecutando el comando

apt-get install php-pear

correo de instalación de pera

pera instalar Net_SMTP

pear install Auth_SASL

pera instalar mail_mime

Luego instale postfix ejecutando el siguiente comando

apt-get install postfix

durante la instalación Seleccione--

Sitio de Internet y localhost en lugar de servidor porque intentamos esto en localhost

Después de esto, ejecute el siguiente comando

sudo vim /etc/ssmtp/ssmtp.conf

hacer cambios a los archivos

haga que esto cambie al archivo ssmtp.conf

FromLineOverride = YES

AuthUser=youremail@gmail.com

AuthPass = yourpasss

Lo más importante es hacer que su correo electrónico sea accesible para aplicaciones menos seguras

https://www.google.com/settings/security/lesssecureapps

y luego puede usar la función de correo php o Ingresar el siguiente comando en la terminal para enviar correo desde la misma terminal

$ ssmtp youremail@gmail.com

De: youremail@gmail.com

PARA: sendto@email.com

Asunto: El sujeto

Hola, este es mi primer correo electrónico ssmtp.

presione Ctrl + D y ssmtp enviará su correo electrónico

También puede verificar si el smtp funciona o no desde su máquina

ping smtp.gmail.com

--la salida de este comando es algo como

64 bytes de sc-in-f108.1e100.net (74.125.68.108): icmp_seq = 1 ttl = 63 tiempo = 68.4 ms

telnet smtp.gmail.com 587

--la salida debe ser algo como esto

Probar 74.125.68.108 ...

Conectado a gmail-smtp-msa.l.google.com.

220 smtp.gmail.com ESMTP l14sm12513264pfb.73 - gsmtp

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.