显然有一种方法可以检查更新是否为安全更新。我经常收到一条提示“有 N 个安全更新”的 motd。
我想要做的是让我的服务器通过电子邮件向我发送一份出于安全原因需要更新的软件包列表。
更进一步的是,该电子邮件将链接到 Ubuntu 适用的安全通知。
基本上,每台服务器都有些独特。我在安全邮件列表中收到了几封电子邮件,询问我尚未在任何/所有服务器上安装的软件包。所以我希望每台服务器都告诉我它需要什么。这样我就可以及时应用更新,同时避免重新启动 Apache 等会导致用户停机的服务。
我怎样才能做到这一点?
答案1
您可以使用名为的工具apticron
在有新更新可用时通知您。它会向您发送有关待处理升级的电子邮件,同时还允许您选择仅向您发送有关之前未通知的更新的电子邮件。
要设置apticron
编辑/etc/apticron/apticron.conf
并更改包含电子邮件地址的行:
EMAIL="[email protected]"
输入您希望接收通知的电子邮件地址。
有关详细信息,请参阅曼阿普蒂克隆。
答案2
摘自之前的帖子。您可以通过命令行运行安全升级。
sudo unattended-upgrade
我检查过了,你也可以使用命令行选项
sudo unattended-upgrade --dry-run
下载但不安装更新。
运行程序时我没有得到任何输出,我认为这是因为我的系统设置为自动更新。如果你能从中得到输出,只需弄清楚更新和待处理的更新是什么样子,然后编写一个 shell 脚本向您发送一封包含待处理更新输出的电子邮件。
然后将该脚本作为 cron 作业运行。
注意:使用crontab -e以 root 身份运行作业。
答案3
根据:https://ubuntu.com/server/docs/package-management
在 /etc/apt/apt.conf.d/50unattended-upgrades 中配置 Unattended-Upgrade::Mail 将使 unattended-upgrades 能够向管理员发送电子邮件,详细说明任何需要升级或有问题的软件包。
我认为这将与您的仅范围安全更新设置相结合。