论文部分内容阅读
摘 要:北京劳动保障职业学院自主开发的机房管理系统软件,采用微软Windows操作系统中提供的GINA技术,通过重构GINA模块中的标准函数来实现对学生机端的管理,这种管理方式能很好地解决学生登录时出现的安全漏洞问题,从而实现机房管理的安全性。
关键词:GINA技术 机房管理
中图分类号:TP301.1 文献标识码:B 文章编号:1673-8454(2009)21-0047-03
一、引言
北京劳动保障职业学院自主开发的机房管理系统软件,实现了学生使用计算机实名登录、跟踪记录学生使用机器的全过程,解决了机房管理中计算机有人使用无人负责的难题。管理员通过机房管理系统可以实时监测所有机器的运行情况,限制学生违反用机规定的不良行为,有效地提高机房设备的运行安全和管理效率。该系统还提供上机计费管理、教师下发电子作业、课堂电子点名、学生上交作业等功能,使机房管理更加自动化、规范化。
二、GINA技术简介
GINA是Graphical Identification and Authentication的缩写,中文意思是图形识别与验证。在Windows 2000/NT/XP操作系统中,GINA是一个由系统进程Winlogon加载的可替换的DLL组件。GINA模块主要用来实施交互登录模式的验证策略,执行全部识别与验证用户交互操作。为了实现系统进程Winlogon调用GINA模块,并实现交互的图形识别与验证,GINA模块定义了一些标准的函数接口, GINA模块中的主要标准函数如表1所示。
三、机房管理系统中GINA模块的设计思路
机房管理系统中GINA模块的设计思路,就是导出GINA模块中标准函数接口,开发个性化的GINA模块,通过重构这些标准函数,编写自己的动态链接库GINA.DLL,替换微软提供的动态链接库MSGINA.DLL,从而取代标准的Windows 2000/NT/XP用户名与口令的验证方式,实现机房管理系统中的学生实名制登录,完成与系统进程Winlogon交互的登录过程。即在学生机端创建登录窗口,收集学生的学号和口令,到服务器端认证,认证成功后对Windows 2000/NT/XP系统中事先创建的一个合法用户动态授权,并以该用户的身份进入操作系统使用计算机。在学生使用计算机期间,学生机通过GINA模块实时与服务器端通讯接收、执行服务器端的指令,并向服务器端反馈机器运行状态,机房管理员可以用浏览器查看机房中学生机运行状态。机房管理系统的登录认证模块适用于Windows 2000/NT/XP操作系统。
(4)启动特定的线程:登录认证成功后,在该函数中启动了下面的线程,每个线程实现不同的任务:
1)监听线程:负责接收服务器端的报文信息,根据报文中的交易码完成相应的操作,例如:向服务器报告本机运行状态、接收或发送文件、关闭或重启计算机等操作。
2)进程监测线程:实时检查学生机的进程信息,凡是不属于机房管理系统规定的可以运行的进程均被杀死,这样可以防止学生在教学期间进行玩游戏等操作。该线程是否启动,需要根据登录认证的返回结果中相应的标志位确定。
3)网络监控线程:实时检测学生机网络设备和网络状态,如有问题则提示学生。
3.重构WlxLoggedOnSAS函数。当学生按下组合键Ctrl Alt Del时,则产生一个SAS事件,系统进程Winlogon检测到这个SAS事件后,调用GINA模块的该函数。在机房管理系统的GINA模块中,该函数以窗口的形式向学生显示登录本机的学生姓名、登录时间等信息,并向学生提供如下的操作:修改登录口令、锁定计算机、Windows的任务管理器信息、关闭计算机,如图2所示。学生可以点击相应的按钮,实现相应的操作,其中修改登录口令、关闭计算机操作,均需要通过HTTP协议与服务器通讯发送、接收交易报文。
4.重构WlxShutdown函数。当操作系统收到关闭计算机、重启计算机操作时,系统进程Winlogon调用GINA模块的该函数,响应学生的关闭或重启计算机操作。在该函数中通过HTTP协议向服务器发送关机或重启计算机交易,服务器接收到关机交易后采取相应的处理,如果交易失败,则向学生提示相应的错误信息,交易发送完成后关闭或重启计算机。
5.重构WlxWkstaLockedSAS函数。当学生的计算机屏保锁定桌面时,学生按下组合键Ctrl Alt Del后,产生一个SAS事件,系统进程Winlogon调用GINA模块中的该函数。在机房管理系统中,重构这个函数,创建一个窗口提示登录本机的学生姓名,并等待学生输入登录口令,如图3所示。该函数得到学生的登录口令后,通过HTTP协议向服务器发送密码验证交易,如果验证成功则解除桌面锁定,否则继续锁定桌面。
为了更直观说明以上用户登录的过程,在下面的图中给出了系统进程Winlogon调用GINA模块中的相应函数,以及在产生SAS事件时,系统进程Winlogon调用GINA模块中函数的交互过程,如图4所示。
说明:图中的函数名均省略了函数名前缀Wlx。
五、机房管理系统安装和部署学生机的GINA模块
机房管理系统的客户端管理,经过对GINA模块中相关标准函数的重构,可以实现机房管理系统客户端安全登录的功能,但同时需要将重构的GINA模块安装植入到学生机端,并对学生机操做系统作相应的修改操作才能起作用。
(1)修改学生机Administrator用户的口令,该口令需要保密。在学生机上创建用户,用户名和用户口令必须与程序中指定的用户名和用户口令一致。
注意:在操作系统Windows Professional 2000和Windows NT中该用户的口令需要指定为永不过期。
(2)将生成的动态链接库(机房管理系统的动态链接库命名为Gina.DLL)文件和客户端配置文件拷贝到学生机操作系统安装目录下的System32子目录下。
(3)在操作系统的防火墙或单独安装的防火墙中,打开GINA模块中指定的监听端口。
(4)按照下面要求修改注册表
在键名: HKEY_LOCAL_MACHINESoftwareMicrosoft Windows NTCurrentVersionWinlogon 下增加如下的字符串值:
变量名称 : GinaDLL
变量类型 : [REG_SZ]
变量值 : Gina.DLL
重新启动计算机,则机房管理系统登录认证模块取代操作系统Windows 2000/NT/XP提供的默认的登录认证模块。
六、机房管理系统登录认证模块的安全性
学生机端安装了GINA模块之后,保证了机房管理系统运行中客户端登录的安全性,可以从以下三个方面的说明得到印证:
(1)机房管理系统登录认证模块采用GINA技术实现,该模块由系统关键进程Winlogon调用对用户来说是不可见的,系统进程Winlogon不能被用户杀死,因此确保了登录认证模块的正常运行。
(2)我院学生机房的学生机均安装了保护卡,学生对注册表和文件的修改不能生效,从而保证了登录认证模块相关文件的安全性。
(3)在机房管理系统的服务器端,定义了学生登录操作系统时的用户权限,在登录过程中动态授予操作系统中的用户,从安全和防范病毒的角度考虑,可以降低学生登录用户的权限,从而保护注册表和系统文件的安全。
七、结束语
目前,机房管理系统软件在我院学生机房已经运行了一段时间,其间系统运行平稳,各项管理功能使用正常,特别是解决了登录时的安全漏洞问题,实现了系统设计目标,大大地提高了机房管理水平和管理效率。
参考文献:
[1] 微软MSDN网站. http://msdn.microsoft.com/en-us/magazine/cc163803.aspx
(编辑:杨馥红)
关键词:GINA技术 机房管理
中图分类号:TP301.1 文献标识码:B 文章编号:1673-8454(2009)21-0047-03
一、引言
北京劳动保障职业学院自主开发的机房管理系统软件,实现了学生使用计算机实名登录、跟踪记录学生使用机器的全过程,解决了机房管理中计算机有人使用无人负责的难题。管理员通过机房管理系统可以实时监测所有机器的运行情况,限制学生违反用机规定的不良行为,有效地提高机房设备的运行安全和管理效率。该系统还提供上机计费管理、教师下发电子作业、课堂电子点名、学生上交作业等功能,使机房管理更加自动化、规范化。

