由于WSUS服务器对补丁设置了补丁最后期限,导致Windows服务器发生自动重启。
事件
内网发生多台Windows服务器自动重启,重启时间比较一致,都是在一个晚上发生的。
分析
多台同时发生重启,初步推断不是操作系统问题,应该是统一的某些配置或任务导致。
通过事件日志分析显示,是由于更新补丁导致的自动重启。但是,这些服务器设置的是手动更新补丁,并且没有人工去点更新。
原因
最终排查到,这些补丁设置了补丁最后期限,如果设置补丁的最后期限,截止到最后期限这个补丁没有安装的话,系统会自行安装补丁并强制重启。即使在最后期限前安装了补丁,但是系统没有重启,到最后期限也会强制重启。参考微软官方说明:https://learn.microsoft.com/zh-cn/security-updates/WindowsUpdateServices/18126015?redirectedfrom=MSDN
补丁最后期限的设置,是在WSUS服务器上配置的,可以对具体某个补丁是否设置最后期限,在具体审批这个补丁时候,有最后期限的选项。
处理
对于企业生产环境的Windows服务器,当然不希望因为打补丁导致自动或异常重启。因此针对此事件,有这些相关优化措施避免补丁更新导致自动重启。
1、补丁审批分批处理,即在wsus服务器对客户端计算机分组,补丁审批分组进行,优先对测试组机器更新补丁。如果补丁更新异常,避免导致业务机器异常。
2、取消补丁最后期限设置,在WSUS服务器可以查看已审批补丁是否设置了最后期限,在标题栏勾选“最后期限”就可以看到所有已审批补丁是否设置了最后期限。
3、取消服务器设置自动安装更新,设置自动安装更新后,即使补丁没有设置最后期限,服务器也会自动重启。这个配置可以通过组策略统一配置,并且组策略优先级要高于本地设置(组策略设置了之后,本地配置将无法生效)。