【问题标题】:JavaMailSender with gmail smtp, authentication failed from VPS but works locally带有 gmail smtp 的 JavaMailSender,VPS 身份验证失败,但在本地工作
【发布时间】:2015-01-26 14:46:41
【问题描述】:

我正在使用 spring org.springframework.mail.javamail.JavaMailSender 并且我有以下配置

 <bean id="mailSender" class="org.springframework.mail.javamail.JavaMailSenderImpl">
        <property name="host" value="smtp.gmail.com"/>
        <property name="port" value="25"/>
        <property name="username" value="******@gmail.com"/>
        <property name="password" value="*******"/>
        <property name="javaMailProperties">
            <props>
                <prop key="mail.transport.protocol">smtp</prop>
                <prop key="mail.smtp.auth">true</prop>
                <prop key="mail.smtp.starttls.enable">true</prop>
                <prop key="mail.debug">true</prop>
            </props>
        </property>
    </bean>

无论如何,我的本地 tomcat 一切正常,但今晚当我将应用程序上传到 VPS(Linode 主机上的 Ubuntu 14)时,似乎 gmail 拒绝对我的用户进行身份验证并发送电子邮件。我已设置允许此帐户上的安全性较低的应用程序。我得到的错误是:

当我第二次尝试时,gmail 给我发电子邮件说有人试图使用正确的用户名/密码登录我的帐户,并询问是否是我。我很难过那是我,但问题仍然存在......

有什么想法吗?我需要在我的 ubuntu 上设置一些东西吗?或者我什至不能为此使用gmail smtp?我只在这个测试阶段需要它,稍后我会有其他邮件配置。

感谢任何快速信息。谢谢!

更新 1 我刚刚运行了我的 gmail 帐户安全性,我找到了被阻止尝试的列表,所以即使他们一直阻止它,尽管我说是我! 我试图找到如何将其添加到受信任的来源,但我一无所获……有什么想法吗?

【问题讨论】:

    标签: java spring smtp gmail jakarta-mail


    【解决方案1】:

    由于我没有找到方法告诉 gmail 停止阻止我自己的登录请求(即使我说是我之后它仍然阻止...),我切换到 yahoo smtp,它运行完美!这是我的配置:

    <property name="host" value="smtp.mail.yahoo.com"/>
            <property name="port" value="587 "/>
            <property name="username" value="**********@yahoo.com"/>
            <property name="password" value="*******"/>
            <property name="javaMailProperties">
                <props>
                    <prop key="mail.smtp.auth">true</prop>
                    <prop key="mail.smtp.starttls.enable">true</prop>
                    <prop key="mail.debug">true</prop>
                </props>
            </property>
    

    【讨论】:

      【解决方案2】:

      默认情况下,gmail 不允许安全性较低的应用通过身份验证。您需要在您的 gmail 帐户中打开该选项,以允许不太安全的应用通过身份验证。

      https://myaccount.google.com/lesssecureapps?pli=1

      【讨论】:

        猜你喜欢
        • 2021-10-29
        • 2019-03-14
        • 2013-02-06
        • 2022-08-17
        • 2012-06-16
        • 2011-10-09
        • 2018-06-23
        • 2013-01-02
        • 2015-10-14
        相关资源
        最近更新 更多