Win 2008事件日志通过邮件发送给管理员设置方法

在Windows Server 2008中提供了一项新功能,通过它我们可以实现服务器事件日志的转发和订阅,就可以自定义将特定的服务器事件日志集中起来管理了。下面笔者部署环境,对此进行实例演示。
  环境描述:
  本文以域环境为例进行演示,有两台服务器:一台为server1,作为源服务器,以转发日志到日志服务器;一台为server2,作为日志服务器,以订阅源服务器上转发的日志。
  任务目标:
  将server1服务器过去的24小时内ID为100的错误系统日志实时转发到日志服务器server2中,并且一旦server1上有符合设定的日志,在server2上会以消息框的形式通知管理员。
  实现过程:
  1.创建自定义视图
  以管理员身份登录server1服务器,依次单击“开始”→“运行”,输入eventvwr.msc打开“事件查看器”窗口。在左窗格中点击选中“自定义视图”,然后点击展开“操作”菜单选择“创建自定义视图”命令。在“创建自定义视图”向导窗口的“筛选器”标签页中,设置“记录时间”为“过去的24小时”,“事件级别”为“错误”,“事件日志”为“系统”。设置完毕后单击“确定”退出,在弹出的“将筛选器保存到自定义视图”对话框中,我们为视图命名为“Error Events (24 hours)”,然后“确定”退出。这样可以在“自定义视图”下看到刚才创建的名为“Error Events (24 hours)”的视图。(图1)
巧用转发和订阅集中管理服务器日志
2.将自定义事件添加到系统日志
  其实,这一步在实战中是不需要的,笔者之所以加这一步是为了检验我们创建的自定义视图的效果,即创建一个自定义的特定事件,然后看看在自定义视图中是否会出现。在server1服务器中以管理员身份运行命令提示符,然后执行命令“Eventcreate /T ERROR /ID 100 /L SYSTEM /D “Application Error #1” /SO MyApp”,可以看到该命令成功执行,通过该命令我们自定义了一个事件。Eventcreate命令用于创建事件日志,参数“/T”用于指定事件的级别为“ERROR”,参数“/ID”用于指定事件ID为“100”,参数“/L”用于指定事件的类型为“SYSTEM”,参数“/D”是事件的描述“Application Error #1”,参数“/SO”是事件的来源即“MyApp”。自定义日志创建完毕后,我们重新打开“事件查看器”,定位到“自定义视图”下的“Error Events (24 hours)”上,展开“操作”菜单选择“刷新”命令,刷新完毕后就可以看到我们刚才自定义的事件,因为它符合我们刚才创建的自定义视图的筛选条件,同时也验证了我们创建的自定义视图是正确的。(图2)
 

巧用转发和订阅集中管理服务器日志

 

3.创建事件订阅
  以管理员身份登录server2服务器,进入其“事件查看器”控制台窗口。点击其最下面的“订阅”项,此时会弹出一个对话框询问我们是否要启动“Windows事件收集器服务”,点击“是”启动该服务。然后右键单击“订阅”在右键菜单中选择“创建订阅”命令弹出“订阅属性”对话框。在该对话框中进行设置:订阅名称为“MyApp Errors on server1”即来自服务器server1的系统错误事件;单击“源计算机”项下的“添加”按钮弹出“选择计算机”对话框,输入server1将需要订阅事件日志的服务器添加进来,单击“确定”返回到“订阅属性”对话框。在此,我们可按照上面的方法添加多个服务器。添加完毕后,单击下面右侧的“测试”按钮以验证刚才添加的服务器的有效性。如果弹出一个错误对话框,我们不用管单击“确定”即可。之所以弹出这个错误对话框,是因为server1上的WimRM没有启动并配置,我们后续进行配置即可。(图3)
