如何在AWS EC2上将端口587用于Gmail SMTP?

时间:2017-07-11 13:56:33

标签: amazon-web-services amazon-ec2 smtp port inbound-security-rule

我在本地服务器上使用了端口587的Gmail SMTP服务,但它运行正常。

但它不适用于AWS EC2实例。所以我在EC2实例安全入站规则中添加了SMTP规则,请参见下图,但SMTP端口无法编辑。

现在的问题是,如果您的域未配置enter image description here安全连接。 Gmail在不安全的连接中不提供端口25。

因此,有任何方法可以在25端口或任何其他方式的不安全连接上使用SMTP。

4 个答案:

答案 0 :(得分:7)

到目前为止,我已修复了开发服务器的问题。请注意,这不是生产网站的正确方法。

要使用Gmail SMTP服务从AWS EC2发送电子邮件,请按以下步骤操作。

  1. 编辑EC2实例的安全组。
  2. 编辑安全组的入站规则。
  3. 在入站规则中添加587端口。见下图。
  4. 您需要为即将发送的邮件设置实例入站规则,并为发送设置出站。

    enter image description here

    之后,您可以使用AWS EC2中的587 SMTP端口发送电子邮件。

    请阅读这篇文章。 https://support.google.com/accounts/answer/6010255?hl=en

    https://myaccount.google.com/lesssecureapps

答案 1 :(得分:2)

由于历史上一直是使用EC2实例的人发送的垃圾邮件,几乎所有流行的邮件提供商都阻止了来自EC2实例的电子邮件的接收。电子邮件和反垃圾邮件措施的世界既是技术层面的,也是政治层面的。因此,AWS提供了Amazon Simple Email Service。

修复步骤-

  1. 转到Google帐户设置,然后启用两步验证。
  2. 现在为您要发送邮件的应用程序生成一个应用程序密码。
  3. 使用具有相同电子邮件地址的SMTP应用程序生成的密码。

就是这样。

答案 2 :(得分:1)

根据Googles文档,您可以通过端口25使用G Suite SMTP中继服务。您可以在此处阅读更多信息:

https://support.google.com/a/answer/176600?hl=en

在这里:

https://support.google.com/a/answer/2956491

希望这有帮助!

答案 3 :(得分:0)

要从Amazon EC2上托管的C#发送电子邮件,请确保您已完成两件事。

  1. 在Web.config中使用以下设置
<mailSettings>
      <smtp deliveryMethod="Network" from="<from email goes here>">
        <network host="smtp.gmail.com" port="587" enableSsl="true" userName="email id goes here" password="<password goes here> />   
      </smtp>
    </mailSettings>
  1. 将上述gmail帐户登录到Amazon EC2。如果您未登录,出于安全原因,gmail会阻止从代码发送的电子邮件。