Configuración del servicio de Mailgun para envió y recepción de correos

Configuración del servicio de Mailgun para envió y recepción de correos

Hace 5 meses

Vamos a configurar una cuenta de mailgun para poder enviar correos y recibir correos de una cuenta como por ejemplo: nombre@dominio.com.

Requisitos para poder configurar la cuenta

  • Es necesario tener una cuenta en: https://mailgun.com/ ya verificada es decir con la validación del correo.
  • Una cuenta en http://digitalocean.com/ para la configurar el dominio. Te recomiendo usar el enlace asi te van a regalar $10 dolares para usar en tu cuenta.
  • Tener un dominio.

Una vez que tengas cumplidos los requisitos, hay que añadir el dominio a la cuenta de mailgun. NO uses un subdominio nunca he logrado que funcione.

Botón de añadir dominio mailgun Formulario para añadir dominio a mailgun

Ahora en DigitalOcean en el apartado de Networking añadimos el dominio. Para que funcione se deben cambiar los NameServers de tu dominio en donde lo compraste por los de DigitalOcean.

  • ns1.digitalocean.com
  • ns2.digitalocean.com
  • ns3.digitalocean.com

Formulario para añadir dominio en DigitalOcean

Ahora registramos todos los DNS Records la información la vamos a copiar de la pagina de mailgun a la de DigitalOcean.

TXT

TXT Mailgun TXT DigitalOcean TXT 2 DigitalOcean

MX

MX Mailgun MX DigitalOcean MX 2 DigitalOcean

CNAME

CNAME Mailgun CNAME DigitalOcean

Listo eso seria la configuración para DigitalOcean, ya solo queda esperar a que se validen los DNS Records pueden tardar de 24 a 48 horas.

Creamos las credenciales SMTP

Hay que crear nuestra cuenta nombre@dominio.com se hace en el apartado de dominios de mailgun y creamos una nueva credencial, en mi caso yo registre el correo mario@mvochoa.com.

Manage SMTP credentials Nueva credencial SMTP

Una vez creado la nueva credencial, tenemos que registrar un ruta para poder redireccionar todos los correos que envíen a mario@mvochoa.com lleguen al correo de Gmail mvochoaa@gmail.com.

Crear ruta mailgun registrar ruta mailgun

Primero vamos a probar y vamos a enviar un correo a mario@mvochoa.com y debemos recibirlo en la cuenta de Gmail.

Enviamos el correo de outlook Enviar email

y lo recibimos en la cuenta de Gmail como vez es para mario@mvochoa.com.

Email recibido

También podemos enviar correos de la cuenta de mario@mvochoa.com, primero vamos a usar el comando curl con el Api Key que se encuentra en la información del dominio en mailgun, para enviar un correo a la misma cuenta de outlook como si le enviáramos una “respuesta”.

$ curl -s --user 'api:key-5f34hsf74lsd7bd48b71bc3388a' \
    https://api.mailgun.net/v3/mvochoa.com/messages \
    -F from='Mario Valentin <mario@mvochoa.com>' \
    -F to=vale_ochoa29@hotmail.com \
    -F subject='Respuesta Curl' \
    -F text='Esto es una prueba de la respuesta'

debemos recibir como respuesta del comando:

{
  "id": "<20180630021806.1.3B8671DC0426B708@mvochoa.com>",
  "message": "Queued. Thank you."
}

y con eso debemos recibir el correo en la cuenta de outlook:

Respuesta en outlook

Por ultimo vamos a enviar un correo usando las credenciales SMTP, para eso vamos usar un script en Golang (Go) para enviar el correo.

Las mismas credenciales SMTP se pueden usar en cualquier otro servicio o lenguaje.

package main

import (
    "log"
    "net/smtp"
)

const mime = "MIME-version: 1.0;\nContent-Type: text/html; charset=\"UTF-8\";\n\n"

func main() {
    msg := "To: vale_ochoa29@hotmail.com\r\nSubject: Respuesta SMTP\r\n" + mime + "\r\nEsto es una prueba de la respuesta"
    auth := smtp.PlainAuth(
        "",
        "mario@mvochoa.com",
        "LA CONTRASEÑA",
        "smtp.mailgun.org")
    err := smtp.SendMail(
        "smtp.mailgun.org:587",
        auth,
        "mario@mvochoa.com",
        []string{"vale_ochoa29@hotmail.com"},
        []byte(msg),
    )
    if err != nil {
        log.Fatal("No se pudo enviar el correo.")
    }

    log.Println("Listo se a enviado el correo.")
}

Respuesta SMTP

Eso seria todo como puedes ver se pueden enviar y recibir correo electrónicos usando Mailgun.

Espero que te haya sido de ayuda. No olvides si ha sido util para ti seria de mucha ayuda si lo compartes con tus amigos.

Otras publicaciones

Configuración del servicio de Mailgun para envió y recepción de correos

Hace 5 meses

Configuración del servicio mailgun para poder enviar correos y recibir correos de una cuenta personalizada como por ejemplo: nombre@dominio.com


Como crear una extensión para convertir imágenes en Base64 y viceversa | App Inventor

Hace 5 meses

Extensión de app inventor para convertir la información de una imagen a base64 para poder manipularla como texto y también poder convertir una cadena en Base64 a una imagen.


Como almacenar imágenes en una tinyDB | App Inventor

Hace 5 meses

Guardar imágenes dentro una tinyDB en app inventor usando una extensión para convertir imágenes a BASE64.


Estructuta de pila en C++

Hace 1 mes

Tutorial de como construir la estructura de una pila en C++ y usarla como una librería en otros proyectos.


Crear, actualizar y eliminar registros con imágenes en una TinyDB | App Inventor

Hace 4 meses

Como crear una aplicación con app inventor para crear, actualizar y eliminar registros de una TinyDB con imágenes usando una ListView.