我在 Amazon AWS 的 VPC 上的实例上安装了 Rundeck。这不是默认的 VPC - 它是我使用不同的子网和安全组创建的。我的问题是这样的: Rundeck 运行良好,除了发送电子邮件外。我收到此错误:
2014-10-01 18:05:42,758 [quartzScheduler_Worker-2] ERROR grails.app.services.rundeck.services.NotificationService - Error sending notification email to email@domain.com for Execution 109: Mail server connection failed; nested exception is javax.mail.MessagingException: 501 5.0.0 HELO requires domain address . Failed messages: javax.mail.MessagingException: 501 5.0.0 HELO requires domain address
仅当在我的 VPC 中创建实例时。它位于通过 Internet 网关直接访问 Internet 的公共子网中,因此它之间没有 Nat 实例。ACL 是此子网的默认设置,安全组设置为允许所有出站。
奇怪的是,这在 Amazon 默认 VPC 中有效,但在我创建的 VPC 中无效。它们的设置完全相同。唯一的区别显然是 IP 范围 - 两者都有公共 IP,并且安全组设置相同。Sendmail 可以发送电子邮件,但 Java 似乎不能。
关于问题是什么的任何想法?我已经尝试了几件事,但我很困惑。