二、GINA技术简介
GINA是Graphical Identification and Authentication的缩写,中文意思是图形识别与验证。在Windows 2000/NT/XP操作系统中,GINA是一个由系统进程Winlogon加载的可替换的DLL组件。GINA模块主要用来实施交互登录模式的验证策略,执行全部识别与验证用户交互操作。为了实现系统进程Winlogon调用GINA模块,并实现交互的图形识别与验证,GINA模块定义了一些标准的函数接口, GINA模块中的主要标准函数如表1所示。
三、机房管理系统中GINA模块的设计思路
机房管理系统中GINA模块的设计思路,就是导出GINA模块中标准函数接口,开发个性化的GINA模块,通过重构这些标准函数,编写自己的动态链接库GINA.DLL,替换微软提供的动态链接库MSGINA.DLL,从而取代标准的Windows 2000/NT/XP用户名与口令的验证方式,实现机房管理系统中的学生实名制登录,完成与系统进程Winlogon交互的登录过程。即在学生机端创建登录窗口,收集学生的学号和口令,到服务器端认证,认证成功后对Windows 2000/NT/XP系统中事先创建的一个合法用户动态授权,并以该用户的身份进入操作系统使用计算机。在学生使用计算机期间,学生机通过GINA模块实时与服务器端通讯接收、执行服务器端的指令,并向服务器端反馈机器运行状态,机房管理员可以用浏览器查看机房中学生机运行状态。机房管理系统的登录认证模块适用于Windows 2000/NT/XP操作系统。

