利用WSUS部署更新程序
WSUS概述
为了让用户的windows系统与其他microsoft产品能够更安全,更稳定,因此microsoft会不定期在网站上推出最新的更新程序供用户下载与安装,而用户可以通过以下方式来取得这些程序:
- 手动连接microsoft update网站
- 通过windows系统的自动更新功能
然而以上两种方式对企业内部来说,都可能会有以下缺点。
- 影响网络效率:如果企业内部每台计算机都自行上网更新,将会增加对外网络的负担。
- 与现有软件相互干扰:如果企业内部使用的软件与更新程序发生冲突,则用户自行下载与安装更新程序可能会影响该软件或更新程序的正常运行。
WSUS是一个可以解决上述问题的产品,企业内部可以通过WSUS服务器集中从Microsoft update网站下载更新程序,并且在完成这些更新程序的测试工作,确定对企业内部计算机没有不良影响后,在通过网管审批程序,将程序部署到客户机上。
WSUS的系统需求
对于基本WSUS架构来说,WSUS服务器与客户端计算机都必须满足适当的条件才能享受WSUS的好处。
可以在windows server 2012内通过新增角色的方式来安装WSUS。安装WSUS之前,需要安装以下组件。
- Microsoft Report Viewer Redistributable 2008:WSUS服务器需要通过他制作各种不同的报告,例如更新程序状态报告,客户端计算机状态报告与同步处理结果报告等。需要到microsoft 官网下载。
- Net framework 2.0: report viewer需要net framework。
注:WSUS服务器的系统分区与安装WSUS的磁盘分区的文件系统都必须是NTFS。
WSUS客户端计算机必须支持自动更新功能,Windows 2000 sp4以后的客户端都支持。
可以利用WSUS服务器内置的WSUS管理控制台执行WSUS服务器的管理工作,还可以在其他计算机上管理WSUS服务器。不过,需要在这些计算机上安装WSUS控制台,但是这些计算机必须已安装下列组件:
- Microsoft .NET Framework 2.0或更新版本
- Microsoft Management Console 3.0或更新版本
- Micrsoft Report Viewer Redistributable 2008或更新版本
WSUS的特性与工作方式
利用计算机组部署更新程序
如果能够将企业内部客户端计算机适当分组,就可以更容易与明确地将更新程序部署到指定计算机上。系统默认内置2个计算机组,即所有计算机与未分配的计算机,客户端计算机在第一次与WSUS服务器接触时,系统默认会见该计算机加入者2个组内。可以在添加更多的组。可以创建测试计算机组,新的补丁部署到测试计算机组,没有问题在应用到业务计算机组内。
WSUS服务器的架构
也可以创建更复杂的WSUS服务器架构,也就是创建多台WSUS服务器,并设置让其中一台WSUS服务器从microsoft 网站获取更新程序,但是其他服务器并不直接连接Microsoft网站,而是从上游的组服务器来获取程序,而下游服务器从上游服务器获得更新程序。
这种将WSUS服务器通过上下游方式串接在一起的模式有两种"
- 自治模式:上游WSUS服务器会与下游服务器共享更新程序,也就是下游服务器会从上游服务器获取更新程序,但是并不包含更新程序的审批状态,计算机组信息。因此下游服务器必须自行决定是否要审批这些更新程序与自行创建所需的计算机组。
- 副本模式:上游服务器会与下游服务器共享更新程序,更新审批与计算机组信息。下游服务器可以获取上游服务器的数据,所有可以在上游服务器管理的项目都无法在下游服务器自行管理,例如不能自行更改新程序的审批状态等。
注意,上述计算机组信息只有计算机组本身而已,并且不包含计算机组的成员,必须自行在下游服务器来管理组成员,而客户端计算机在第一次与下游WSUS服务器接触时,这些计算机会默认被同时加入到所有计算机和未分配计算机组内。
可以根据公司网络环境的需求采用上下游WSUS服务器的串接方式。
采用上下游WSUS服务器串接架构,还需要考虑到不同语言的更新,例如,如果上游服务器在总部,总部需要简体中文的程序,而下游架设在分公司,分公司需要的语言是英文,虽然总公司需要的语言是简体中文,当必须在中公司的上游服务器选择同事下载中文和英文版的更新程序。连接Microsoft网站的上游服务器必须下载所有下游服务器需要的所有语言的更新程序,否则下游服务器将无法获取所需语言的更新程序。
注:这种上下游串联的方式,建议最好不要超过3层(虽然理论上没有层数限制),因为每增加一层,就会增加延迟时间,因而拉长将更新程序传递到每台计算机的时间。
选择数据库与存储更新程序的地点
可以利用Windows Server 2012的内置数据库或Microsoft SQL Server 2005 sp2来构建数据库。每台WSUS服务器都有自己独立的数据库,这些数据库用来存储以下信息:
- WSUS服务器的设置信息。
- 描述每一个更新程序的metadata。Metada内包含以下数据:
更新程序的属性:例如更新程序的名称,描述,相关的knowledge base文章编号等。
适用规则:用来判断更新程序是否适用于某台计算机。
安装信息:例如安装时所需的命令行参数。
- 客户端计算机与更新程序之间的关系。
然而上述数据库并不会存储更新程序文件本身,必须另外选择更新程序文件的存储地点,有以下两种选择。
存储在WSUS服务器的本地硬盘内:此时WSUS服务器会从Microsoft网站下载更新程序,并将其存储到本地硬盘内。此种方式让客户端直接从WSUS服务器获取更新程序,不用到Microsoft网站下载,这样可以节省网络带宽。
WSUS服务器的硬盘必须有足够空间来存储更新程序文件,最少要有20g的可用空间。实际需要更多的空间。
存储在Microsoft网站上:此时WSUS服务器并不会从Microsoft网站下载更新程序,换句话说,当执行WSUS服务器与Microsoft网站之间的同步工作时,WSUS服务器只会从网站下载更新程度的metadata数据,并不会下载更新程序本身。
因此,当你审批客户端可以安装某个更新程序后,客户端是自己连接到网站下载。如果客户端计算机数量不多,或客户端与WSUS服务器之间的连接速度比较慢,但是与网络之间的连接速度较快时,可以选择此选项。
延期下载更新程序
WSUS允许你延期下载更新程序文件,也就是WSUS服务器会先下载更新程序的metadata,之后再下载更新程序文件。更新程序文件只有在你审批该程序后才会被下载,这种方式可以节省带宽与WSUS服务器的硬盘空间使用量。Microsoft建议你采用延迟下载更新的方式,也就是默认值。
使用快速安装文件
客户端计算机要安装更新程序时,此计算机内可能已经有该更新文件的旧版本,这个旧文件和新更新之间的差异可能不大。如果客户端能够只下载新版与旧版之间的差异,然后利用将差异合并到旧文件的方式来更新,可以减少从wsus服务器下载的数据量,降低企业内部网络的负担。
不过采用这种方式,WSUS服务器从Microsoft网站下载的文件会比较大,因为此文件内必须包含新更新程序和各旧版自己的差异,因此WSUS服务器在下载文件时会占用对外的网络带宽。
例如,假如更新程序原始大小100mb,未使用快速安装的情况,此服务器会从microsoft网站下载100mb的文件,客户端也是从服务器下载100mb的数据量。使用快速安装的情况下,此文件变为比较大的200mb(假设)。虽然WSUS服务器必须从microsoft下载的文件大小为200mb,但是客户端从WSUS服务器仅下载30mb的数据量,系统默认未使用快速安装文件。
安装WSUS服务器
构建WSUS并不需要AD域环境,然而为了利用组策略来充分管理客户端的自动更新设置,建议采用AD域环境。
我们将利用下图所示的环境进行说明。安装一台域控DC,WSUS服务器为成员服务器,计算机名为WSUS;另外,图中多台客户端可以为win7,win8等,我们假设他们也都加入域。
- 直接安装report viewer 2012 最新版和clr typer for sql 2012
http://www.microsoft.com/zh-cn/download/details.aspx?id=35747
http://go.microsoft.com/fwlink/?LinkID=239644&clcid=0x409
- 添加功能
- 需要net framework
- 选择数据库。使用内置数据库,如果要使用SQL数据库,勾选数据库。
- 选择存储位置
- Web服务器选择默认
- 等到安装完成
- 选择让WSUS服务器与Microsoft Update同步,让服务器直接从Microsoft网站下载更新程序与Metabase等。
- 如果服务器需要通过企业内部的Proxy服务器联网,请在下图输入相关信息。
- 点击开始连接,以便从Windows Update网站取得更新程序相关信息。
- 选择下载语言
- 选择需要下在的更新产品。默认系统会选择office和windows的更新,由于是实验环境就少选点
- 选择下载所需类型
- 选择手动或自动同步。选择自动同步,需要设置第一次同步的时间与每天同步的次数。
- 执行第一次同步工作
- 可以查看当前同步进度。
- 如果要手动同步,选择同步选择中的立即同步
如果要将手动同步改成自动同步,需要设置同步计划。前面安装的所有设置,都可以通过选项界面进行更改。在同步尚未完成之前,无法存储更改的设置,需要等待同步完成后更改设置。
设置客户端的自动更新
我们要让客户端计算机能够通过WSUS服务器下载更新程序,而这个设置可以通过以下两种方法来完成。
组策略:在AD域环境下,可以通过组策略进行设置。
本地计算机策略:如果没有AD域环境,或客户端计算机未加入域,则可以通过本地计算机策略进行设置。
我们利用组策略来进行说明。在域中创建一个GPO,WSUS策略,然后通过这个GPO来设置域内的所有客户端计算机的自动更新配置。
- 新建组策略
- 展开计算机配置-策略-管理模板-windows组件。选择启用配置自动更新。
- 通知下载并通知安装:在下载更新程序前会通知已登录的系统管理员,由他自行决定是否现在下载;下载完成后和准备安装前也会通知系统管理员,然后由他自行决定是否现在安装。
- 自动下载并通知安装:自动下载更新程序,下载完成后和准备安装前会通知已登录的系统管理员,然后由他自行决定是否现在安装。
- 自动下载并计划安装:自动下载更新程序,并且会在指定的时间自动安装。需要指定安装时间。
- 允许本地管理员选择设置:此选项让在客户端的本地管理员可以通过控制面板自行选择更新方式。
- 选择指定intranet Microsoft更新服务位置,然后指定让客户端从wsus服务器获取更新程序,同时也设置让客户端将更新结果报告给WSUS服务器,这两处请输入http://wsus:8530。
设置完成后,必须等域内的客户端应用这个策略才能有效,而客户端计算机默认每隔90-120分钟应用一次。到客户端计算机上执行gpupdate/force命令。
应用完成后,还必须等客户机与wsus服务器接触后,在wsus管理控制台才能看到这些客户机。不过需要等待20分钟才会主动联系WSUS服务器。在客户机上执行wuauclt/detectnow 命令。
审批更新程序
在wsus管理界面可以看到所有客户端机器,如果还有机器仍为显示,可以想到这些计算机上执行组策略刷新命令。
注:如果客户端有新的更新状态可报告,而你希望立即报告,请到客户端计算机上执行wuauclt/reportnow.
创建新计算机组
为了便于利用WSUS管理控制台来部署客户端计算机所需的更新程序,建议将计算机进行分组。例如要创建一个名为业务部计算机的组,并将隶属于业务部的计算机移动到此组内。
- 选择添加计算机组。
- 将隶属于改组的计算机从未分配的计算机组移动到刚刚创建的业务部计算机组中。
审批更新程序的安装
WSUS下载的所有更新程序都要经过审批后,客户端计算机才可以安装此更新程序,此处假设要审批某个安全更新,以便让业务组计算机安装此更新。
由于WSUS默认会延迟下载更新程序,也就是WSUS服务器与Microsoft Update同步时仅会下载更新程序的metadata。当我们审批更新程序后,更新程序才会下载。由于我们刚审批上述更新,WSUS服务器正要开始下载此更新,必须等下载完成后,客户端计算机才可以开始安装此更新。
下图,审批栏目出现了安装1/3字样,表示当前有3个计算机组,只有其中一个组已经被审批安装此更新。
客户端默认每隔17.6-22小时才会连接服务器检查是否有更新程序下载,可利用wuauclt/detectnow来手动检查。检查到后根据组策略的设置来进行更新。
客户端可以通过组策略自动更新检测频率来更新检查时间。如果希望客户端计算机能够早一点自动检测,可以修改此值。
只要客户端检查到可用下载,会自动右下角提示有更新。
拒绝更新程序
单击某个程序右侧的拒绝,则系统将解除其审批,同时在WSUS数据库内与此更新有关的报告数据都将删除,还有在此界面上也看不到此更新程序。如果要看到被拒绝的更新程序,请到审批处选择已拒绝后单击重新整理。
自动审批更新程序
可以设置当WSUS服务器与Windows Update同步时,自动审批下载的更新程序。例如,如果希望所有下载的安全更新与重要更新都能够自动审批给所有计算机:单击选项中的自动审批,在前景图中勾选默认的自动审批规则。如果还要将此规则应用到已经同步的更新程序,请单击允许规则。
单击高级标签后,还可以更改以下设置。
- WSUS更新:可以用来设置是否要让WSUS产品本身的更新程序自动被审批。
- 更新修订
自动审批已审批的更新的修订:如果已审批的更新程序未来有修订版,则自动审批此修订版本的更新程序。
当新修订导致更新过去时自动拒绝更新:当未来有新修订版本出现,而使得旧版本过期时,则自动拒绝这个过期的旧更新程序。
自动更新的组策略设置
本站介绍更多的关于自动更新的组策略,以便进一步管理客户端计算机与WSUS服务器之间的通信方式。通过另外创建GPO的方式进行配置,尽量不要通过内置的Defult Domain Policy GPO进行设置。
配置自动更新
此策略用来配置客户端下载与安装更新的方式。
指定Intranet Microsoft更新服务位置
用来指定让客户端计算机从WSUS服务器获取更新程序。
自动更新频率
用来设置客户端多久与服务器连接,检查是否有新更新程序。
允许立即安装自动更新
当更新程序下载完成并且准备好安装时,会根据配置自动更新的策略来决定何时更新。启用此策略后,某些新程序会立刻安装。这些更新是指那些即不会中断Windows服务,也不会重新启动Windows系统的更新程序。
重新计划自动更新计划的安装
如果通过计划制定某个时间点来执行安装更新程序,但是时间到达时,客户端计算机却没有开机。此策略用来设置客户端计算机重新开机后,需要等多少时间后开始安装更新。
允许客户端目标设置
应用此设置的所有计算机会自动加入指定的计算机组内,不需要管理员手动加入。
下图,所有计算机会自动加入业务组计算机。
允许来自Intranet Microsoft更新服务位置的签名更新
如果此策略启用,客户计算机就可以从WSUS服务器下载由第三方开发和签名的更新程序;如果未启用,客户端只能下载Microsoft签名的更新程序。
删除到Windows更新的链接和访问
虽然WSUS客户端可以通过WSUS服务器来进行更新,但是系统本地管理依然可以通过开始菜单的windows更新来私自连接Microsoft Update网站。为了减少这种情况发生,建议通过此策略将客户计算机的windows update链接删除。完成后开始菜单的连接不会显示,控制面板的更新检查更新也会失效。
用户配置-策略-管理模板-开始菜单和任务栏
关闭对所有Windows更新功能的访问
如果启用此策略,则会禁止客户端访问Microsoft更新网站,例如客户端通过开始菜单的Windows更新链接无法访问Windows Update网站,直接在浏览器里输入windows update网页也无法访问,不过客户机依然可以通过WSUS来获取。
计算机配置-策略-管理模板-系统-internet通信管理-internet通信设置
利用WSUS部署更新程序的更多相关文章
- 利用Pycharm部署同步更新Django项目文件
利用Pycharm部署同步更新Django项目文件 这里使用同步更新的前提是你已经在服务器上上传了你的Django项目文件. 在"工具(Tools)"菜单中找到"部署(D ...
- Azure App Service(一)利用Azure DevOps Pipeline 构建镜像,部署应用程序
一,引言 起因是前两天项目上做测试,需要我把写好的基于.NET 5 的 Web 测试程序作成 Docker 镜像.当我在本地验证完功能后,准备利用 Docker 构建应用程序镜像的时候,发现系统不支持 ...
- [core java学习笔记][第十章部署应用程序]
第10章 部署应用程序和applet jar文件 Java Web Start 10.1 jar文件 jar文件就是一个压缩了类,图像和声音的ZIP压缩文件 创建一个新的JAR文件应该使用的常见命令格 ...
- 企业IT管理员IE11升级指南【11】—— 通过SCCM 2012和WSUS部署Internet Explorer 11
企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...
- Java核心技术卷一基础知识-第10章-部署应用程序和applet-读书笔记
第10章 部署应用程序和applet 本章内容: * JAR文件 * Java Web Start * applet * 应用程序首选项存储 10.1 JAR文件 一个JAR文件既可以包含类文件,也可 ...
- 转:ClickOnce部署Winform程序的方方面面
1. ClickOnce简介 微软官方对ClickOnce的解释是:ClickOnce 是一项部署技术,您可以利用这项技术来创建基于 Windows 的自行更新的应用程序,并且安装和运行这类应用程序所 ...
- 关于asp.net利用mono部署到Linux上的一些说明
linuxdot.net社区群:102732979(如果你认为你已经在.NET跨平台方面有足够的经验,请参加这个群:103810355). 其中有各种大神,嘿嘿,如果你有问题可以来咨询,完全无偿的免费 ...
- 更新日志(建议升级到2016.12.17) && 更新程序的方法
更新程序的方法: 1,在控制面板里点击备份当前数据库文件到磁盘,把当天获取的信息从内存写到磁盘/存储卡.2,下载最新版的源码 wget -O "infopi.zip" " ...
- 利用manifest文件对程序目录下的dll进行分类
1 背景 对于大部分的券商和机构投资者,只能通过有交易所交易系统接入资质的券商提供的柜台系统来进行现货交易.相对于期货市场,现货市场的柜台系统千差万别,接入协议有明文字符串.二进制数据和FIX协议等, ...
随机推荐
- 同一容器中a标签比较多的情况下通过title属性值隐藏
同一容器中a标签比较多的情况下如何通过title属性值控制a标签的隐藏或显示 最近项目中遇到一个IE兼容性问题,网站需要在底部footer添加"站长统计"代码,容器中动态添加很多a ...
- DokuWiki的发现之旅
★DokuWiki介绍 Wiki是什么?是一种允许一群用户用简单的描述来创建和连接一组网页的社会计算系统,可以让人们在web的基础上对Wiki文本进行浏览.创建和更改,是一种人类的知识的网络系统,有助 ...
- 在WebStorm里配置watcher实现编辑less文件时自动生成.map和压缩后的.css文件
[文件(File)]-[设置(Settings)]-[工具(Tools)]-[File Watchers]-[+]-[Less]打开New Watcher配置界面. https://blog.csdn ...
- ASP.NET MVC默认配置如有跳转到指定的Area区域中的对应程序中
今天在搭建一个基于MVC的项目,因为项目涉及到了手机和pc端,为了方便和减少二者之间的耦合我在区域(Areas)中建立了两个 程序空间,那么问题来了我想让程序默认跳转到我所指定的areas中的对应项目 ...
- Harbor---docker镜像仓库搭建
在用docker,kubernetes时registry是重要的一环,下面就来搭建一个镜像仓库.之前在公司时有资源域名,有做ssl证书,今天没条件就不做ssl证书和域名了. 1,下载 harbor 安 ...
- 学python走过的坑一 类的实例化
运行结果:line 21, in <module> s=speaker('ken',10,'aaa')TypeError: __init__() missing 1 required p ...
- css两列布局之基于BFC规则实现
css要实现常见的自适应两列布局的方式方法挺多. 这里讲的是利用设置overflow不为visible时会形成新的BFC来实现.至于什么是BFC,可以搜搜看先,基本都讲的差不多了.等有更多空余时间,专 ...
- pandas操作
python中使用了pandas的一些操作,特此记录下来: 生成DataFrame import pandas as pd data = pd.DataFrame({ 'v_id': ["v ...
- 关于 Docker 镜像的操作,看完这篇就够啦 !(上)
文章首发于微信公众号: 小哈学Java 镜像作为 Docker 三大核心概念中,最重要的一个关键词,它有很多操作,是您想学习容器技术不得不掌握的.本文将带您一步一步,图文并重,上手操作来学习它. 目录 ...
- 面向对象之七大基本原则(javaScript)
1. 前言 2. 单一职责 3. 开闭原则 4. 里氏替换 5. 依赖倒置 6. 接口隔离 7. 迪米特法则 8. 组合聚合复用原则 9. 总结 1. 前言 面向对象编程有自己的特性与原则,如果对于面 ...