【问题标题】:Mail can't be send: Relay access denied无法发送邮件:中继访问被拒绝
【发布时间】:2012-02-02 15:22:41
【问题描述】:

我在不同的服务器上有两个 ruby​​ on rails 应用程序。两者都工作正常,但一个(服务器 2)无法发送任何邮件。
我总是收到 554 5.7.1 : Relay access denied 错误。

在服务器 2 上,我借助 telnet 测试了邮件通信,它可以正常工作,但它不适用于 ruby​​ on rails 应用程序。
其他应用程序也可以发送邮件。

两个系统之间的唯一区别是操作系统(Debian 6(服务器 1)和 RHEL 6(服务器 2))和 ip 范围(10 网络(服务器 2)和 53 网络(服务器 1))。

我认为最好的方法是使用一个简单的邮件应用程序,但我不知道如何编写这样的东西。

感谢您的帮助。

【问题讨论】:

    标签: ruby actionmailer ruby-on-rails-2


    【解决方案1】:

    第二个服务器的 IP 地址不在该电子邮件服务器的白名单中,但第一个在。

    除非您使用经过身份验证的 SMTP,否则您必须将所有应用服务器的 IP 地址添加到白名单配置中。

    使用 telnet 只会告诉您端口是否正在接受连接,而不是您是否可以实际发送电子邮件。为此,您必须执行实际的 SMTP 事务。

    有像PostmarkSendGrid 甚至我的初创公司PostageApp 这样的服务将充当您的邮件服务器。

    【讨论】:

    • 服务器 2 的 IP 被列入白名单,否则我无法通过 telnet 创建 SMTP 事务。这些邮件被传送给接收者。我编辑了我的问题以获得更多许可。
    • 您是否连接并获得了 SMTP 横幅,或者您是否真的尝试使用 HELOMAIL FROMRCPT TODATA 发送消息?除非您有防火墙或服务器配置为拒绝连接,否则始终显示横幅,这不是默认设置。尝试手动将邮件发送到 GMail 等外部帐户,以验证它是否正常工作。
    • 感谢外部邮件的建议,这就是问题所在。似乎服务器 2 的安全策略有误。通过 telnet 我只发送内部邮件,通过应用程序只发送外部邮件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-22
    • 2013-06-24
    • 2012-12-25
    • 1970-01-01
    • 1970-01-01
    • 2014-06-29
    • 2018-05-19
    相关资源
    最近更新 更多