在本教程中,我们将学习如何在 Ubuntu 上使用 Canonical Livepatch 服务在不重启的情况下修补 Linux 内核,该服务使用上游 Linux 内核实时修补技术在不重启的情况下应用关键内核补丁。
这将有助于您网站的正常运行时间。 我将此功能用于运行此博客的服务器。 livepatch 服务允许您的服务器保持正常运行和安全,因此您可以稍后重新启动服务器。 对于我的其他服务器,比如不需要长时间运行的邮件服务器,我只需配置无人值守的安全更新,如果安装了新内核,它可以指示我的服务器在凌晨 4 点自动重新启动。
Canonical livepatch 服务对最多 3 台机器(笔记本电脑、服务器或云)免费。 要使用此服务,您的系统必须是具有 Linux 内核 4.4+ 的 64 位 Ubuntu 操作系统。
暗示:Livepatch 安全更新不适用于 Ubuntu 20.10。
使用 Canonical Livepatch 服务在不重启的情况下修补 Linux 内核
首先,转到 Canonical Livepatch 服务页面。 选择 Ubuntu用户 如果您想在不支付最多 3 台机器的情况下使用该服务。 如果您是 UA 客户,请选择 Ubuntu 优势客户. 然后点击 获取您的 Livepatch 令牌.
您需要使用完全免费的 Ubuntu One 帐户登录。 登录后,您将获得帐户的密钥。
然后确保您的 Ubuntu 系统上安装了 snap 守护程序。
sudo apt update sudo apt install snapd
接下来,安装 canonical-livepatch
守护进程。
sudo snap install canonical-livepatch
使用以下命令启用服务。
sudo canonical-livepatch enable your-secret-key
示例输出:
Successfully enabled device. Using machine-token: 2ca4f0662793daje0393jdaf39332d
您可以随时通过以下方式检查实时补丁状态:
canonical-livepatch status --verbose
可能的补丁状态是:
nothing-to-apply
: 没有发现漏洞。applied
: 发现漏洞并应用补丁kernel-upgrade-required
:Livepatch 无法安装补丁来修复当前正在运行的内核上的漏洞。
您还可以手动运行修补程序:
sudo canonical-livepatch refresh
请注意,内核补丁与将内核升级到最新版本不同。
- 实时内核补丁:修复当前运行的 Linux 内核中的漏洞。
- 升级内核:升级到更新的内核。 需要重新启动才能使用新内核中的新功能。
在 Ubuntu 上修补 Linux 内核的新方法
上述方法仍然有效,但 Ubuntu 正在过渡到一种新方法,它为您带来以下好处:
SERVICE ENTITLED DESCRIPTION cis yes Center for Internet Security Audit Tools esm-infra yes UA Infra: Extended Security Maintenance (ESM) fips yes NIST-certified core packages fips-updates yes NIST-certified core packages with priority security updates livepatch yes Canonical Livepatch service
首先,您需要创建一个 Ubuntu Advantage 帐户。 (它有一个免费层:UA Infra Essential)。 然后将您的 Ubuntu 服务器附加到您的 Ubuntu 帐户。
sudo ua attach your-token
安装 livepatch
守护进程。
sudo snap install canonical-livepatch
在您的系统上启用 livepatch。
sudo ua enable livepatch
检查您的状态:
sudo ua status
总结
我希望本教程可以帮助您使用 Canonical Live Patch 服务来更新具有最高和最关键安全漏洞的 Ubuntu LTS 系统,而无需重新启动。 订阅我们的免费时事通讯 获取最新的 Linux 教程。 您也可以在 Twitter 上关注我们或喜欢我们的 Facebook 页面。