一、引言
我們設想有一個遠程控制方案:一個公司要安置這樣一個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種行之有效相有安全保障遠程控制解決方案。當然方法不止這些。我們只想借此來幫助大家了解遠程管理安全方面值得考慮的因素和解決的方法思路。如果你現在使用一個遠程管理工具,你可以檢查一下你的軟件是否滿足了上面所說的遠程管理的安全性需要。如果沒有,你就需要考慮去找些其他軟件增強它的安全性。使用加密隧道及對防火牆進行合理配置是實現--個安全的遠程管理解決方案的關鍵。