配置无人值守升级通知电子邮件的发件人地址

jar*_*sco 5 email unattended-upgrades

我最近使用 14.04.1 LTS 构建了一个服务器,我想要一种非常快速和简单的方法来让我知道,例如,它是否需要在安装升级后重新启动系统。我决定电子邮件是最好的选择。

我已经安装、配置并测试了 ssmtp 以使用我常用的电子邮件服务之一。

此外,我已将无人值守升级配置为在任何升级后给我发送电子邮件,至少最初是这样。

我可以从特定地址获取无人值守升级电子邮件吗?我知道我可以直接使用邮件或 ssmtp 来做到这一点,但如果我没有指定“发件人”地址,那么它默认为我的邮件服务的默认帐户,我希望它来自这台特定的机器。在哪里可以为无人值守升级使用的邮件命令指定“发件人”地址?

Aur*_*ien 7

在发现/usr/bin/unattended-upgrade

from_email = apt_pkg.config.find("Unattended-Upgrade::Sender", "root")
Run Code Online (Sandbox Code Playgroud)

因此,默认情况下,它将使用“root”作为发件人,这(至少在我的情况下)可能会因字段缺失或错误而导致电子邮件被拒绝。

您可以在 中更改发件人/etc/apt/apt.conf.d/50unattended-upgrades,例如:

Unattended-Upgrade::Sender "Unattended-upgrades Hostname <MyName@MyDomain.com>";
Run Code Online (Sandbox Code Playgroud)

  • 看来我的 Debian 服务器仍然忽略::Sender。任何想法? (2认同)
  • @MakaNu 无人值守升级将尝试使用 sendmail,然后使用 mailx (https://github.com/mvo5/unattended-upgrades/blob/88c7a4111709ca2bf9a690fc4aad4caa09f2089e/unattended-upgrade#L1508)。似乎在使用 sendmail 时,它只设置了“发件人”字段,实际上并没有更改发送的地址。因此,您需要在另一个级别覆盖它,例如 nullmailer 支持 allmailfrom 文件。 (2认同)

Fab*_*bby 4

只需在 mail.rc 文件中指定一个别名即可:

alias root root<ParticularMachine@YourDomain.com>
Run Code Online (Sandbox Code Playgroud)