2

Configuración de un servicio de mailing con la autenticación de dos pasos activada en gmail

Seguramente aún no has podido enviarte un correo para probar el funcionamiento de postfix y las utilidades de mail que tiene la terminal de Ubuntu. Pues bien, en esta ocasión te enseñaré como solucionar este error.

NOTA IMPORTANTE: Este tutorial es para aquellas personas que tienen una cuenta de gmail con la autenticación en dos pasos activada (2FA). En el siguiente enlace podrás ver un tutorial de otra estudiante que funciona con cuentas de gmail con 2FA desactivado: Como hice la “Configuración de un servicio de mailing”. Este sería el “proceso normal a seguir”, pero si ya lo intentaste y no te funciona, sigue leyendo este post.

PASO A PASO:

  1. Lo primero que tendrás que hacer es “purgar” tu terminal. Eliminaremos todas las configuraciones anteriores que pudieras haber hecho para evitar conflictos con este tutorial.
    Escribe en tu terminal lo siguiente (copia y pega si así lo prefieres):
sudo apt remove --purge postfix; sudo apt remove --purge mailutils

En esta línea de comando indicamos que elimine por completo postfix (el servicio de mailing que usamos en el curso) y mailutils (las utilidades de mail)

  1. Instala postfix como lo indica la guía del curso: Configuración de un servicio de mailing. No te preocupes, también instala mailutils como lo indican ahí. Luego de hacer eso, todavía no vas a poder enviar mails. Aún faltan algunos pasos.

  2. Vamos a configurar el archivo main.cf. Para ello, digita el siguiente comando:

sudo nano /etc/postfix/main.cf

Aquí indicamos que queremos editar el archivo main.cf mediante la utilidad interactiva nano, el cual se encarga de editar el texto que haya allí. Una vez escrito damos enter y nos aparecerá una ventana como esta:

lol1.PNG

Bajarémos hasta el final del archivo con la tecla de flecha hacia abajo. Nos encontrarémos con una línea en donde esté escrito relayhost =, como te abrás dado cuenta está vacía. Vamos a pegar lo siguiente después del simbolo de igual:

[smtp.gmail.com]:587

Luego pegarémos las siguientes líneas al final de todo el archivo:

smtp_sasl_auth_enable = yessmtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes

Te deberá quedar algo como esto:

fdsa.PNG

Guardamos con Ctrl + X, oprimimos Y y damos ENTER para salir del archivo. Con esto hecho ya hemos configurado parte del servicio de mailing.

  1. El siguiente paso es crear el archivo de autenticación. Aquí es donde corregirémos nuestro error.
    Normalmente, algunas personas no tienen la autenticación de dos pasos activada en su correo, cosa que si me preguntas ESTÁ MAL. Por motivos de seguridad es mejor mantenerla activada. Sin embargo, para algunos procesos como este (configuración de servicio de mailing en la terminal de Ubuntu), la autenticación en dos pasos no puede llevarse a cabo. Google nos ofrece la posibilidad de crear contraseñas para aplicaciones no compatibles con el 2FA. Para hacerlo, haz lo siguiente:
trafdsa.PNG
  • Dale un nombre arbitrario y clickea en GENERAR
    Capture.PNG

  • Te aparecerá una contraseña de 16 caracteres encerrada en un cuadro de color amarillo. Copia esa contraseña

fdsafdsafd.PNG

Ahora digitarémos el siguiente comando en la terminal:

sudo nano /etc/postfix/sasl_passwd

Por naturaleza sale este archivo vacío; copia y pega lo siguiente:

[smtp.gmail.com]:587 [email protected].com:contraseña-que-copiaste-anteriormente

Reemplaza el gmail y la contraseña de ejemplo por tu gmail y la contraseña que te dió google anteriormente. Te deberá quedar algo así:

fdsfre.PNG

Ahora guarda y cierra el archivo: Ctrl + X, Y, ENTER.

  1. Escribe ahora el siguiente comando:
sudo postmap /etc/postfix/sasl_passwd

Cambiarémos el usuario dueño para asegurarnos de tener los privilegios de postfix por completo. Lo harémos escribiendo lo siguiente en la terminal:

sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

Configuramos algunos permisos, con lo siguiente:

sudo chmod 0600/etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

Y por último, crearémos el certificado de seguridad. Aquí te doy dos comandos para que intentes con el segundo si no te funciona el primero. Lo único que cambia es la ruta de enlace o path:

cat /etc/ssl/certs/thawte_Primary_Root_CA.pem | sudo tee -a /etc/postfix/cacert.pem
cat /etc/ssl/certs/TWCA_Root_Certification_Authority.pem | sudo tee -a /etc/postfix/cacert.pem

Te saldrá algo como esto:

uytr.PNG

LISTO! Todo está configurado. Pero antes de enviar tu primer correo satisfactoriamente, activa postfix con lo siguiente:

sudo service postfixrestart

Ahora sí, ya puedes enviar correos desde tu terminal como un auténtico hacker. Prueba con la siguiente línea de comando y ve a ver tu correo!

echo"Hola Mundo!" | mail -s"Testing" TU_EMAIL

Ya para terminar, quiero destacar que me basé en gran parte de este tutorial: Como hice la “Configuración de un servicio de mailing”. También, para solucionar el error de 2FA investigué el siguiente artículo de stackoverflow: Sending email fails when two factor authentication is on for Gmail

Espero que este post te haya servido! Si tuviste problemas no dudes en comentarlo aquí abajo y con gusto te ayudaré a solucionarlo. Recuerda que para triunfar en este sector debes de aprender a solucionar los problemas, no importa cuanto te cueste. Un saludo! 😃

Escribe tu comentario
+ 2
Ordenar por:
2
4774Puntos

Funciono correctamente.
Lo tuve que hacer dos veces debido a que la primera vez en algún punto falle (no se cual xD), así que hay que hacerlo con calma y analizando cada comando.
Gracias 😃

2
2955Puntos

Hermano, me sirvió demasiado tu post. Llevo más de dos horas intentando hacer este ejercicio y no me salía. Ahora, después de seguir tus pasos logré terminarlo y todo funcionó de maravilla. Incluso me daba miedo ir a revisar mi correo por temor a que no me hubiera llegado nada pero todo resultó bien. De verdad, muchas gracias.

0

Muy confuso, no consigo en google autorizar una app ni generar el código.

0
4886Puntos
6 meses

Te repito que sólo podrás entrar al enlace para autorizar una app si tienes la autenticación en dos pasos activada. Tal vez tu no la tengas.