Phone:
(701)814-6992

Physical address:
​6296 Donnelly Plaza
Ratkeville, ​Bahamas.

unattended-upgrades

如何在Debian上设置无人值守自动更新

本指南向您展示如何使用*无人值守升级服务在 Debian 系统上自动设置更新。

确保 Linux 服务器安全的核心部分之一是按时安装安全更新。这是 Linux 管理员使系统保持最新状态的关键任务之一。此外,它还可以使您的系统更加稳定和安全。

Related: How to Use APT with Proxy on Ubuntu and Debian
相关:如何在 Ubuntu 和 Debian 上使用带有代理的 APT

因此,作为系统管理员,定期更新服务器并应用安全补丁是保持服务器稳定和安全的重要任务之一。但是,如果管理员忘记了这一点或认为此任务是理所当然的,则可能会导致严重的安全威胁。

这个简单的教程将向您展示如何配置 Debian 系统以接收自动安全更新。当然,有很多方法可以实现自动化。但是,我们将采用官方方法。

在 Debian 上安装无人值守升级包

首先,如果您的系统上尚未安装 unattended-upgrades 软件包,您可以在控制台中使用以下命令安装它:

sudo apt update
sudo apt install unattended-upgrades

Install unattended-upgrades package on Debian

在 Debian 上配置自动更新

无人值守升级的配置文件位于 /etc/apt/apt.conf.d/ 目录。它的名称是 50unattended-upgrades 。您可以使用任何文本编辑器对其进行编辑。

默认情况下,仅启用安全更新所需的最少选项。通过从行开头删除 // 来取消注释文件中的以下行:

sudo vim /etc/apt/apt.conf.d/50unattended-upgrades
"origin=Debian,codename=${distro_codename}-updates";
"origin=Debian,codename=${distro_codename}-proposed-updates";
"origin=Debian,codename=${distro_codename},label=Debian";
"origin=Debian,codename=${distro_codename},label=Debian-Security";
"origin=Debian,codename=${distro_codename}-security,label=Debian-Security";

Configure automatic updates on Debian

完成后,保存并退出文件。

启用电子邮件通知

如果您希望在每次自动安全更新后收到来自 Debian 系统的电子邮件通知,请修改以下行(取消注释并添加您的电子邮件 ID)。

Before:

//Unattended-Upgrade::Mail "";

After:

Enable automatic updates e-mail notification

当然,请将电子邮件地址替换为您当前想要接收通知的电子邮件地址。

自动删除未使用的依赖项

此外,您可能需要在每次更新后运行 sudo apt autoremove 命令以从系统中删除未使用的依赖项。现在,您可以通过在以下行中进行更改来自动执行此任务(取消注释并将 false 更改为 true )。

Before:

//Unattended-Upgrade::Remove-Unused-Dependencies "false";

After:

Auto remove unused dependencies

在 Debian 上启用自动更新

要启用无人值守升级,您需要配置 /etc/apt/apt.conf.d/20auto-upgrades 文件。为此,请在控制台中发出以下命令:

sudo dpkg-reconfigure --priority=low unattended-upgrades

运行上述命令后会出现以下窗口,自动询问您是否要自动下载并安装稳定更新。使用 Tab 键选择 Yes 选项并按 Enter

Enable unattended-upgrades

/etc/apt/apt.conf.d/20auto-upgrades 文件将更新为以下内容:

Enable automatic updates on Debian

要查看 unattended-upgrades 服务是否已启用并正在运行,您可以发出如下命令:

sudo systemctl status unattended-upgrades.service

Check automatic updates service status

从输出中可以看到, unattended-upgrades 服务已启用以自动安装更新。

如果该服务未被允许且未启动,您可以通过键入以下内容来执行此操作:

sudo systemctl enable unattended-upgrades
sudo systemctl start unattended-upgrades

当系统执行无人值守升级时,它会将此活动记录在 /var/log/unattended-upgrades/ 目录下的文件中。

禁用 Debian 上的自动更新

要禁用无人值守升级,请发出如下命令:

sudo dpkg-reconfigure --priority=low unattended-upgrades

将出现以下窗口,询问您是否要自动下载并安装稳定更新。使用 Tab 键选择 No 选项并按 Enter

Disable automatic updates on Debian

Disable automatic updates on Debian

结论

通过在 Debian 服务器上启用自动更新,您已经采取了重要的一步来保护您的服务器免受漏洞影响。

手动更新系统和应用补丁可能是一个非常耗时的过程。所以 unattended-upgrades 节省了大量时间。

unattended-upgrades 实用程序会在最新的更新和安全补丁可用时自动安装它们,从而使您的系统保持最新且安全。