如何架設免費SSL VPN的網路服務

為了強化使用者存取企業內網的安全,及改善VPN的連線穩定度(以在某些地區的使用而言),因此許多網路設備隨著新型號的推出,或者是韌體的修改,而取消了PPTP的VPN伺服器功能,改以容易使用,及具備強大加密能力的SSL VPN做為替代。對於企業來說,SSL VPN主要可以透過2種方式建置:一是購買單一功能的設備;其次,則是使用內建在防火牆等網路設備的SSL VPN伺服器來連線。然而,眾所皆知的是,單一功能的SSL VPN閘道器大多十分昂貴,僅有IT預算充裕的單位得以負擔,而多功能的網路設備則因為需要提供多種服務,因此可供連線的通道數較少,在這種情況下,透過開放原始碼的套件,自行架設SSL VPN也不失為一種可行的做法。

這次我們測試的SSL-Explorer,原本是3SP開發的SSL VPN伺服器套件,它可以分為付費、具備完整功能的Enterprise,及免費使用的Community等2種版本。而在2008年11月,該公司為資安廠商Barracuda收購之後,Enterprise版便改以硬體設備,及VMware虛擬設備(Virtual Appliances,VA)的型式提供,風貌也與以往的軟體套件有所不同。其中,硬體設備的產品線有SSL VPN180、280,一直到最大的880,共囊括6款型號的設備,提供10到1,000位不等的使用者從遠端連線之用;至於Community版,則是改以開放原始碼的套件型式,在SourceForge網站開放下載,最新版本為2008年推出的1.0.0_RC17。


部署環境以Unix為主,需搭配Java始能運作
SourceForge所提供的SSL-Explorer,主要為適用於Unix-based環境的套件。在iThome的測試環境,我們將它先後安裝在CentOS 5.5,及系出同源的Fedora 14等2種Linux作業系統,結果皆能順利運作,而在部署之前,我們必須確認Linux是否已經安裝Java SE Development Kit(JDK),及Apache Ant(類同於Unix下的make工具)等2套做為搭配的軟體。

SSL-Explorer是一套基於Java開發而成的SSL VPN伺服器,而Linux版本的JDK可以從Sun的官網下載。

Apache Ant的安裝頗為容易,它可以透過CentOS,及Fedora皆內建的YUM部署,自行從YUM的網路伺服器下載檔案安裝;不僅如此,YUM還會偵測執行Apache Ant所需的其它軟體。如果沒有的話,就會一併安裝,或者加以更新。

SSL-Explorer的部署,需透過Apache Ant編譯、安裝,在SSL-Explorer安裝檔所在的目錄,執行「ant install」指令之後,會在文字介面顯示網頁設定介面的所在網址,透過瀏覽器以HTTP、TCP 28080埠的管道連入之後,便能以設定精靈的方式,完成SSL VPN伺服器的基本設定;接著,再於文字介面下,執行「ant install-service」指令,將SSL-Explorer加入Linux的系統服務列表,便可以透過service指令啟、停用SSL VPN伺服器的服務。以iThome實際的安裝經驗來說,整個流程大約可以在4分鐘以內結束。

值得注意的是,安裝完成之後,我們還必須修改SSL-Explorer的系統編碼設定,最後,再重新啟動SSL VPN伺服器的服務,SSL VPN伺服器的部署也就到此告一段落。


另可透過虛擬設備檔部署,降低安裝難度
除此之外,免費版本的SSL-Explorer也有與Linux整合好的VMware虛擬設備檔,放置在SourceForge網站開放下載,這個壓縮後的檔案大小為146MB,解開之後則為476MB,而VMDK檔預設的虛擬磁碟體積上限為1.8GB。它所使用的SSL VPN伺服器套件版本,同樣為1.0.0_RC17。

透過虛擬設備部署SSL-Explorer,可以說是最簡單的一種架設方式,當它於VMware Server/Workstation,或者是vSphere/ESXi的環境啟動之後,就可以連入設定介面,以精靈介面的型式完成基本設定,完成之後,僅需再重新啟動SSL VPN伺服器的服務,就能使其上線,不需要修改憑證的編碼設定。

