Ubuntu如何将警报发送到外部电子邮件地址?


8

我试图了解发送电子邮件的过程。我已经配置了crontab以便将系统警报发送到我的外部电子邮件,并且工作正常。但是,我没有在这台机器上配置任何SMTP服务器,但是系统仍然可以将警报发送到外部电子邮件。这台机器是全新安装的,仅连接到互联网。

谁能帮助我了解系统如何发送电子邮件?

Answers:


11

发生这种情况是因为默认情况下(至少在16.04及更高版本)Ubuntu桌面和服务器已postfix.service启用并正在运行。您可以通过在终端中发出以下命令来确认这一点:

systemctl --type service --state running | grep postfix

发送邮件之所以可以进行工作,是因为postfix对邮件所针对的域的MX记录进行了简单的DNS查找。接收服务器仅接收它发送的邮件,并可能对其进行一些检查,然后将其放在接收者的收件箱中。因此,无需SMTP配置即可发送电子邮件。


1
感谢Videonauth,这是真的,但是它在没有配置的情况下是如何工作的。甚至没有人配置它。
Mashkoor Qadir

之所以起作用,是因为它的行为就像一个电子邮件程序,它只是告诉接收服务器“在这里,我有此地址所知用户的邮件”。实际上,如果您愿意并具有正确的知识,则您甚至可以发送电子邮件而无需提供发件人的姓名或地址。接收服务器所做的所有工作就是验证用户是否存在,可能会对邮件进行垃圾邮件检查和防病毒,然后将其放入接收者收件箱。
Videonauth

1
您可能会充实它,并通过说明后缀将对电子邮件所针对的域的MX记录进行DNS查找并将其简单地发送到该服务器,从而帮助消除OP的混乱。其他所有内容都取决于您要发送到的域的邮件交换器。
达伦(Darren)

问题被标记为server,但是您的答案是针对Ubuntu桌面的。
暂停,直到另行通知。

@DennisWilliamson:没关系,默认情况下服务器安装中也有后缀。它仅将事实内部电子邮件发送到root @ localhost以获得cron作业及其成功或失败的事实。
Videonauth
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.