Windows2008一次艰难的开启远程桌面的经历

我的局域网下有一台Windows Server 2008 R2的主机,平时我都是直接操作这个系统,然而非常悲剧的是,最近一次使用时,系统刚到登录界面,显示屏就pa的一下烧了,无奈,没有显示屏的我只好打算在同一局域网下用另一台电脑通过远程桌面来控制该系统。然而一连接才想起来,远程桌面在很久之前被我关掉了!!!而且更加悲剧的是,我似乎之前还开启了防火墙!!!

于是,我想到,应该还有别的方法。不得不说,我都感觉当时关掉3389以及开防火墙的举动很zuo。

寻找方法

远程控制这个主机,首先还是要看一下开放了哪些端口,在这里,我使用的是ScanPort来扫描的,这个工具能够以最多200线程扫描端口。

扫描内网下192.168.1.*的这台主机,端口从1到10000

Windows2008一次艰难的开启远程桌面的经历

本来以为没戏了,毕竟开了防火墙基本所有端口都堵死了。不过惊喜的是,我发现还有两个端口可以访问,推测应该是防火墙并没有阻止内网访问。

现在的情况就是,我只能通过135和445端口进一步实现控制,445端口倒是可以使用永恒之蓝拿到控制权,不过毕竟是自己的机子,实在舍不得如此粗暴,况且那台主机上安装有防护软件,预计445端口的方案必走弯路,于是明确的放弃了这种方法。那么除去445端口,也就剩下一个135端口了。这时想到,通过135端口远程连接需要用户名以及密码,这个我当然知道,于是确定了使用135端口的方法。

操作过程

将远程主机的C盘挂载到本机上的H盘

net use h: \\192.168.1.*\c$ "password" /user:"administrator"

成功执行此操作后,发现H盘已经成功挂载远程主机

Windows2008一次艰难的开启远程桌面的经历

于是按照常规套路,本来可以通过以下方式执行cmd

获取时间

net time \\192.168.1.*

执行命令(time为上面获取的时间,command为要执行的命令)

at \\192.168.1.* time command

然而,结果是,at这一步执行失败,没能成功创建计划任务即cmd命令没有执行(或许是因为被杀毒软件给阻止了)

无奈,我只好寻找新的方法,翻着远程主机的系统盘是,突然想到一种方法,我可以添加启动项,这样在电脑登录后就能执行cmd。然而,却出现了这样的问题,由于Windows Server 2008 R2系统的默认权限设置,开始菜单目录拒绝访问

Windows2008一次艰难的开启远程桌面的经历

不过不要紧,我可是以Administrator管理员的身份登录的,可以修改该文件夹的权限

右键->属性->安全->高级

Windows2008一次艰难的开启远程桌面的经历

可以看到,Administrator用户是被赋予完全访问权限的,造成拒绝访问的其实是这条Everyone的列出文件夹/读取数据的拒绝权限造成的,删除这条权限,确定,发现现在就能够访问这个文件夹了。于是打开启动目录。

Windows2008一次艰难的开启远程桌面的经历

在启动目录添加一个bat文件,这样,在下一次启动的时候,这个脚本就会被执行。

脚本如下

@echo off
netsh firewall set opmode disable>C:\tmp.txt

为了方便查看脚本的执行结果,这里将输出内容存放到了tmp.txt中。重启系统,此时喝了一杯茶,喝完后,系统已经启动完成,应该已经到了登录界面。于是用那台主机的键盘敲打密码,然后回车,等待脚本被执行。(又一杯茶)许久之后,发现H盘(那台主机的C盘)已经创建了tmp.txt,打开发现防火墙已经成功关闭。

此时,我兴奋的打开了远程桌面终端,尝试连接。结果令我失望的是,还是不能连接!!!于是接着拿出ScanPort工具进行扫描。

Windows2008一次艰难的开启远程桌面的经历

我晕,我们的3389端口依然如此傲娇,不肯让我去访问,SQL SERVER端口都已经放行了。这时想到了之前一个很zuo的行为,当时我把远程终端服务设置成了手动。于是,重复刚才的操作:修改那个启动目录下的脚本文件。

脚本如下

@echo off
net start TermService>C:\tmp.txt

保存后,重启计算机,又喝了一杯茶。喝完茶,那台主机又启动完成了,又用键盘敲上密码,接着喝了一杯茶。喝完这杯茶之后,发现tmp.txt中的内容更新了,显示服务启动成功。这时,继续使用ScanPort验证3389端口是否开启。

Windows2008一次艰难的开启远程桌面的经历

终于如愿看到了3389端口的开启,于是打开远程终端,成功连接该主机。此时,为了庆祝此次的成功,笔者又喝了一杯茶。

后续工作

远程连接成功后,为了安全,删除掉启动文件夹的脚本文件,将开始菜单的文件夹被删掉的Everyone拒绝权限添加上,删除C盘根目录下的临时文件tmp.txt。最后,打开服务,将TermService服务的启动类型由手动该为自动。

Windows2008一次艰难的开启远程桌面的经历

大功告成,重启计算机后,依然可以使用远程终端连接。

总结

其实,此次经历给笔者印象最为深刻的不是这种及其繁琐复杂的过程,而是笔者在不断摸索的过程中喝了若干杯茶,以致于肚子撑得一批(笑)。言归正传,维护服务器有时候也要稽智一些,不要一条路堵死。

这次的经历更是验证了笔者喜欢说的一句话:no zuo no die,zuo了也不一定die。