不過,有鑒於SSL VPN運作時,對於系統資源會有不少的消耗,對於欲開放大量使用者從外部連入的企業來說,我們建議最好可以儘量加大配屬給虛擬設備的記憶體(預設為512MB),及處理器資源(預設為單顆處理器),藉此提高其運算能力,或者架設於實體主機的環境。

雖然SSL-Explorer本身已經不再更新,但是在GPL的規範之下,其他人仍然可以利用其原始碼繼續開發,例如Adito(後來改稱為OpenVPN ALS)就是以其為藍本,發展出來的的SSL VPN伺服器套件,因此兩者的操作介面、安裝方式也幾乎相同,它最新的版本為0.9.1,而安裝檔目前只有安裝在Unix-based系統的套件,尚未推出虛擬設備的版本,因為如此,這次我們主要仍以SSL-Explorer,做為免費SSL VPN伺服器的介紹對象。


連線設定主要區分為3大類
SSL-Explorer所使用的SSL憑證,預設為一般常見的1,024位元長度,然而,它也支援更為強健的2,048位元長度的SSL憑證,使它得以完整因應企業對於各種連線加密的需求。而在連線的控管方面,SSL-Explorer可以設定單一帳號,或者每個IP位址所能建立的通道數,確保不會有其他人使用相同帳號連入。

除了系統的基本設定之外,SSL-Explorer的大多數功能,也都可以透過設定精靈的方式操作,而點選網頁介面的說明,即有圖文並具的說明可供參考,這對於採用這套開放源始碼系統的企業來說,可以大為提升操作的親和度。

和大多數單一功能的SSL VPN閘道器一樣,SSL-Explorer對於內網的存取方式,以網頁型式的反向代理為主,它將企業內網的資源區分為Web Forwards(網頁連線)、Network Places(網路空間存取),及Applications(應用程式連線)等3種不同的類型。在權限的控管上,SSL-Explorer可以如同iThome測試過的其他SSL VPN閘道器,設定讓個別的群組,存取不同的內部資源項目。

● Web Forwards
SSL-Explorer能透過多種方式連線到內部的網頁伺服器,這其中,以Replacement Proxy,及Tunneled Web等2種方式最為常用。

Replacement Proxy就是一般常見的網頁反向代理,它的設定十分容易,一般來說,我們僅需要輸入網頁伺服器的IP位址,或者帶有存取路徑的網址,及透過下拉式選單定義網頁的編碼方式,最後,設定好可以存取該項目的使用者帳號,或者群組之後,即可透過SSL-Explorer,從外部存取來企業內部的網頁服務。

至於Tunneled Web,則是以類似NAT,提供網頁伺服器的遠端存取。它的基本設定和Replacement Proxy大同小異,實際連線時,它會在個人端電腦安裝連接器的Java-based代理程式,隨後,我們將能透過SSL VPN伺服器所在的IP位址,及一個由SSL-Explorer隨機給予的通訊埠,與網頁伺服器連線,在連接器未關閉的情況下,可以繼續使用瀏覽器以這個網址做連線,而不需要每次都透過SSL VPN的網頁介面才能存取。

● Network Places
透過Network Places,我們可以設定使用者對於內網的資料存取。和一般SSL VPN閘道器不同的是,SSL-Explorer不只能將後端伺服器的儲存空間,透過FTP、網芳等型式,提供給使用者遠端存取之外,也能將主機本身的硬碟空間分享出來,做為網路磁碟使用。

《詳細內文請見iThome電腦報500期(www.ithome.com.tw),天瓏、誠品、何嘉仁、搜主義、敦煌、法雅客、Page one書店均有銷售》


500期其他精采內容:
.封面故事:CEO看IT
.CIO TALK:亞洲大學打造臺灣最大規模教學雲 用桌面虛擬化統一標準簡約管理
.新聞:個資法施行細則擬11月25日公布
.新聞:甲骨文罕見大規模更新73項關鍵弱點,涵蓋資料庫與中介軟體
.產品測試:伺服器:泰安FT48B8812
.產品測試:文件安全控管系統:優碩TrustView File Lock 1.0
.程式人:提升程式存取資料速度的必殺技/王建興
.IT英文:當紅的觸控式平板裝置Media Tablets