文/逢逢
为了更高效地管理好服务器,不少系统管理员都开通了远程访问功能,这样的话许多管理维护操作就不需要到服务器现场进行了。可是,一旦开通了远程访问功能,那么服务器的安全就可能会受到一定的影响;为此,本文下面通过修改注册表的方法,来确保服务器远程访问更安全:
1、拒绝创建新的局域网连接
大家知道,如果允许非法用户在自己的Windows 2000服务器中,随意创建新的局域网连接的话,那么本地服务器的安全将受到威胁,因为非法用户就能通过自己创建的局域网连接“通道”,来对本地服务器进行远程非法攻击了。为此,你可以通过下面的方法,来阻止普通帐号下的用户,随意在本地服务器中创建新的局域网连接组件,从而实现拒绝创建新的远程连接通道的目的:
依次单击“开始”/“运行”命令,在打开的系统运行对话框中,输入注册表编辑命令“Regedit”,单击“确定”按钮之后,在随后弹出的注册表编辑窗口中,将鼠标定位于注册表分支HKEY_CURRENT_USER/Software/Policies/Microsoft/Windows/Network Connections上,如图1所示;
图1
在对应Network Connections注册表分支的右边子窗口中,用鼠标右键单击空白区域,从弹出的快捷菜单中依次执行“新建”/“双字节值”命令,并将新创建的双字节值名称设置为“NC_AddRemoveComponents”,再用鼠标双击“NC_AddRemoveComponents”项目,在弹出的数值设置窗口中,输入“0”,再单击“确定”按钮,最后按下F5功能键来刷新一下系统注册表,这样就能使上述设置生效了。
为了防止非法用户随意修改已经创建好的局域网连接组件的属性,导致已经创建好的局域网连接组件不能使用,你可以在对应Network Connections注册表分支的右边子窗口中,再分别创建一个名为“NC_LanChangePRoperties”、“NC_RasChangeProperties”的双字节值,并将它们的数值都设置为“0”,最后单击“确定”按钮,并刷新一下系统注册表。
2、拒绝新用户与服务器连接
也许你的Windows xp终端服务器允许多个客户同时与之远程保持连接,可是在实际连接的过程中,有时为了保证每个远程连接的传输速度都很快捷,你需要在服务器保持活动状态的前提下,阻止其他的新用户继续与服务器保持连接,要实现这样的目的,你可以按照如下步骤来进行操作:
依次单击“开始”/“运行”命令,在打开的系统运行对话框中,输入注册表编辑命令“Regedit”,单击“确定”按钮之后,在随后弹出的注册表编辑窗口中,将鼠标定位于注册表分支HKEY_LOCAL_MACHINE/SOFTWARE/Policies/Microsoft/Windows NT/Terminal Services上,如图2所示;
图2
在对应Terminal Services注册表分支的右边子窗口中,用鼠标右键单击空白区域,从弹出的快捷菜单中依次执行“新建”/“DWord值”命令,并将新创建的双字节值名称设置为“fDenyTSConnetions”,再用鼠标双击“fDenyTSConnetions”项目,在弹出的数值设置窗口中,输入“1”,再单击“确定”按钮,那么系统的终端服务器就能在不断开已有连接的前提下,拒绝新的用户与服务器进行连接了,要是你将“fDenyTSConnetions”项目的数值设置为“0”,那么系统的终端服务器就能允许多个新的用户与之连接了。
3、阻止用户维持多个远程会话
Windows XP系统的终端服务器在缺省状态下,可以允许每一个远程连接用户同时保持多个远程会话,并为每一个远程会话维持任意长的时间;不过这样一来,系统的终端服务器运行效率就会受到影响。为此,你可以通过下面的方法,来阻止用户维持多个远程会话,确保每一个远程连接用户只能在终端服务器保持一个远程会话:
依次单击“开始”/“运行”命令,在打开的系统运行对话框中,输入注册表编辑命令“Regedit”,单击“确定”按钮之后,在随后弹出的注册表编辑窗口中,将鼠标定位于注册表分支HKEY_LOCAL_MACHINE/SOFTWARE/Policies/Microsoft/Windows NT/Terminal Services上;
在对应Terminal Services注册表分支的右边子窗口中,用鼠标右键单击空白区域,从弹出的快捷菜单中依次执行“新建”/“DWORD值”命令,并将新创建的双字节值名称设置为“fSinglesessionPerUser”,再用鼠标双击“fSingleSessionPerUser”项目,在弹出的数值设置窗口中,输入“1”(如图3所示),再单击“确定”按钮,那么系统的终端服务器日后就会对远程连接用户的会话数目进行限制,确保每一个用户只能保持一个会话。
图3
如果你将“fSingleSessionPerUser”项目的数值设置为“0”的话,那么系统的终端服务器就会对远程连接用户的会话数目不进行任何限制。
4、拒绝远程访问共享端口
大家知道Windows 2000服务器中的并行端口、串行端口等设备,通常都安装有类似网络打印机之类的共享设备,在默认状态下,服务器允许任意用户远程访问这些共享端口。不过为了保证服务器的安全,你最好还是禁止普通用户远程访问它们,以防止非法用户通过它们攻击服务器;下面就是拒绝普通帐号下的用户,远程访问共享端口的具体操作:
依次单击“开始”/“运行”命令,在打开的系统运行对话框中,输入注册表编辑命令“Regedit”,单击“确定”按钮之后,在随后弹出的注册表编辑窗口中,将鼠标定位于注册表分支HKEY_LOCAL_MACHINE/System/currentControlSet/Control/Session Manager上;
在对应Session Manager注册表分支的右边子窗口中,用鼠标右键单击空白区域,从弹出的快捷菜单中依次执行“新建”/“双字节值”命令,并将新创建的双字节值名称设置为“ProtectionMode”,如图4所示,再用鼠标双击“ProtectionMode”项目,在弹出的数值设置窗口中,输入“1”,再单击“确定”按钮,并将服务器系统重新启动一下,如此一来服务器就只能允许系统管理员来访问和管理这些共享端口了。
5、阻止远程删除桌面墙纸
如果你不希望非法用户随意将远程桌面中的墙纸强行删除的话,那么你只要按照如下步骤来操作就可以了:
依次单击“开始”/“运行”命令,在打开的系统运行对话框中,输入注册表编辑命令“Regedit”,单击“确定”按钮后,打开系统的注册表编辑界面,将鼠标定位于注册表分支HKEY_LOCAL_MACHINE/SOFTWARE/Policies/Microsoft/Windows NT/Terminal Services上;
在对应Terminal Services注册表分支的右边子窗口中,用鼠标右键单击空白区域,从弹出的快捷菜单中依次执行“新建”/“DWORD值”命令,并将新创建的双字节值名称设置为“fNoRemoteDesktopWallpaper”,再用鼠标双击“fNoRemoteDesktopWallpaper”项目,在弹出的数值设置窗口中,输入“0”(如图4所示),再单击“确定”按钮,并刷新一下系统注册表就可以了。值得注意的是,该方法仅在Windows XP服务器系统中有效。
图4
6、拒绝远程安装打印驱动
在缺省状态下,Windows 2000服务器系统允许普通帐号下的用户,通过远程方式在服务器中安装打印驱动程序,如此一来这些用户就能在服务器中随意安装新的网络打印机了。不过这样的话,服务器的安全可能就会受到威胁,例如非法用户拼命向网络打印机发送垃圾任务的话,就能导致服务器系统运行性能下降,甚至能造成服务器出现死机现象。为了避免普通帐号下的用户,随意通过远程方式在本地服务器中安装打印驱动,你可以按照如下设置,来拒绝远程安装打印驱动:
依次单击“开始”/“运行”命令,在打开的系统运行对话框中,输入注册表编辑命令“Regedit”,单击“确定”按钮之后,在随后弹出的注册表编辑窗口中,将鼠标定位于注册表分支HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Print/Providers/LanMan Print Services上,如图6所示;
右击“LanMan Print Services”注册表分支,从打开的快捷菜单中依次单击“新建”/“双字节值”命令,并将它的名称输入为“AddPrintDrivers”,再将“AddPrintDrivers”双字节值的数值设置为“1”,最后刷新一下系统注册表,这样的话服务器系统日后就只允许系统管理员以及管理员组中的用户,可以进行远程安装打印驱动了。
7、对远程连接数量进行限制
为了保证Windows XP终端服务器始终处于高效运行状态,你应该想办法对服务器在同一时间内建立的远程连接数量进行适当限制,这样终端服务器的性能就会得到稳定。在对Windows XP终端服务器的远程连接数量进行限制时,你可以按照如下步骤来限制:
依次单击“开始”/“运行”命令,在打开的系统运行对话框中,输入注册表编辑命令“Regedit”,单击“确定”按钮后,打开系统的注册表编辑界面,将鼠标定位于注册表分支HKEY_LOCAL_MACHINE/SOFTWARE/Policies/Microsoft/Windows NT/Terminal Services上;
在对应Terminal Services注册表分支的右边子窗口中,用鼠标右键单击空白区域,从弹出的快捷菜单中依次执行“新建”/“DWORD值”命令,并将新创建的双字节值名称设置为“MaxInstanceCount”,再用鼠标双击“MaxInstanceCount”项目,在弹出的数值设置窗口中,输入合适的连接数量,例如允许10个用户同时与服务器远程连接的话,你就可以在这里输入“10”(如图5所示),再单击“确定”按钮就可以了。正常情况下,“MaxInstanceCount”项目的数值范围在“1~999999”之间,如果你希望Windows XP终端服务器对远程连接数量不进行限制的话,那么你可以将它的数值设置为“999999”。
图5
8、阻止远程访问系统日志
由于Windows 2000服务器中的系统日志文件,保存有所有用户访问服务器时的安全信息和操作记录信息,任何黑客企图攻击服务器的痕迹都能从找分析查找到。可是在缺省状态下,系统的日志文件允许被匿名帐号或Guest帐号远程查看到,这么一来黑客就可能远程“抹除”它们在日志中留下的攻击痕迹,从而导致系统管理员无法及时发现系统安全隐患。为此,你可以通过下面的办法,来阻止普通帐号下的用户来远程访问系统日志:
依次单击“开始”/“运行”命令,在打开的系统运行对话框中,输入注册表编辑命令“Regedit”,单击“确定”按钮后,打开系统的注册表编辑界面,将鼠标定位于注册表分支HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/EventLog/application上,如图6所示;
图6
接着再依次单击菜单栏中的“编辑”/“新建”/“双字节值”命令,在Application分支下面创建一个名为“RestrictGuestaccess”的双字节值,并将其数值输入为“1”,最后单击“确定”按钮,这样服务器就能拒绝普通帐号远程访问服务器中的应用日志了;
如果要想拒绝普通帐号远程访问服务器中的系统日志的话,那么你还需要在注册表分支HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/EventLog/System下,创建好“RestrictGuestAccess”双字节值,同时将其数值也输入为“1”;如果要想拒绝普通帐号远程访问服务器中的安全日志的话,那么你还需要在注册表分支HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/EventLog/Security下,创建好“RestrictGuestAccess”双字节值,再将它的数值也输入为“1”,最后刷新一下系统注册表就可以了。
9、阻止远程访问缓存密码
Windows 2003服务器系统在缺省状态下,会自动将系统管理员输入的各种密码信息,暂时保存到系统缓存中,而许多黑客或非法攻击者一旦将目光瞄准到服务器中的指定缓存上时,那么服务器缓存中的各种密码信息就能被黑客轻易远程获取到。为了保证Windows 2003服务器系统中的密码信息,不被远程非法盗取,你可以按照下面的操作,来阻止黑客远程访问缓存密码:
首先打开系统运行框,在其中执行注册表编辑命令“Regedit”,再将鼠标定位在注册表分支HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/policies上,如图7所示;
图7
接着单击菜单栏中的“编辑”/“新建”/“项”命令,在policies分支下创建一个Network子项,并将该子项选中,再单击菜单栏中的“编辑”/“新建”/“DWORD”命令,在对应Network子项右边的区域中,创建一个“DisablePasswordCaching”双字节值,然后将它的数值输入为“0x00000001”,最后重新启动一下计算机系统,这样Windows 2003服务器就不会自动记忆密码了,那么黑客也就无法远程访问到缓存密码了。
10、阻止远程获得共享权限
由于Windows服务器在默认状态下,都会自动把本地服务器的磁盘分区设置为隐藏共享,这么一来非法用户就有可能通过专业攻击方法,来获得这些隐藏共享资源的完全控制权限,从而给服务器带来安全威胁;为此,你可以按照下面方法,让服务器自动取消隐藏共享,这样非法用户就无法远程获得共享资源的完全控制权限:
首先打开注册表编辑窗口,将鼠标定位于注册表分支HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/
Services/LanmanServer/Parameters上,如图8所示;
图8
在对应Parameters注册表分支的右边子窗口中,找到字符串值“AutoShareServer”,并用鼠标双击该字符串值,在弹出的数值设置窗口中,输入“0”,最后单击“确定”按钮,并将计算机系统重新启动一下,如此一来非法用户就无法远程获得服务器的共享控制权限了。
新闻热点
疑难解答