向Linux内核应用安全更新是一个简单的过程,可以使用 apt
,yum
或kexec
之类的工具来完成。 但是,在管理成百上千个运行不同Linux发行版的服务器进行修补时,此方法可能具有挑战性且耗时。
手动更新内核需要重新引导系统。 这会导致停机,这可能是个问题,因此通常计划在特定的时间间隔进行重启。 由于手动修补是在这些周期内完成的,因此它为黑客提供了一个“时间窗”,使他们可以在其中攻击服务器基础结构。
对于运行多个服务器的组织,实时修补是更好的选择。 这是一种在服务器运行时自动修补Linux内核的方法,与手动方法相比,它既高效又安全。
本文介绍了如何使用Canonical和CloudLinux的实时补丁解决方案来设置自动无重启内核更新。
经典Livepatch
Canonical Livepatch是一项服务,用于修补正在运行的内核,而无需重新启动Ubuntu系统。 Livepatch服务可免费使用,最多可使用三个Ubuntu系统。 要在多于三台计算机上使用此服务,您必须订阅Ubuntu Advantage。
在安装服务之前,您需要从 Livepatch服务站点获得实时补丁令牌。
安装令牌后,通过运行以下两个命令来启用服务:
sudo snap install canonical-livepatch
sudo canonical-livepatch enable
要检查服务的状态,请运行:
sudo canonical-livepatch status --verbose
以后,如果要注销计算机,请使用以下命令:
sudo canonical-livepatch disable
相同的说明适用于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
其中是您注册试用版或购买产品时提供的注册密码字符串。 您可以在此页上找到它。
以下是一些有用的KernelCare命令:
检查KernelCare是否支持运行中的内核:
curl -s -L https://kernelcare.com/checker | python
注销服务器:
sudo kcarectl --unregister
检查服务的状态:
sudo kcarectl --info
该软件将每4个小时自动检查一次新补丁。 要手动更新,请运行:
/usr/bin/kcarectl --update
结论
实时补丁技术使您无需重新启动即可将补丁应用到Linux内核。
如果您有任何问题或反馈,请随时发表评论。