如何在Linux上设置自动内核更新

评论 0 浏览 0 2020-09-05

将安全更新应用到 Linux 内核是一个简单的过程,可以使用诸如aptyumkexec等工具来完成。然而,当管理数百或数千台运行不同Linux发行版的服务器来打补丁时,这种方法可能是具有挑战性和耗时的。

手动更新内核需要重启系统。这导致了停机,可能会有问题,所以重启通常被安排在特定的时间间隔内进行。因为手动打补丁是在这些周期内完成的,这为黑客提供了一个可以攻击服务器基础设施的 "时间窗口"。

对于运行超过几台服务器的组织,实时打补丁是一个更好的选择。这是一种在服务器运行时给Linux内核打补丁的自动方法,这使得它比人工方法更有效、更安全。

这篇文章解释了如何使用Canonical和CloudLinux的实时补丁解决方案来设置自动的无重启内核更新。

Canonical Livepatch

Canonical Livepatch是一项为运行中的内核打补丁的服务,无需重启Ubuntu系统。Livepatch服务是免费使用的,最多可用于三台Ubuntu系统。要在三台以上的电脑上使用这项服务,你必须订阅Ubuntu优势计划。

在安装服务之前,你需要从Livepatch服务网站获得一个Livepatch令牌。

一旦你有了令牌,就可以通过运行以下两个命令来安装和启用服务。

sudo snap install canonical-livepatchsudo canonical-livepatch enable <your-key>

要检查该服务的状态,请运行。

sudo canonical-livepatch status --verbose

以后如果你想取消一个机器的注册,请使用这个命令。

sudo canonical-livepatch disable <your-key>

同样的说明也适用于Ubuntu 20.04和Ubuntu 18.04。

KernelCare

KernelCare对于主机供应商和企业来说是一个很好的选择。

KernelCare可以在Ubuntu、CentOS、Debian和其他流行的Linux版本上运行。它每4小时检查一次补丁发布情况,并自动安装。补丁可以回滚。KernelCare对非营利组织是免费的。

要安装KernelCare,请运行安装脚本。

wget -qq -O - https://kernelcare.com/installer | bash

如果你使用的是基于IP的许可证,就不需要做其他事情。否则,如果你使用的是基于密钥的许可证,请运行以下命令来注册服务。

/usr/bin/kcarectl --register <your-key>

其中<your-key>是你注册试用或购买产品时提供的注册关键代码字符串。你可以在这个页面得到它。

下面是一些有用的KernelCare命令。

  • 要检查运行中的kerne是否被KernelCare所支持。

    curl -s -L https://kernelcare.com/checker | python
  • 要取消一个服务器的注册。

    sudo kcarectl --unregister
  • 要检查服务的状态。

    sudo kcarectl --info
  • 该软件将每4小时自动检查新的补丁。要手动更新,请运行。

    /usr/bin/kcarectl --update

总结

实时修补技术允许你在不重启的情况下对Linux内核应用修补程序。

如果你有任何问题或反馈意见,请随时留言。

最后更新2023-08-13
0 个评论
标签