一、引言
我们设想有一个远程控制方案:一个公司要安置这样一个IISWeb服务器,它被放在300里以外。服务器是宽带网络、有空调装置、电力控制装置三者结合的个服务器中心。这个网络服务中心既稳固又价钱合理,但要求客户必须完全远程控制服务器,这种控制是随时的,而不必要经常跑到控制台对服务器进行操作。通常远程控制存在若干问题,最明显的是客户端机器和主机的通信要通过因特网传送。这样交换数据可能被黑客嗅探;还有一个问题就是远程控制本身漏洞 (例如它开放的端口)也会导致网络攻击。选择远程控制方案最终的目标就是要保证作为网关的你 (仅仅是你)能控制服务器而不会导致其他网络攻击。
远程控制方案安全原则如下:
确保远程控制权限的安全性
远程控制必须能够预防非授权访问。这也就意味着远程管理软件只接受一个小范围IP地址的连接,并需要用户名和口令的控制。通过智能卡相客户验证的引进,远程控制安全性进一步加强。也可以用一些简单、现成的技术来增强,如使用非标准端口来提供服务或者不显示服务旗标的一些安全配置手段。
确保远程交换数据的完整性
在远程控制中要防止数据丢失,我们必须确保远程控制服务器和客户端数据传送的完整性和即时性 (也就是说发送的数据是可靠的且不被重发)。
确保敏感数据传输的机密性
对与远程控制,最重要的一点是保证敏感数据在因特网传输的机密性。这就要防止传输的数据报文不会被黑客嗅擦。这就要使用强健可行的加密算法进行会话加密。这种加密的优点在于:即使攻击者嗅探到了数据。对嗅探的人也没什么用处。
确保事件出志能够安全审计
良好的安全审计能大幅度提高远程控制的整体安全性,并将安全隐患和技术犯罪扼杀于萌芽状态。审计日志的主要作用在于让管理员了解有哪些人访问了系统,使用了哪些服务等等。这就要求服务器对企图通过技术犯罪入侵的黑霉远程控制踪迹有一个足够充分、足够安全的日志记录。
二、Windows 2000 远程控制的3种安全解决方法
尽管远程控制Windows2000有很多种方法。并不是所有的软件都符合上面的远程控制方案安全原则,我们可以通过组合不同的软件来完成我们所需要的远程控制解决方案。
下面的一些例子就是通过对Windows2000自带服务或者第三方软件组合使用来达到安全可靠的远程控制。
方法1.Windows2000终端服务结合Zebedee软件的使用
终端服务是在Windows2000中提供的允许用户在一个远端的Windows9000服务器上执行基于Windows的应用程序的技术。终端服务应该是Windows2000服务器进行远程管理使用最多的办法,这和它的使用便利性以及其属于Windows内置的服务同时带来的其他好处有关,比如可以使用Windows2000服务器自带的认证系统。但是这个终端服务程序本身有一些缺陷:它无法对客户连接IP作出限制的机制;它没有明确提出改变缺省监听端口的办法;它的日志审计功能,也就是说没有日志记录工具。基于本文开头提到的远程控制方案的安全原则,单独使用终端服务并不是很安全的。但我们可以通过通过与Zebedee软件结合,终端服务就可以实现上面的远程管理安全需要。
Zebedee的工作原理如下'Zebedee监听本地指定的应用,将要传输的TCP或UDP数据进行加密、压缩;Zebedee客户端与服务器端之间建立了一个通信隧道;压缩、加密的数据就在这个通道上进行传输;可以令多个TCP或UDP的连接建立在同一个TCP连接之上。
通常使用Zebedee分以下两步:
第一步:配置Zebedee的监听端口
用到如下的命令:
C:\\zebedee -s -o server.log
第二步:在客户机上配置监听3389端口并且
使它重定向到你服务器上Zebedee的监听端口
用到如下命令:
C:\\>zededee 3389 serverhost:3389
这样,Zebedee就开始启动,它与终端服务的结合使用原理如图1所示。从图1中可以看到,当开启终端服务的客户端进程(目标TCP端口:3389)时,紧接着本地Zebedee客户端同时开始截取数据包;Zebedee将数据加密、压缩后发给Zebedee服务器(这里Zebedee服务缺省端口11965);Zebedee服务器接到后再解压缩、解密传递给服务器的服务(服务端口:TCP:3389)。在这里,服务器上的终端服务好像是与本地的终端服务客户端进行的连接,但实际上所有传递的数据包都经过了一个加密的隧道。此外,Zebedee还可以通过配置文件来实现身份认证、加密、IP地址过滤以及日志的功能。一个配置良好的Zebedee和Windows2000的终端服务相互结合,可以构建一个十分安全的远程管理系统。
鉴于一般终端服务不提供文件传输的功能,所以需要考虑其他的办法。我们可以使用FTP服务器。但是FTP服务器通常被认为是不安全的,它也可以通过Zebedee的加密隧道增强其安全性,方法是直接在终端服务上传输数据。这中做法比较麻烦,但Zebedee帮助文件已做了详细的说明。这里推荐两个第三方的解决方案,一个是Analogx的TSDropCopy(http://www.analogx.com/con-tents/download/system/tsdc.htm),另一个是WTS-FTP(http;//www.ibexsoftware.com/about.asp)
总的来说,Windows2000终端服务是一个最方便和最快捷的方法,但就其本身的安全性来说。我们通过Zebedee与终端服务的结合,可以说是实现了一个方便、快捷、安全的解决方案。
方法2.在SSH上的VNC
VNC是一个类似于终端服务的远程管理软件,和终端不同的地方有以下几点:
*VNC是和当前正在登录的用户共用同一个会话,你可以相当前登录的用户同时操作;
*VNC客户端适用于不同的平台,包括WindowsCE和Java;
*VNC能够限制IP访问;
在客户端和服务端没有经过加密。
对于VNC的这些差别,我们意识到使用VNC的好处,但如果单独使用的话仍然有一些安全隐患。最大的问题是VNC的数据传输没有经过加密。我们可以配合使用SSH加密来弥补这一缺陷。通常使用OpenSSH(http://www.networksimplicity.com/openssh).OpenSSH是一个理论上类似与Zebedee的软件。但是它更广泛的被应用于SMTP.HTTP.FTP.POP3和Telnet传输数据包加密。和Zebedee一样,它是通过端口通信隧道,不同的是SSH已经成为广大用户公认并且广泛使用的加密协议。
从概念上来说,OpenSSH转发数据包和Zebedee相似。我们通常可以配置服务器的监听端口(通常OpenSSH缺省端口是22),然后就可以连接到SSH使用的端口。一个SSH客户端实质上是一个加密的telnet远程访问控制提示符。但SSH也能用用样一个给其它的协议连接进行加密。我们也有下面两个步骤实现在SSH基础上的VNC'
第一步:C:>ssh ?L5901:serverhost:5900serverhost
这将创建一个SSH服务器端口对VNC在本地和服务器数据包之间的转发。
第二步.C:\\>vncviewer:1
图2实际上是一个VNC会话通过SSH加密通道进行传送(这种传送,通俗说来是在VNC服务器和客户段之间进行)。
假如你使用多客户平台,你能够使用在SSH基础上的VNC远程控制,因为VNC和SSH都支持大多数常用的操作系统。
方法3:VPN技术应用在 Windows 2000 远程控制
我们可以通过windows2000Serve,自带管理工具远程交互管理,比如客户机可以通过映射服务器的驱动器。当然也可以使用其他的网络服务达到远程控制。Windows 2000 Server远程管理是通过打开连接服务器的445端口,通过这个端口对交换数据进行转发。但是在客户和服务器之间的数据没有经过加密,这就会导致一些网络恶意嗅探,但是我们可以使用另外一些加密隧道技术。网络隧道技术指的是利用一种网络协议来传输另一种网络协议,它主要利用网络隧道协议来实现这种功能。在这种情况下,有一个好的解决方案.VPN技术在Windows2000远程控制。它就是利用L2TP隧道协议来对交换数据进行传输。这样安全性就大大加强。
VPN技术在Windows2000远程控制的应用有如下优点:
*VPN致力于为网络提供整体的安全性,是性能价格比比较高的安全方式;
*VPN的管理性能提高得很快,就单一厂商的环境,管理工作站可以直接提供多单元的支持;
*VPN使用L2TP加密通道是虚拟专用拨号网络协议;
*VPN能够限制IP访问;
*VPN可以网络连接中透明地配置,而不需要修改网络或客户端的配置。
下面我们要做的工作就是配置一个远程客户端与一个VPNServer之间的连接。
VPN服务器的配置
首先打开 路由和远程访问,右击要配置的服务器->配置并启用路由和远程访问,根据说明我们能够创建一个 虚拟专用网络(VPN)服务器。
注意:VPNServer监听的是l723端口,如果不期望别人看到这个开放的端口,我们可以对客户的连接IP地址进行限制。
客户端的配置
右键点击网上邻居,选择属性。从弹出的窗口中点击 新建连接。根据提示,我们完成相关的设置并且连接到服务器上。
完成服务器和客户端的配置之后,我们能看见一个VPN连接图标。双击该图标,根据提示填入用户名和密码,就能连接到服务器。这时就有一个新的网络连接,这种网络连接跟我们使用网络适配器和光缆直接连接到服务效果是一样的,不同的地方就是它是通过加密通道进行传输交换数据的。
对于任何网络连接,我们要考虑到这样一个因素:你所用的网络协议是否带有包过滤技术。注意你的连接有可能被黑客利用,入侵到你的电脑,从而威胁到你的服务器,进而人侵你的内部网络。这些风险我们不得不考虑到。
通过VPN,我们能够远程管理服务器,就像在局域网里面一样简单。由于不正确的配置,可能导致一些安全因素。但是VPN技术应用在Windows2000远程控制。是迄今为止最便捷的远程控制方案。只要我们正确配置服务端和客户端,安全隐患是可以避免的。
三、其他方法
本文中,我们提到3种行之有效相有安全保障远程控制解决方案。当然方法不止这些。我们只想借此来帮助大家了解远程管理安全方面值得考虑的因素和解决的方法思路。如果你现在使用一个远程管理工具,你可以检查一下你的软件是否满足了上面所说的远程管理的安全性需要。如果没有,你就需要考虑去找些其他软件增强它的安全性。使用加密隧道及对防火墙进行合理配置是实现--个安全的远程管理解决方案的关键。