众多的操作系统和补丁,以及太多的补丁内容,在你的企业内部,有关补丁更新这一块的策略是什么样的,或者说是,我就是不更新,有问题了再更新的,或者说至更新安全的,关键的补丁等等,欢迎大家来说道说道。
收起操作系统的补丁更新,最大的问题是对生产的影响较大,例如,内核的更新、glibc、openssl的更新都需要重启服务器,这就会带来业务停机(大家不要跟我讨论互联网的分布式架构,传统企业中大部分业务系统还是单机或者HA模式在跑,再说了,就算是分布式架构,你试试所有服务器都重启一遍啥感受)。而一个关键的漏洞,例如脏牛、心脏滴血,都是需要更新这些包的。
就是这个原因,我们经常看到在很多客户机房里,2015、2016年的关键补丁迄今还没有进行更新,这样系统风险还是很大的,特别是对公众提供服务的服务器。
所以,近几年,LInux的内核热补丁技术开始发展,例如Oracle Linux的KSplice,Red Hat Enterprise Linux的KPatch。 这些都可以不重启便给内核的运行态进行升级。
相比来说,Oracle Linux的 KSplice年头比较长,比较稳定,并且,和其他相比的最大优势就是,ksplice还能提供针对用户态关键程序的热补丁,例如我们所说到的openssl,只有ksplice才能实现热补丁。其他的目前还不可以。