(4)启动特定的线程:登录认证成功后,在该函数中启动了下面的线程,每个线程实现不同的任务:
1)监听线程:负责接收服务器端的报文信息,根据报文中的交易码完成相应的操作,例如:向服务器报告本机运行状态、接收或发送文件、关闭或重启计算机等操作。
2)进程监测线程:实时检查学生机的进程信息,凡是不属于机房管理系统规定的可以运行的进程均被杀死,这样可以防止学生在教学期间进行玩游戏等操作。该线程是否启动,需要根据登录认证的返回结果中相应的标志位确定。
3)网络监控线程:实时检测学生机网络设备和网络状态,如有问题则提示学生。
3.重构WlxLoggedOnSAS函数。当学生按下组合键Ctrl Alt Del时,则产生一个SAS事件,系统进程Winlogon检测到这个SAS事件后,调用GINA模块的该函数。在机房管理系统的GINA模块中,该函数以窗口的形式向学生显示登录本机的学生姓名、登录时间等信息,并向学生提供如下的操作:修改登录口令、锁定计算机、Windows的任务管理器信息、关闭计算机,如图2所示。学生可以点击相应的按钮,实现相应的操作,其中修改登录口令、关闭计算机操作,均需要通过HTTP协议与服务器通讯发送、接收交易报文。
4.重构WlxShutdown函数。当操作系统收到关闭计算机、重启计算机操作时,系统进程Winlogon调用GINA模块的该函数,响应学生的关闭或重启计算机操作。在该函数中通过HTTP协议向服务器发送关机或重启计算机交易,服务器接收到关机交易后采取相应的处理,如果交易失败,则向学生提示相应的错误信息,交易发送完成后关闭或重启计算机。
5.重构WlxWkstaLockedSAS函数。当学生的计算机屏保锁定桌面时,学生按下组合键Ctrl Alt Del后,产生一个SAS事件,系统进程Winlogon调用GINA模块中的该函数。在机房管理系统中,重构这个函数,创建一个窗口提示登录本机的学生姓名,并等待学生输入登录口令,如图3所示。该函数得到学生的登录口令后,通过HTTP协议向服务器发送密码验证交易,如果验证成功则解除桌面锁定,否则继续锁定桌面。
为了更直观说明以上用户登录的过程,在下面的图中给出了系统进程Winlogon调用GINA模块中的相应函数,以及在产生SAS事件时,系统进程Winlogon调用GINA模块中函数的交互过程,如图4所示。
说明:图中的函数名均省略了函数名前缀Wlx。
五、机房管理系统安装和部署学生机的GINA模块
机房管理系统的客户端管理,经过对GINA模块中相关标准函数的重构,可以实现机房管理系统客户端安全登录的功能,但同时需要将重构的GINA模块安装植入到学生机端,并对学生机操做系统作相应的修改操作才能起作用。

(1)修改学生机Administrator用户的口令,该口令需要保密。在学生机上创建用户,用户名和用户口令必须与程序中指定的用户名和用户口令一致。
注意:在操作系统Windows Professional 2000和Windows NT中该用户的口令需要指定为永不过期。
(2)将生成的动态链接库(机房管理系统的动态链接库命名为Gina.DLL)文件和客户端配置文件拷贝到学生机操作系统安装目录下的System32子目录下。
(3)在操作系统的防火墙或单独安装的防火墙中,打开GINA模块中指定的监听端口。
(4)按照下面要求修改注册表
在键名: HKEY_LOCAL_MACHINESoftwareMicrosoft Windows NTCurrentVersionWinlogon 下增加如下的字符串值:
变量名称 : GinaDLL
变量类型 : [REG_SZ]
变量值 : Gina.DLL
重新启动计算机,则机房管理系统登录认证模块取代操作系统Windows 2000/NT/XP提供的默认的登录认证模块。
六、机房管理系统登录认证模块的安全性
学生机端安装了GINA模块之后,保证了机房管理系统运行中客户端登录的安全性,可以从以下三个方面的说明得到印证:
(1)机房管理系统登录认证模块采用GINA技术实现,该模块由系统关键进程Winlogon调用对用户来说是不可见的,系统进程Winlogon不能被用户杀死,因此确保了登录认证模块的正常运行。
(2)我院学生机房的学生机均安装了保护卡,学生对注册表和文件的修改不能生效,从而保证了登录认证模块相关文件的安全性。
(3)在机房管理系统的服务器端,定义了学生登录操作系统时的用户权限,在登录过程中动态授予操作系统中的用户,从安全和防范病毒的角度考虑,可以降低学生登录用户的权限,从而保护注册表和系统文件的安全。
七、结束语
目前,机房管理系统软件在我院学生机房已经运行了一段时间,其间系统运行平稳,各项管理功能使用正常,特别是解决了登录时的安全漏洞问题,实现了系统设计目标,大大地提高了机房管理水平和管理效率。
参考文献:
[1] 微软MSDN网站. http://msdn.microsoft.com/en-us/magazine/cc163803.aspx
(编辑:杨馥红)