Gmail Workspace / Gmail Suite enviar e-Mail desde el servidor usando msmtp

Estamos en proceso de migración a Gmail, para poder delegar la gestión de un servidor de correo.

Antes utilizábamos ssmtp en nuestro servidor para enviar correos electrónicos, utilizando nuestro propio servidor de correo (Zimbra).

Ahora he conseguido que Gmail Workspace funcione, y me gustaría compartir algunos consejos sobre cómo hacerlo.

Esto se hace en un sistema Debian / Ubuntu.

Configurar la autenticación de 2 factores

Accede a tu cuenta de Google:

https://myaccount.google.com/

Haga clic en la pestaña de Seguridad y desplácese hacia abajo hasta la Verificación en 2 pasos, habilítela.

imagen

Probablemente tendrás que proporcionar tu número de teléfono móvil a Google o elegir otra opción aquí.

Configurar una contraseña de la App

Haga clic en "Contraseñas de aplicaciones" debajo de la verificación en dos pasos.

Google te pedirá que vuelvas a iniciar sesión.

imagen

(Nota: ya tengo una contraseña de la aplicación configurada, su pantalla podría verse un poco diferente al principio)

Haga clic en Seleccionar aplicación, y seleccione Otro (nombre personalizado)

imagen

Puede introducir el nombre que desee: es para su referencia. Por ejemplo,

imagen

Haga clic en Generar

Aparecerá una ventana emergente. La contraseña de tu aplicación sólo se mostrará esta vez, así que asegúrate de copiarla.

imagen

Tenga en cuenta que la contraseña sólo se muestra como cuatro segmentos de cuatro caracteres cada uno para que sea más fácil de leer, no habrá espacios en la contraseña real.

En este caso la contraseña es

lwsznhkychasbbrh

Haga clic en "Done" (Hecho).

Cambiar a msmtp

ssmtp ya no se mantiene, y posiblemente también tendrá problemas de conexión con Gmail:

/var/log/syslog:15 de octubre 09:52:22 Athena sSMTP[19076]: Conexión SSL usando ECDHE_ECDSA_CHACHA20_POLY1305
/var/log/syslog:15 de octubre 09:52:22 Athena sSMTP[19076]: Autorización fallida (535 5.7.8 
https://support.google.com/mail/?p=BadCredentials ************.79 - gsmtp)

ssmtp: Autorización fallida (535 5.7.8  https://support.google.com/mail/?p=BadCredentials *************.4 - gsmtp)

Aparentemente, la parte de autenticidad de ECDHE puede ser un problema para algunos usuarios de los sistemas más nuevos.

La solución es cambiar a msmtp.

Eliminar ssmtp (todos los comandos se ejecutan como root)

apt-get purge ssmtp

Instalar msmtp

apt-get install msmtp msmtp-mta

Configurar msmtp

nano /etc/msmtprc

Pon los siguientes datos:

valores predeterminados
autenticidad en
tls en
tls_starttls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
archivo de registro /var/log/msmtp.log

cuenta gmail
host smtp.gmail.com
puerto 587

de [email protected]
usuario [email protected]
contraseña lwsznhkychasbbrh

cuenta por defecto : gmail

Cambia tus datos de acceso (desde, usuario y contraseña - he tomado lwsznhkychasbbrh del ejemplo anterior).

Tenga en cuenta que no es necesario reiniciar un servicio ni nada por el estilo: los datos de acceso se utilizarán para el siguiente correo electrónico que el servidor intente enviar.

Utilice el contraseña de la aplicación generado arriba - la contraseña de su cuenta no funcionará:

msmtp: autenticación fallida (método PLAIN)
msmtp: mensaje del servidor: 534-5.7.9 Se requiere una contraseña específica de la aplicación. Más información en
msmtp: mensaje del servidor: 534 5.7.9 
https://support.google.com/mail/?p=InvalidSecondFactor *************.29 - gsmtp
msmtp: no se ha podido enviar el correo (cuenta por defecto de /etc/msmtprc)

Además, tenga en cuenta que la contraseña de la aplicación debe introducirse sin espacios entre los caracteres (como se ha comentado anteriormente)

Asegure este archivo (¡contiene datos de acceso!):

chmod 600 /etc/msmtprc

imagen

Habilitar aplicaciones menos seguras

https://admin.google.com/u/2/ac/security/lsa

Desgraciadamente, usted también necesitan habilitar Aplicaciones menos seguras acceso para sus cuentas en Google Admin, de lo contrario seguiría recibiendo el mismo mensaje de error:

msmtp: autenticación fallida (método PLAIN)
msmtp: mensaje del servidor: 535-5.7.8 Nombre de usuario y contraseña no aceptados. Más información en
msmtp: mensaje del servidor: 535 5.7.8  https://support.google.com/mail/?p=BadCredentials **********.34 - gsmtp
msmtp: no se ha podido enviar el correo (cuenta por defecto de /etc/msmtprc)

imagen

Cambie esta opción por "Permitir a los usuarios gestionar su acceso a las aplicaciones menos seguras" y haga clic en Guardar.

Enviar un mensaje de prueba

Si todo funciona correctamente, ahora puede enviar un mensaje de prueba:

echo 'test' | msmtp [email protected]

Si este comando regresa sin un error, entonces todo funciona.

Además, si actualizas la vista de contraseñas de la aplicación, verás que la contraseña de la aplicación ha sido utilizada ("última utilizada"):

imagen

(aunque esto podría no ser siempre exacto según mis pruebas).

Si lo hiciera no funciona, se obtendría una salida similar a la siguiente:

msmtp: autenticación fallida (método PLAIN)
msmtp: mensaje del servidor: 535-5.7.8 Nombre de usuario y contraseña no aceptados. Más información en
msmtp: mensaje del servidor: 535 5.7.8 
https://support.google.com/mail/?p=BadCredentials ***********.9 - gsmtp
msmtp: no se ha podido enviar el correo (cuenta por defecto de /etc/msmtprc)

Nota: Este error también aparecerá si borras la contraseña de la aplicación utilizando el icono de la papelera que puedes ver arriba. Esto, por cierto, es una característica útil de las contraseñas de las aplicaciones: si sospechas de una violación, puedes simplemente eliminar la contraseña de la aplicación y configurar tu dispositivo con otra contraseña de la aplicación.

Si sigues obteniendo este error, comprueba si has habilitado las aplicaciones menos seguras, como te he indicado (más arriba).

Nota II: recibirás una información sobre las contraseñas de las aplicaciones recién creadas en tu cuenta de correo electrónico:

imagen

Nota III: también obtendrás los mensajes enviados en tu carpeta de enviados:

imagen

Ref

Bono

Google menciona su límites de la tarifa en esta página:

  • 10.000 destinatarios al día para el servicio de retransmisión SMTP (requiere una dirección IP estática o el inicio de sesión de un usuario válido de G Suite)
  • 2.000 mensajes al día para el SMTP de Gmail