巧用转发和订阅集中管理服务器日志
返回到“订阅属性”对话框,单击“选择事件”按钮进入“查询筛选器”对话框。在该对话框中进行如下设置:设置“记录时间”为“过去的24小时”,事件级别为“错误”,事件日志为“Windows日志\系统”,事件ID为“100”,设置完毕后退出“选择事件”对话框。在订阅属性”对话框,单击“高级”按钮进入“高级订阅设置”对话框。在该对话框中设置“用户账户”为“具体用户”,然后单击右侧的“用户和密码”按钮弹出“订阅源的凭据”对话框。默认用户名为administrator,在下面输入管理员的密码即可。然后设置“事件传递优化”方式为“最小化滞后时间”,协议和端口保持默认。最后单击“确定”退出“订阅属性”对话框,此时会弹出“事件查看”提升对话框告诉我们下一步的做法,单击“是”退出即可。此时,从“事件查看器”控制台的“订阅”节点中可以看见我们刚才创建的订阅,不过却显示为一个红色的惊叹号,这是因为server1的WimRM没有启动并配置。(图4)
巧用转发和订阅集中管理服务器日志
4.启动并配置WimRM
  以管理员身份登录服务器server1,然后以管理员身份运行命令提示符,执行命令“WINRM QuickConfig”快速配置WinRM。命令执行时,会提示WindRM客户端会处于监听状态,并且可穿越防火墙,询问我们是否改变,属于“y”并回车后sever1上的WinRM快速配置完毕。下面我们登录日志服务器server2进行验证,进入其“事件查看器”控制台,右键单击“订阅”选择右键菜单中的“刷新”命令,刷新完毕后,可以看到我们刚才创建的订阅显示为绿色的对勾,表示已经正常了。此外,我还可以进一步地进行验证。登录日志服务器server2,然后以管理员身份打开命令提示符,输入命令“EVENTCREATE /S server1.test.com /L System /T Error /ID 100 /SO MyApp /D “MyApp Encountered an error””,如果命令成功执行说明我们的配置无误。这个命令行使用eventcreate命令在日志服务器server2上为server1创建一个事件日志,其中参数“/S”指定目标服务器,test.com是域名,server2是服务器名。在server2的“事件查看器”控制台中,依次展开“Windows日志”→“转发的事件”节点上,我们右键单击该节点选择“刷新”,可以在右侧看到刚才创建的日志已经转发成功。同样的,我们登录server1服务器,在事件查看控制台中可看到刚才通过server2创建的日志。这说明我们的配置是正确的。(图5)

巧用转发和订阅集中管理服务器日志

5.将任务附加到事件
  将任务附加到事件这是一项非常有用的功能,我们可将任务和事件捆绑在一起,当事件发生时,会触发一个任务。利用此功能我们可实现当某个事件发生时,运行一个程序或脚本,或者显示一个警报,甚至发送一封电子邮件以通知管理员引起重视,一般采取相应的行动。本例中,我们就以触发一个警报为例。即当服务器server1上发生了我们定义的事件是,在日志服务器server2上会显示一个警示对话框。具体实现方法如下。
  登录日志服务器server2,进入其“事件查看器”控制台,定位到“Windows日志”→“转发事件”节点上,在右侧的内容窗格中找到我们刚才自定义的日志“MyApp Encountered an error”,右键单击该日志选择“将任务附加到此事件”命令打开“创建基本任务向导”。在“创建基本任务”页面,设置名称为“MyApp Error 100 Interactive Notification”;在“操作”页面设置“希望该任务执行的操作”为“显示消息”,消息的标题为“SERVER2服务器事件报告”,消息内容为“Server2服务器发生了一个系统错误,请管理员马上进行排错!”,设置完成后退出该向导。此时会弹出一个提示对话框,我们“确定”即可。(图6)
巧用转发和订阅集中管理服务器日志
6.验证日志报告
  到这一步我们就完成了服务器间日志的订阅和转发,下面我们验证一下效果。这项操作可以在服务器server2上执行,也可在日志服务器server1上执行,我们就在服务器server2上验证。验证的思路是,在服务器server2上创建通过EVENTCREATE命令子定义并向服务器server1上转发一个系统错误日志,然后看看我们设置的事件警报会有什么反应。在服务器server2上以管理员身份运行命令提示符,然后执行命令“EVENTCREATE /S server1.test.com /L System /T Error /ID 100 /SO MyApp /D “MyApp Encountered an error”E”。命令执行完毕后,看到弹出一个警告对话框,提示Server2服务器发生了一个系统错误,请管理员马上进行排错!”,而这正是我们刚才设置的警告框。可见,我们的试验成功了。这样,当服务器server1上如果有我们定义的事件发生时,管理员就会在日志服务器上看到。(图7)
巧用转发和订阅集中管理服务器日志
总结:通过上面的操作演示,可以看到通过事件的转发和订阅技术,能够实现使用一台日志服务器集中管理多台服务器日志。上面的例子,主要是提供一种思路。在实战中,我们要设置多台服务器的日志订阅和转发。另外,为了便于日志服务器的管理,一般情况下不要将其他服务器上所有的日志转发到这台日志服务器上。一个比较科学的策略是,根据具体服务器的特点已经管理员关心的重点,我们可通过自定义的方式只将与服务器的稳定安全攸关的事件转发到日志服务器上。

发表评论

电子邮件地址不会被公开。 必填项已用*标注