王宏衛(wèi)
(1合肥工業(yè)大學(xué)計算機學(xué)院,安徽 合肥 230002)
(2巢湖學(xué)院網(wǎng)絡(luò)中心,安徽 巢湖 238000)
基于VPN技術(shù)的VSS遠(yuǎn)程項目管理的實現(xiàn)
王宏衛(wèi)1,2
(1合肥工業(yè)大學(xué)計算機學(xué)院,安徽 合肥 230002)
(2巢湖學(xué)院網(wǎng)絡(luò)中心,安徽 巢湖 238000)
本文介紹了VSS及VPN技術(shù)的基本工作原理,討論了利用VPN技術(shù)結(jié)合VSS實現(xiàn)了遠(yuǎn)程協(xié)作開發(fā)的原理,并給出了一種基于Windows環(huán)境下的實現(xiàn)方案。
VPN;VSS;遠(yuǎn)程協(xié)作;Windows2003
VSS(Visual SourceSafe)是一個簡單、易用、功能較為強大的項目版本管理工具,它不僅可以支持軟件開發(fā)小組對軟件項目的協(xié)同開發(fā),同時,它也可作為對普通公用文檔進行管理的有效工具,從而實現(xiàn)對文檔的安全、一致性、可跟蹤式的訪問控制.無論是作為一個版本控制還是作為公用文檔管理的工具,VSS尚不直接支持對項目的遠(yuǎn)程管理,而在當(dāng)今,遠(yuǎn)程協(xié)作開發(fā)已是必需.同一項目有時需要分布在不同地區(qū)甚至不同國家的開發(fā)小組共同開發(fā),或者公司員工需要在外地對公用文檔進行方便、安全的訪問,而使用傳統(tǒng)的E-mail或ftp并不合適這種情況.本文討論了利用VPN技術(shù)結(jié)合VSS實現(xiàn)了遠(yuǎn)程協(xié)作開發(fā)的一種途徑.
Microsoft的VSS解決了軟件開發(fā)小組長期所面臨的版本管理問題,它可以有效地幫助項目開發(fā)組的負(fù)責(zé)人對項目程序進行管理,將所有的項目源文件(包括各種文件類型)以特有的方式存入數(shù)據(jù)庫.開發(fā)組的成員不能對該數(shù)據(jù)庫中的文件進行直接的修改,而是由該版本管理器將該項目的源程序或是子項目的源程序拷貝到各個成員自己的工作目錄下進行調(diào)試和修改,然后將修改后的項目文件作Checkin提交給VSS,由它進行綜合更新.VSS也支持多個項目之間文件的快速高效的共享.當(dāng)某個成員向VSS中添加文件時,該文件將會被備份到數(shù)據(jù)庫中,以便所有的成員都能共享該文件.而且每個成員對所有的項目文件所作的修改都將被記錄到數(shù)據(jù)庫中,從而使得修改的恢復(fù)和撤銷在任何時刻,任何位置都成為可能.小組的成員可以得到該項目的最新版本,對它進行修改,并保存一個新的版本.
VSS的項目組織管理使得開發(fā)小組的協(xié)調(diào)變得簡單容易且很直觀,當(dāng)一個或一組文件發(fā)放給另一個成員、小組、Web站點或是任何其他的地址,VSS確保他們之間的真正共享及所選的一組文件的不同版本的安全性.現(xiàn)在,越來越多的開發(fā)者可以通過他們的開發(fā)環(huán)境來訪問VSS的功能.而且VSS可以很容易地于Microsoft Access、Visual Basic、Visual C++、Visual FoxPro 和其他的開發(fā)工具集成在一起,一旦VSS集成到開發(fā)環(huán)境中,就可以象控件一樣使用,能夠很好地體現(xiàn)出VSS的易用性和強大功能.對于公司的公用文檔,也可以使用VSS進行方便、簡單、安全和有效的管理.
虛擬專用網(wǎng) (Virtual Private Network,VPN)是一種“基于公共數(shù)據(jù)網(wǎng),給用戶一種直接連接到私人局域網(wǎng)感覺的服務(wù)”.VPN區(qū)別于一般網(wǎng)絡(luò)互聯(lián)的關(guān)鍵于隧道的建立,然后數(shù)據(jù)包經(jīng)過加密后,按隧道協(xié)議進行封裝、傳送以保安全性.一般,在數(shù)據(jù)鏈路層實現(xiàn)數(shù)據(jù)封裝的協(xié)議叫第二層隧道協(xié)議,常用的有PPTP、L2TP等;在網(wǎng)絡(luò)層實現(xiàn)數(shù)據(jù)封裝的協(xié)議叫第三層隧道協(xié)議,如IPSec;另外,SOCKS v5協(xié)議則在TCP層實現(xiàn)數(shù)據(jù)安全.PPTP和L2TP最適合用于遠(yuǎn)程訪問虛擬專用網(wǎng).虛擬專用網(wǎng)絡(luò)允許遠(yuǎn)程通訊方,銷售人員或企業(yè)分支機構(gòu)使用Internet等公共互聯(lián)網(wǎng)絡(luò)的路由基礎(chǔ)設(shè)施以安全的方式與位于企業(yè)局域網(wǎng)端的企業(yè)服務(wù)器建立連接.虛擬專用網(wǎng)絡(luò)對用戶端透明,用戶好象使用一條專用線路在客戶計算機和企業(yè)服務(wù)器之間建立點對點連接,進行數(shù)據(jù)的傳輸.這種跨越Internet建立的VPN連接邏輯上等同于兩地之間使用廣域網(wǎng)建立的連接.雖然VPN通訊建立在公共互聯(lián)網(wǎng)絡(luò)的基礎(chǔ)上,但是用戶在使用VPN時感覺如同在使用專用網(wǎng)絡(luò)進行通訊,所以得名虛擬專用網(wǎng)絡(luò).虛擬專用網(wǎng)絡(luò)支持以安全的方式通過公共互聯(lián)網(wǎng)絡(luò)遠(yuǎn)程訪問企業(yè)資源,并且極大地降低了用戶的費用,而且提供了比傳統(tǒng)方法更強的安全性和可靠性.VPN可分為三大類:(1)企業(yè)各部門與遠(yuǎn)程分支之間的Intranet VPN;(2)企業(yè)網(wǎng)與遠(yuǎn)程(移動)雇員之間的遠(yuǎn)程訪問(Remote Access)VPN;(3)企業(yè)與合作伙伴、客戶、供應(yīng)商之間的Extranet VPN.
虛擬專用網(wǎng)至少提供三項功能:(1)加密數(shù)據(jù),以保證通過公網(wǎng)傳輸?shù)男畔⒓词贡凰私孬@也不會泄露.(2)信息認(rèn)證和身份認(rèn)證,保證信息的完整性、合法性,并能鑒別用戶的身份.(3)提供訪問控制,不同的用戶有不同的訪問權(quán)限.VPN原理示意如圖1:
由于目前VSS僅支持同一局域網(wǎng)內(nèi)用戶的協(xié)作開發(fā),即VSS服務(wù)器同VSS客戶機是處在同一局域網(wǎng)段內(nèi),因而遠(yuǎn)程小組或用戶若參與到項目中去,就必須也是同一局域網(wǎng)用戶,但在許多情況下,各開發(fā)小組是分布在全國甚至全球,從而給遠(yuǎn)程協(xié)作帶來不便.那么如何既能發(fā)揮VSS的強大管理功能又能突破VSS對開發(fā)小組限制呢?我們考慮了一種方法,即利用VPN技術(shù),讓遠(yuǎn)程小組或用戶登錄到VPN服務(wù)器上,將VSS服務(wù)器同VPN服務(wù)器置于同一局域網(wǎng)段內(nèi),分配給遠(yuǎn)程小組或用戶(此時為VPN客戶)以同一局域網(wǎng)段內(nèi)的IP地址,遠(yuǎn)程小組或用戶(VPN客戶)就可以通過VPN服務(wù)器來訪問VSS服務(wù)器了,就像處在同一局域網(wǎng)內(nèi)一樣,從而實現(xiàn)對同一項目的遠(yuǎn)程協(xié)作開發(fā)與管理.不僅對于遠(yuǎn)程用戶,對于較大型企業(yè)網(wǎng)內(nèi)的不同網(wǎng)段的用戶也可以通過VPN技術(shù)實現(xiàn)對內(nèi)部VSS數(shù)據(jù)庫的安全訪問.數(shù)據(jù)雖然在公網(wǎng)上傳輸,但由于使用了VPN技術(shù),真實數(shù)據(jù)是在隧道中傳輸?shù)?,并進行了加密和認(rèn)證,因而是安全和可靠的.如圖2:
我們以Windows2003 Server VPN為例來構(gòu)建上述的系統(tǒng)方案
5.1 安裝VSS SERVER
VSS SERVER安裝比較簡單,可在Windows NT、Windows9x/2k/xp下安裝,采用C/S模式,先選擇一臺PC或?qū)S梅?wù)器安裝好操作系統(tǒng) (如Windows 2003 Server), 將 Visual Studio 6.0 的CD1放入到CD-ROM中,進入自動安裝,選擇“Server Applications and Tools(Add Only)” ,然后依照提示向下安裝即可完成.
5.2 安裝配置Windows 2003 VPN SERVER
先安裝兩塊網(wǎng)卡,一塊網(wǎng)卡接公網(wǎng),設(shè)公網(wǎng)IP地址,一塊網(wǎng)卡接企業(yè)內(nèi)網(wǎng),設(shè)私網(wǎng)地址,如192.168.0.1.為節(jié)約設(shè)備,也可將VSS SERVER和VPN SERVER上安裝在同一臺服務(wù)器上.
5.3 windows 2003 VPN服務(wù)端安裝配置
在windows2003中VPN服務(wù)稱之為“路由和遠(yuǎn)程訪問”,默認(rèn)狀態(tài)已經(jīng)安裝.只需對此服務(wù)進行必要的配置使其生效即可.
第一步:依次選擇“開始”-“管理工具”-“路由和遠(yuǎn)程訪問”,打開“路由和遠(yuǎn)程訪問”服務(wù)窗口;再在窗口右邊右擊本地計算機名,選擇“配置并啟用路由和遠(yuǎn)程訪問”.
第二步:在出現(xiàn)的配置向?qū)Т翱邳c下一步,進入服務(wù)選擇窗口.如果你的服務(wù)器只有一塊網(wǎng)卡,那只能選擇“自定義配置”;而一般VPN配置是需要兩塊網(wǎng)卡的,如果你服務(wù)器有兩塊網(wǎng)卡,則可選擇第一項(遠(yuǎn)程訪問)或第三項(虛擬專用網(wǎng)訪問和NAT).然后一路點擊下一步,完成開啟配置后即可開始VPN服務(wù)了.
第三步:選擇VPN服務(wù)及本地連接并進行相關(guān)IP地址范圍的設(shè)置,地址范圍是分配給客戶端使用的, 比如此處為 “192.168.0.20~192.168.0.30”(請注意,此IP地址范圍要同VSS服務(wù)器的IP地址處在同一個網(wǎng)段中).使用靜態(tài)IP可減少IP地址解析時間,提升網(wǎng)絡(luò)速度.
第四步:最后,選擇“否,使用路由與遠(yuǎn)程訪問來進行連接請求的身份驗證”.經(jīng)過以上的步驟,VPN SERVER已正式開始工作了.
5.4 VPN客戶端配置
這一端配置相對簡單得多,只需建立一個到VPN服務(wù)端的專用連接即可.首先肯定客戶端也要接入internet網(wǎng)絡(luò),接著筆者同樣以windows 2003客戶端為例說明,其它的win2K/XP操作系統(tǒng)設(shè)置都大同小異:
第一步:在桌面“網(wǎng)上鄰居”圖標(biāo)點右鍵選屬性,之后雙擊“新建連接向?qū)А贝蜷_向?qū)Т翱诤簏c下一步;接著在“網(wǎng)絡(luò)連接類型”窗口里點選第二項“連接到我的工作場所的網(wǎng)絡(luò)”,繼續(xù)下一步,在網(wǎng)絡(luò)連接方式窗口里選擇第二項“虛擬專用網(wǎng)絡(luò)連接”;接著為此連接命名后點下一步.
第二步:在“VPN服務(wù)器選擇”窗口里,輸入VPN服務(wù)器端IP,最后,為方便操作,可以勾選“在桌面上建立快捷方式”選項,單擊完成即會先出現(xiàn)一個VPN連接窗口.輸入訪問VPN服務(wù)端合法帳戶后的操作就跟XP下“遠(yuǎn)程桌面”功能一樣了.
5.5 通過Internet進行VPN連接
第一步:遠(yuǎn)程用戶首先通過撥號或其它方式連入Internet(包括無線方式).
第二步:連入Internet后再進行VPN連接,在相應(yīng)處輸入VPN服務(wù)器在Internet上合法的IP地址(外網(wǎng)卡IP地址),及相應(yīng)用戶名和密碼,再點“連接”按鈕.連接成功之后可以看到,雙方的任務(wù)欄右側(cè)均會出現(xiàn)兩個撥號網(wǎng)絡(luò)成功運行的圖標(biāo),其中一個是到Intenet的連接,另一個則是VPN的連接了.
第三步:當(dāng)雙方建立好了通過Internet的VPN連接后,即相當(dāng)于又在Internet上建立好了一個雙方專用的虛擬通道,而通過此通道,雙方便可以通過IP地址或網(wǎng)上鄰居來達(dá)到互訪的目的,也就是說相當(dāng)于又組成了一個局域網(wǎng)絡(luò),這個網(wǎng)絡(luò)是雙方專用的,而且具有良好的保密性能.
5.6 遠(yuǎn)程安裝VSS客戶端
遠(yuǎn)程用戶通過VPN連接登錄到VPN服務(wù)器上,獲得一個私網(wǎng)地址,就可以通過IP地址或網(wǎng)絡(luò)鄰居來訪問VSS服務(wù)器,在VSS 6.0服務(wù)器安裝完畢后,就可以在VSS管理員的指導(dǎo)下安裝客戶端的軟件.由于我們是在一個Windows環(huán)境的子網(wǎng)內(nèi),每臺PC客戶機均可通過IP地址或網(wǎng)上鄰居來訪問VSS服務(wù)器.在VSS管理員為用戶指明VSS客戶端軟件的安裝程序 “Netsetup.exe”的位置后,用戶可以直接通過資源管理器“Explorer”在網(wǎng)上鄰居中找到該程序,并雙擊以運行它,從而完成遠(yuǎn)程VSS客戶端的安裝.
至此,我們完成了整個系統(tǒng)的構(gòu)建,從上述的構(gòu)建過程,我們不難看出遠(yuǎn)程訪問VSS數(shù)據(jù)庫實際上經(jīng)歷了兩個過程:先建立遠(yuǎn)程Internet連接,連接建立后,在建立VPN連接,以VPN身份客戶登錄VPN SERVER;登錄成功后,再以VSS客戶身份登錄VSS SERVER,兩次登錄的用戶名可以不一樣.雖然是在公網(wǎng)上進行數(shù)據(jù)傳輸,但由于VPN的隧道機制及相關(guān)協(xié)議可以保證數(shù)據(jù)的安全性,因而方案是可行的.需要注意的是,VPN SERVER必須同VSS SERVER安裝在同一個局域網(wǎng)段內(nèi),否則遠(yuǎn)程用戶仍然無法訪問VSS SERVER.
[1]肖曉梅.利用VPN實現(xiàn)高校校園網(wǎng)的遠(yuǎn)程訪問[J].中國教育信息化,2008,(9).
[2]胡杰.版本管理器Visual SourceSafe 6.0 http://blog.csdn.net/ragecheung/article/details/105024,2008.
[3]戴剛,文信翔,公丕強.VPN在企業(yè)中應(yīng)用的研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用.2010,(4).
VPN TECHNOLOGY BASED ON VSS REMOTE PROJECT MANAGEMENT IMPLEMENTATION
WANG Hong-wei1,2
(1 School of Computer&In formation-HFVT,Hefei University of Technology,Hefei Anhui 230009)
(2 Network and Information Center,Technology,Hefei Anhui 230009)
This article describes the basic principle of VSS and VPN technology,discussed the use of VPN technology for remote collaboration with VSS to achieve the development of principles,and gives a Windows-based environment to achieve program.
VPN;VSS;Remote collaboration;Windows2003
TP393
A
1672-2868(2011)06-0025-04
2011-11-05
王宏衛(wèi)(1972-),男,安徽巢湖人。講師,碩士研究生,研究方向:計算機網(wǎng)絡(luò)
責(zé)任編輯:陳 侃