SMS学习笔记知识点
Client DeploymentSMS Client的部署包括几个步骤
-
发现资源
首先要找到所有要安装SMS Client的机器,相关的发现方法在前面有提过。- Heartbeat Discovery DDRs是在客户端的fresh cycle时产生的,这包括SMS Client启动的时候,SMS Client的配置更新的时候,或者每隔25个小时。
- Network Discovery只为那些有IP的资源提交DDR,每个资源一条DDR。
- 从Active Directory里查询,然后尝试连接,并只为能够连接到的资源提交DDR。
-
安装SMS客户端软件
为客户计算机安装SMS Client的核心组件,方法有- Client Push Installation method,在Administartor Console上启用之后,当接到还没有安装客户端的资源的DDR时,自动启动安装。
- Logon Script-initiated Client Installation,使用登陆脚本。
- Manually,手动安装。
- Windows Group Policy,使用Windows的组策略。
- Software Distribution,使用SMS自己的软件分发。
- Imaging,包含在操作系统的映像文件里,就是随操作系统一起分发了。
如果要使用Client Push Installation,你需要有每一台机器的管理员账号(如果是域管理的环境应该没有问题)。
-
为SMS客户端指定SMS站点
指定该客户端应该归哪个站点所管理。可以在安装客户端的时候就指定,也可以事后指定或修改。- 如果SMS客户端没有指定站点,SMS Client启动后会自动查找AD里各站点的边界定义(比如IP子网和域),然后根据情况加入。如果还不能找到,就在AD或者WINS里查找Server Locator Point,让它帮忙查找SMS站点。
-
安装SMS Client Agent
如果是Legacy Client的话,还需要单独安装各种Agent。Advanced Client已经在前面安装核心组件时一起安装完成了。- Client Agent的安装和启动是由Administrator在Console上设置的。
Remote Tools
前面介绍的SMS功能都是非实时的,而且是间接的管理。而SMS的Remote Tools则提供了对客户端直接和实时的控制,具体如下。
-
远程桌面控制
除了SMS自己的远程控制,还支持XP和2003内置的Windows Remote Assistance和Remote Desktop Connection。 - 远程重启
- 远程聊天
- 远程文件传输
- 远程执行
- 远程诊断
- Ping测试
你可以从SMS站点树的任意上级站点对其下级站点上的客户端使用Remote Tools,只要该上级站点已经收集到了该客户端的Discovery Data(应该会自动初级提交上来的)。还有,必须保证上级站点能直接连接到客户端,Remote Tools的数据是不通过中间站点中转的。
使用Remote Tools之前,Remote Tools Client Agent必须已经启用。
Reporting
生成报表就是执行定义好的SQL语句,并把结果以一定的格式进行输出。报表用报表对象进行表示,其实就是SQL语句的集合。SMS已经内置了很多报表对象,用户也可以自己创建新的报表对象。
生成报表的工作是在Reporting Point上进行的,可以通过Administrator Console来连接访问,也可以通过Web页面来访问(这样就不用安装Administrator Console了)。
Reporting直接连接Site Database上的只读视图(而不是真正的表)进行查询而得到结果,不经过Site Server。
报表对象并不会自动地从上级站点传播到下级站点上,而且生成报表的时候,也只是查询本站点的Site Database,而不会查询下级站点的Database。但是因为所有的下级站点都会把数据提交上级站点,所以从上级站点还是可以查询到下级站点的数据的。
为了在站点之间共享报表对象,你需要首先把报表对象从一个站点的Site Database导出成MOF文件,再导入到另一个站点的Site Database里。
- 考虑到生成报表会对系统产生比较大的负载,所以SMS把Reporting独立出来,专门有一个Reporting Point,直接对Site Database操作,不经过Site Server。
Status System
SMS提供了一个统一的状态信息提交机制,不管是客户端还是服务端的组件都同样提交状态信息,这样就方便管理员了解系统的运行状态,并进行各种分析统计。
提交的Status会被统一保存在Site Database里。此外SMS还提供不同的组件对这些Status进行处理,比如Status Summarizer Classes就是用于对各种Status进行分类统计,并根据阈值设定触发各种提示。基本上所有的Summarizer Classes都是事件触发的,即接收到Status之后立即自动处理,而不是定时去Polling?
比如
通过Advertisement status可以了解advertised programs的进度。
通过Package status可以了解Package发布到DP上的进度。
通过Site status等可以了解各种组件的运行状态。
- 使用简单的机制上报所有状态信息,再分类处理,是个好主意!
Security
关于安全的问题会涉及很多方面的内容,这里我们只讨论与网络通讯相关的。
-
SMS站点之间
SMS使用RSA算法来对往来的数据进行签名(Sign,用于辨别发送者的身份)。但是不对数据进行加密(Encrypt,用于保证数据不被偷看)或哈希(Hash,用于保证数据不被修改),除了下列情况- Packages要有哈希值,SMS对其签名。
- SMS会对SMS账号和密码进行加密。
每个SMS站点都会有自己的密钥,是在站点创建时自动生成的。其公钥会传给上级站点,以及直接的下级站点。为了保证密钥交换的安全,SMS使用了以下几种办法
-
- 借助于Active Directory来完成交换,即由AD来保证双方的身份。
- 运行SMS附带的Preinst.exe程序以导出公钥,并手动拷贝到上下级站点的相关位置。
- 在Site属性里启用Require secure key exchange between sites,只允许可信任的密钥交换。
-
SMB签名
Server message block(SMB)是一种常见的网络协议,被Windows和SMS用于在机器之间传输文件。为防止数据在传输中间被篡改,可以对SMB进行签名。这需要发送方和接收方都支持签名,并会带来一定的性能下降。 -
Management Point和Site Server之间
MP和Site Server之间会传输策略和Advertisement等,为了安全,SMS建议- 把MP、Site Server和Site Database都安装在一台机器上。
- 在MP、Site Server和Site Database之间建立一个私有网络,并与其它网络进行安全隔离。
- 使用IPSEC或者SMB签名对MP、Site Server和Site Database之间的通讯进行加密。
关于安全,我们还有很多内容需要深入研究。
本文地址:http://www.45fan.com/dnjc/72688.html