Linux 系统除了 SMTP 之外的邮件发送和接收替代方案

Linux 系统除了 SMTP 之外的邮件发送和接收替代方案

我有多个运行 Ubuntu 或 Amazon Linux 的 EC2 服务器。我想运行自动系统更新,但在系统更新时收到一条消息。该yum-cron软件包可以发送电子邮件,但我不想托管电子邮件服务器。尤其是默认情况下,AWS 会阻止传出的 SMTP 消息。

在 AWS 中还有其他方法接收这些消息吗?也许将所有消息发送到 SNS、Elasticsearch 或 Systems Manager?如何配置?如何在数据中心大规模管理?

任何帮助,将不胜感激!

答案1

  1. 您可以拥有一个本地邮件系统,将所有本地生成的邮件发送到配置的智能主机,一些远程邮件程序应该完成所有艰苦的工作。您不需要像 Postfix 这样的功能齐全的本地邮件程序,而是使用基本的 MTAssmtp或类似程序。通常,您使用端口 587 或 465 上的经过身份验证的 SMTP 提交服务将邮件提交到智能主机,因此它不会被 AWS 阻止。

  2. 如果你根本不想将它们视为电子邮件,则需要做更多工作。实现此目的的一种方法是收到所有生成的邮件并将其转发到本地系统上的管道,监听管道的程序可以应用任何其他方式来处理它们。例如,使用 Postfix 可以使用|command别名目标,如|/usr/local/bin/mail-processor.sh,有关更多信息,请参阅aliases手册页。或者,您可以使用pipe运输

  3. 所有通过邮件报告的事件也会报告到本地日志中。因此,您只需丢弃所有 cron 生成的邮件(例如,创建一个接受邮件但不执行任何操作的命令别名),并且仅转发日志任何你喜欢的日志收集器,例如 ELK。

相关内容