在Amazon EC2服务器上接收电子邮件

我刚刚开始使用EC2实例,并取消了我的邮件发送限制,允许我从实例发送邮件。 但由于缺乏经验,我不知道如何启用在该服务器上发送给我的接收电子邮件

该实例有一个弹性的IP,我有一个域名的Alogging指向该IP。 我似乎无法find更好的文档,说明需要采取什么措施,所以如果有人向[email protected]发送电子邮件,它实际上会收到邮件,或者只是将邮件转发给我的个人电子邮件。

我知道它涉及到使用后缀,但找不到安装后正确configuration它的指南。

  • 指向您的服务器的logging。
  • MXlogging指向您的Alogging。
  • 监听端口25的邮件守护进程 – 我倾向于Postfix。
  • 防火墙规则允许端口25接受连接。 在EC2上,您需要在安全组中进行设置

我遇到了类似的问题。 我有一个MXlogging设置和端口畅通的安全策略,但端口扫描仍然显示端口25被阻止。

我在AWS论坛上遇到了这个问题 。 看起来你必须要求特别解除你的端口25 / 445. http://mxtoolbox.com/应该是有用的testing你的服务器。

您需要安装一个SMTP守护程序(例如安装了postfix),因此需要AWS安全组中为初学者打开的端口。

然后,您可以按照configuration指南 – 看看后缀的基本configuration指南。

简而言之,你会希望100%确定你不是一个开放的依赖者。 下面是一个简单的基于用户名的传递的基本main.cf,我使用:

 smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU) biff = no append_dot_mydomain = no myhostname = mail.domain.com alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases mydestination = hostname.domain.com, localhost.mydomain.com, localhost relayhost = mynetworks = 127.0.0.0/8 #mailbox_command = procmail -a "$EXTENSION" mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all smtpd_helo_restrictions = permit_mynetworks, #reject_non_fqdn_hostname, reject_invalid_hostname, permit 

另外值得注意的是,直接从ec2实例发送邮件可能会导致它们被标记为垃圾邮件。

使用亚马逊的SES服务来解决这个问题 – 但是也要注意这个系统中有一些已知的错误,例如mac osx默认的MIMEtypes,用于阻止JPEG图像。

如果你能把邮件发送到别的地方,我会这样做,因为实施愚蠢的SES“function”的解决方法可能会变得很痛苦。