如何在Ubuntu 16.04上安装自动安全更新

如何在Ubuntu 16.04上安装自动安全更新

安全更新是IT世界的一个组成部分。 Linux可能被认为是最安全的计算机操作系统之一,但是这并没有消除它也有漏洞,需要通过及时的安全更新来修复。 一般来说,我们需要在发布后的30天内应用Linux安全更新。

我们已经讨论过如何在CentOS上设置自动安全更新。 现在,在本教程中,我们将向您展示如何一步一步配置Ubuntu 16.04服务器以实现自动安全更新。 因此,当有关安全软件包的更新时,系统将自动下载软件包并应用更新。

我们将要做什么

  1. 在Ubuntu 16.04上安装无人值守升级
  2. 配置无人值守升级
  3. 启用自动更新
  4. 检查更新的包

先决条件

  • Ubuntu 16.04服务器
  • 根特权

第1步 - 在Ubuntu 16.04上安装无人值守升级

我们必须做的第一件事是在系统中安装“无人值守升级”软件包。 它在Ubuntu存储库中可用,我们可以使用apt命令来安装它。

使用SSH登录登录到您的服务器。

ssh root@hakase-labs

更新所有存储库并使用下面的apt命令安装“无人值守升级”。

sudo apt update
sudo apt install unattended-upgrades

安装完成后,我们需要在'/etc/apt/apt.conf.d'配置目录下编辑配置。

第2步 - 配置无人值守升级

无人参与升级配置可在“/etc/apt/apt.conf.d”目录中找到。 我们需要编辑配置来定义更新/升级类型,黑名单更新,并配置一些额外的配置。

进入“ /etc/apt/apt.conf.d ”目录,使用vim编辑器编辑配置文件“ 50unattended-upgrades ”。

cd /etc/apt/apt.conf.d/
vim 50unattended-upgrades

定义升级类型

我们需要为系统定义一种更新/升级。 无人值守升级包提供了一些自动升级类型,包括更新所有包和只是安全更新。 对于本指南,我们只想启用Ubuntu 16.04系统的“安全”更新。

在第一个块配置“Allowed-Origin”上,注释所有行,只留下安全行,如下所示。

Unattended-Upgrade::Allowed-Origins {
//      "${distro_id}:${distro_codename}";
        "${distro_id}:${distro_codename}-security";
        // Extended Security Maintenance; doesn't necessarily exist for
        // every release and this system may not have it installed, but if
        // available, the policy for updates is such that unattended-upgrades
        // should also install from here by default.
//      "${distro_id}ESM:${distro_codename}";
//      "${distro_id}:${distro_codename}-updates";
//      "${distro_id}:${distro_codename}-proposed";
//      "${distro_id}:${distro_codename}-backports";
};

黑名单包

对于第二块,它是黑名单包配置。 我们可以定义哪些软件包可以更新,哪些不可以。 有时,我们不希望更新一些软件包,因为无论出于何种原因,这对系统都是至关重要的。

在本节中,我们只是想举一个黑名单包配置的例子。 所以,假设我们不希望'vim','mysql-server'和'mysql-client'被升级,那么我们的黑名单配置应该与下面所示的类似。

Unattended-Upgrade::Package-Blacklist {
        "vim";
        "mysql-server";
        "mysql-client";
//      "libc6";
//      "libc6-dev";
//      "libc6-i686";
};

其他配置

接下来,我们要添加和启用无人值守升级提供的一些功能。 我们希望每个更新都有一个电子邮件通知,启用自动删除未使用的软件包(apt自动移除),并在需要时启用自动重新启动。

对于电子邮件通知,取消注释以下行。

Unattended-Upgrade::Mail "root";

注意:

确保您的系统上安装了mailx或sendmail软件包。 您可以使用以下命令安装邮件应用程序。

sudo apt install -y sendmail

要启用自动删除未使用的包,请取消注释以下行,并将值更改为“true”。

Unattended-Upgrade::Remove-Unused-Dependencies "true";

升级后自动重新启动(如果需要),取消“Automatic-Reboot”的注释并将值更改为“true”。

Unattended-Upgrade::Automatic-Reboot "true";

设置“Automatic-Reboot”后,服务器将在安装完所有更新包后自动重启。 但是,我们可以通过取消注释相应的配置行来配置服务器的重启时间,并更改重启值。 这是我的配置。

Unattended-Upgrade::Automatic-Reboot-Time "00:00";

保存并退出。

无人参与升级软件包已安装,所有配置已完成。

第3步 - 启用自动更新

要启用软件包的自动更新,我们需要编辑自动升级配置。

进入' /etc/apt/apt.conf.d '目录,使用vim编辑配置文件' 20auto-upgrades '。

cd /etc/apt/apt.conf.d/
vim 20auto-upgrades

进行如下配置。

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "3";
APT::Periodic::Unattended-Upgrade "1";

保存并退出。

注意:

  • 更新包列表:1启用自动更新,0代表禁用。
  • Download-Upgradeable-Packages:1启用自动下载软件包,0代表禁用。
  • AutocleanInterval:为X天启用自动清理包。 配置显示3天自动清洁包。
  • 无人值守升级:1启用自动升级,0代表禁用。

在这个阶段,所有的安全更新将自动下载并安装到系统中。

第4步 - 检查更新的软件包

检查无人值守升级日志

为了识别所有更新的软件包,我们需要检查位于'/ var / log / unattended-upgrades'目录中的无人值守升级日志。

转到“/ var / log / unattended-upgrades”目录并检查可用的日志。

cd /var/log/unattended-upgrades
ls -lah

你会得到3个日志文件。

  1. 无人参与升级-dpkg.log - 无人参与 - 升级操作日志以更新,升级或删除软件包。
  2. unattended-upgrades.log - 无人参与的日志文件。 更新/升级包列表,列表黑名单包和无人照管的错误消息(如果有错误)。
  3. unattended-upgrades-shutdown.log文件。

更新通知

识别更新软件包的另一种方法是通过SSH登录寻找更新通知。

以下屏幕截图显示了应用安全更新之前的服务器通知。

当所有安全软件包得到更新时,将显示以下消息。

电子邮件通知

对于电子邮件通知,我们已经设置了通知根邮件。

转到“/ var / mail”目录并检查根邮件文件。

cd /var/mail/
cat root

我们可以识别黑名单软件包,更新的软件包和删除的软件包。

重新启动检查

对于重新启动检查,您可以使用以下命令。

last reboot

以下是所有安全软件包升级前的结果。

这是升级后的结果。

已经安装并配置了无人参与升级软件包以进行自动安全更新。 它正在启用自动重启以及启用电子邮件通知。

参考

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