Estoy enviando un correo electrónico desde mi aplicación Rails. Funciona bien en el entorno de desarrollo, pero falla en la preparación. Obtuve el siguiente error:
Net::SMTPAuthenticationError (534-5.7.14 <https://accounts.google.com/ContinueSignIn?plt=AKgnsbtdF0yjrQccTO2D_6)
Tenga en cuenta que no tengo un nombre de dominio para mi puesta en escena.
Aquí están mis configuraciones en staging.rb
config.action_mailer.delivery_method = :smtp
config.action_mailer.default_url_options = { :host => "my.ip.addr.here:80" }
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => 'my.ip.addr.here:80'
:user_name => "[email protected]",
:password => "my_email_password",
:authentication => 'login'
}
Por favor ayuda.
Editar.
Después de agregar la :tls => true
opción obtengo
OpenSSL::SSL::SSLError (Unrecognized SSL message, plaintext connection?)
Y luego cambié el puerto a 25 y ahora obtengo esto (con un retraso de 30 segundos):
Timeout::Error (execution expired)
Respuestas:
Tuve el mismo problema: los correos electrónicos se enviaron desde el desarrollo, pero no desde la producción (donde estaba obteniendo
Net::SMTPAuthenticationError
). Esto me llevó a la conclusión de que el problema no estaba en la configuración de mi aplicación, sino en Google.Motivo : Google estaba bloqueando el acceso desde una ubicación desconocida (aplicación en producción)
Solución : vaya a http://www.google.com/accounts/DisplayUnlockCaptcha y haga clic en continuar (esto le otorgará acceso durante 10 minutos para registrar nuevas aplicaciones). Después de esto, mi aplicación en producción comenzó a enviar correos electrónicos;)
fuente
lesssecureapps
configuración utilizando la autenticación multifactor y habilitando una contraseña específica de la aplicación para mi servidor rails.Net::SMTPAuthenticationError ...ContinueSignIn...
. Luego intenté hacer lo mismo después de 10 minutos y comenzó a funcionar.Esta solución funciona para mí:
Es cierto que Google bloqueará su intento de inicio de sesión, pero puede cambiar su configuración en https://www.google.com/settings/security/lesssecureapps para que su cuenta ya no esté protegida por los estándares de seguridad modernos.
fuente
¡Resuelto! Simplemente cambié la contraseña de mi cuenta de Gmail y de alguna manera los errores desaparecieron.
Después de una docena de cambios, la configuración final con la que terminé es:
fuente
vaya al siguiente enlace y active https://www.google.com/settings/security/lesssecureapps
fuente
La solución anterior proporcionó la configuración correcta (que ya tenía) pero no resolvió el problema. Después de varios intentos, seguí recibiendo el mismo error. Resulta que tuve que "borrar el CAPTCHA" de la web. Consulte la documentación de Gmail para obtener más detalles.
También puede ir directamente a la página "borrar el CAPTCHA" aquí .
fuente
Mucho más tarde, pero por si acaso ayuda a alguien. Acabo de llamar al Centro de ayuda de Google Apps y me ordenaron cambiar la configuración de aplicaciones menos seguras (como todos los demás) pero también cambiar el puerto a 465.
En mi caso, ¡eso funcionó!
fuente
Yo tuve el mismo problema.
Solución:
Puede activar la
less secure apps
opción ( aquí ).https://myaccount.google.com/lesssecureapps
Y desbloquear Captcha ( enlace ):
https://accounts.google.com/DisplayUnlockCaptcha
fuente
Hola, esto también funcionó para mí, así que si alguien todavía tiene un problema, pruebe esto.
Asegúrese de tener figaro en su archivo de gemas. Para guardar información confidencial como nombre de usuario y contraseña como variables de entorno
Y en su config / environment / development.rb, pegue los códigos a continuación usando smtp como método de entrega
Configuración de SMTP para gmail
En su directorio de configuración, cree un archivo llamado application.yml y agregue los códigos a continuación.
Debe utilizar su correo electrónico y contraseña para la autenticación en el archivo.
fuente
También enfrenté el problema, y después de investigar un poco en la configuración de Gmail, encontré la solución:
En gmail, vaya a configuración.
Seleccione la pestaña "Reenvío y POP / IMAP".
En la sección de acceso IMAP, seleccione "Activar IMAP".
fuente
La respuesta aceptada parece muy antigua, no sé si en ese momento existía la siguiente (mejor) solución:
config.action_mailer.smtp_settings
¡Ahora, enviar correos electrónicos funciona perfectamente!
fuente
Para resolver este problema:
Si ve: Net :: SMTPAuthenticationError (535-5.7.8 Nombre de usuario y contraseña no aceptados) , debe permitir que las aplicaciones menos seguras inicien sesión en su cuenta de Google. Para habilitar el inicio de sesión de aplicaciones menos seguras, siga: https://myaccount.google.com/lesssecureapps? . Pero permitirá que todas las aplicaciones inicien sesión. Si desea personalizarlo, consulte: https://support.google.com/a/answer/6260879?hl=es
Entonces es posible que obtenga Net :: SMTPAuthenticationError (534-5.7.14) , así que para resolver esto, consulte: pli = 1http: //www.google.com/accounts/DisplayUnlockCaptcha. Después de eso, haga clic en continuar desde la página que le redirigirán. Verificará su Captcha y su aplicación será verificada para usar su cuenta de Google para enviar correos electrónicos.
NOTA: asegúrese de que está utilizando las credenciales correctas de su cuenta de Gmail.
Si no está dispuesto a permitir todas las aplicaciones, consulte: https://support.google.com/a/answer/6260879?hl=en . Desde el enlace, vaya a Usar alternativas a aplicaciones menos seguras , esto lo guiará a una forma alternativa de permitir el acceso de aplicaciones menos seguras a su cuenta de Google.
fuente
Tuve el mismo problema y después de algunas pruebas y errores, he llegado a esta resolución, que es una opción para habilitar en google:
Haga clic en https://www.google.com/settings/u/0/security/lesssecureapps
Habilite 'Acceso para aplicaciones menos seguras' aquí iniciando sesión con la dirección de correo electrónico que proporcionó en la configuración smtp.
fuente