VPN介紹及其軟體使用建議

来源:百度文库 编辑:神马文学网 时间:2024/04/27 19:28:10
■VPN介紹及其軟體使用建議
前言:
在網際網路發展的初期,網路範圍並不如現在這般的廣大,當時IPV4所定義之公用網
路位址範圍已足以應付一般企業之各種需求;然而在最近 20 年網際網路蓬勃發展,原本
定義之網路位址數量亦已供不應求,因此遂有所多新興的技術發展出來,舉凡IPV6、VLSM
、CIDR、NAT等都是為了解決該問題所衍生出之網際網路技術;而 VPN (Virtual Private
Network) 虛擬私有網路的出現則是為了解決跨區域之大型企業的網路連線與安全問題所
衍生的。本篇文章介紹VPN及其軟體使用建議,供大家作為使用上的參考。
一、VPN 簡介:
在傳統網際網路時代,跨區域之大型公司為使各地之分公司能與總公司連結以建立公
司之內部網路 (Intranet),通常需要向網際網路服務提供者 (ISP) 申請,架設一條專有
線路以供企業體專門使用,而牽線之費用隨距離成倍數上升,且每個月所需負擔之網路費
用亦高的嚇人,每每令許多中小型企業不勝負荷。而 VPN 技術之發展即為解決該問題。
透過於網際網路中利用協定建立專屬通道 (tunnel),而達到傳統專有線路之功效; 除此
之外公司傳遞檔案大多具有機密性,而在網際網路擴大後最為人詬病的即是其安全性之問
題,VPN 技術除提供通道技術外,在資料傳輸之過程中亦有對資料進行加密及身份驗證等
多項保護,使 VPN 技術於今深受各企業所喜愛。
VPN 網路之應用類型大致可分為兩類:
1.遠端存取 VPN 連線 (remote access VPN connection)
VPN 用戶端可在遠端先與 ISP 撥接連上網際網路,而後透過 ISP 與總公司之 VPN
伺服器進行連線請求以建立 VPN 連線,如此即可透過該連線安全地傳送資料,使
VPN 用戶端感覺像身處總公司內部網路般。
2.站台對站台 VPN 連線 (site to site VPN connection)
它又稱為路由器對路由器 VPN 連線 (router to router VPN connection); 該連
線方式可透過兩分處不同地區之區域網路透過雙方之 VPN 伺服器來建立 VPN 連線
,使兩區域網路內之使用者可安全地透過 VPN 連線來傳送資料。 兩地使用者亦感
覺身處同一區域一樣方便。此時之 VPN 伺服器又稱為 VPN 閘道器(VPN gateway)。
因此企業應用VPN技術我們可以歸納出以下幾項優點:
1.節省建製及維護費用
透過 VPN 技術建造之企業通道不僅不需付上大筆費用於 ISP 牽線,亦可節省後日
昂貴之線路維護費用。
2.管理容易且方便
VPN 技術之實作可透過軟體設定完成,且架設及設定不需耗費太多時間及人力,只
要公司 MIS 人員規劃好連線政策後,即可上線實行;另外在後續管理及設定上亦
可由公司內部管理人員於網路上設定,不需透過 ISP,增加管理的便利性。
3.可擴充性
隨著企業體之擴大,分公司可能會散佈於各地;此時如欲將新增之分公司網路與總
公司連結,僅需重新針對設定檔重新設定即可,而不需要再作太多額外的實體動作。
二、做好 VPN 之安全防護
網際網路上最為人所詬病之處即為其於安全性議題上的弱點,因此欲於此種不安全之
網路上建立安全之專屬通道,不免讓人笑掉大牙。而 VPN 之技術即為加強安全性而來,
因此其爭對安全該項議題使用了一堆技術來確保通訊安全。我們介紹如下:
1.加密編碼 (encryption)
VPN 最重視的即為資料的傳輸安全性,因此除下述會提到之身份驗證機制外,資料
的加密編碼技術更是重要。VPN 常用之加密技術主要有下列兩種:
(1).私鑰加密編碼 (private key)
私鑰加密編碼也就是所謂的 Symmetric cryptography 方式,利用單一之私密金
鑰散佈於需要傳送與接收資料之使用者,利用同一把要使來對資料進行加密及解
密的動作。
不過此種加密方式在鑰匙管理上有個明顯的缺點;就是過多人擁有金鑰會對管理
上造成不便,此外如果有人將金鑰給洩露出去,更換鑰匙也會是一項大工作。
(2).公鑰加密編碼 (public key)
公鑰加密方式即為所謂之 Asymmetric cryptography 方式,每個人都有有獨一
無二的 public key 和 private key,並將自己之 public key 散佈於公眾網路
上,而自己保留 private key,該項加密之方式可以有多種用途,如 A 方欲將
機密資料傳遞給 B 方,只需要用 B 方之 public key 先將資料加密而後再用自
己 (A方) 之 private key 將資料在加密,如此 B 方可以先用網路上取得之 A
方的 public key 解開資料並驗明該資料是由 A 方所傳遞 (身份驗證),而後再
利用自己 (B方) 之 private key 將資料解密,如此即可達到驗證及加密之功效
。而目前所研發之網路技術越來越重視機密資料傳輸的安全性,如 Secure IP
(IPsec)與 IPV6等協定都慢慢將該項議題給考量在內,也更確保未來資料傳輸之
可靠度。
2.身份驗證 (authentication)
有人欲透過網路與你進行連結,但你又看不到他,此時我們要如何進行確認動作?
因此我們需要有「身份驗證」的機制存在,身份驗證就像你於登陸遠端主機時輸入
帳號、密碼之動作一樣都是驗明正身的方式,而 VPN 針對該點之檢驗更是嚴格。
VPN 身份驗證之機制是建立在 shared key 的基礎上,由傳輸雙方擁有共同之一把
key ,而 key 不能直接赤裸裸的於網路上傳遞,因此需要一套「雜湊演算法」
(hash algorithm) 處理過再傳遞之,使即便該 key 於網路上被有心攻擊者攔截,
亦很難或不可能逆解出雜湊值。因此透過共享之該把 key 傳輸雙方可以有效之驗
證雙方之身分,以達到身份驗證之動作。而常用之身分驗證檢查法如 通關檢驗協
定 (Challenge Handshake Authentication protocol, CHAP)、PAP、MSCHAP、
X.509等都是常見身份驗證法。
3.封包通道 (packet tunneling)
通道 (tunnel) 之技術是一種「包容」不同協定的技術,利用該技術將不同協定
(如:NetBEUI、Mac電腦之協定等) 都包在一封包內傳遞,使其可以於網際網路上
傳遞,目前常用之通道協定如下所示:
◎ PPTP
PPTP(Point-to-Point Tunneling Protocol)由Microsoft、3COM、U.S. Robotics
、Ascend、ECI等企業所聯合發展。支援 Multi-Protocol 可說是他相當大的優點,
如:IP、IPX、NetBEUI、AppleTalk。PPTP 的傳輸介面為 IP 封包、與下層介面無
關。實質傳輸介面 (Physical Layer) 的改變,只要不影響 IP 封包傳輸,並不會
影響 PPTP 封包的運送。
⊙ PPTP的運作模式:
a.PPTP Tunneling 建立的方式有 Client-initiated 經由客戶端撥接至 ISP,並
和 ISP,再由客戶端啟動 PPTP 的 Session 和欲建立的另一端 PPTP Server 建
立通道。
b.ISP-initiated 客戶端和 ISP 的 Access Server 建立 PPP 連線後,經由 ISP
的 Access Server 和目的端 PPTP Server 建立通道,客戶端不需安裝 PPTP
Client 完全由 ISP-PPTP-enable。
c.LAN-to-LAN tunneling 在 PPTP Server 兩端建立 PPTP tunneling,如在 NT
Server上加裝 Microsoft 的 Routing and Remote Access Service(R&RAS)。
◎ L2TP/IPsec
L2TP (Layer Two Tunneling Protocol/IPsec) 是經由 Cisco 的 L2F (Layer Two
Forwarding) 和 Microsoft 的 PPTP 合作並在 IETF 的規範下發展而成。因此安
全性更佳,且 L2TP 的傳輸介面為 UDP 封包、與下層介面無關。實質傳輸介面
(Physical Layer) 的改變,只要不影響UDP封包傳輸,並不會影響 L2TP 封包的運
送。其採用 IPsec (Internet Protocol Security) 的加密方式,並支援預先共用
金鑰 (Pre-shared key) 與憑證 (certification) 兩種驗證方式。
⊙ IPsec通道模式:
IPsec 為第三層的穿隧技術,專門為 IP 所設計,不但符合現有 IPv4 的環境,同
時也是 IPv6 的標準,它也是 IEIF 所制定的業界標準,目前 IETF 從 1995 年起
,陸續公佈許多網路安全之相關技術標準。這些標準統稱為 IPSec (IP Security,
RFC1825~1829,RFC1851,RFC2085,RFC2104)。
⊙ IPSec運作模式:
a.ESP(Encapsulation Security Payload)
提供認證和加密
b.AH(Authentication Header)
只提供認證的動作,通常是靠MD5、SHA1來確認使用者的身分
c.ISAKMP(IP Security Association Key
使交換鑰匙的動作自動化且安全
4.防火牆(firewall)
防火牆該項取名與實體環境中之防火牆有異曲同工之妙,傳統防火牆為實體環境建
立有效阻隔,使特定區域免受祝融之苦;而網路防火牆亦有相同之功效,透過封包
過濾機制 (packet filter) 可以有效將不受歡迎之流經封包有效阻擋在防火牆外。
目前大多數之 VPN 產品都有與防火牆整合之設計了,因建議您在使用 VPN 建立方
便之網路連線前,請先確保您有架設有效之防火牆保護。
三、VPN 軟體安全防護
1.Windows 環境下
◎ Microsoft ISA Server 2004
Microsoft ISA Server 2004 是微軟公司所發行的一套防火牆、VPN 和 Web 快速解
決方案的一個產品。
ISA Server 2004 目前僅能安裝在 Windows 2000 Server 以及 Windows 2003 Server
兩套作業系統版本上。新版的 ISA Server 2004 中,對於 VPN 用戶端的安全連線存
取部分,除了提供了舊版原有的 RADIUS 整合驗證機制之外,它還延伸了在 Windows
2003 Server中少為人知的遠端存取隔離控管 (Quarantine Control) 的新功能。
遠端存取隔離控管 (Quarantine Control) 就是一種用來限制遠端使用者存取內部網
路的驗證機制,唯有在遠端使用者通過伺服器的一切限定後才予以放行。而在予以隔
離的時間之內,通常都僅只能存取有限的資源,且會於一定時間後斷線。一般用來作
驗證的動作大致有,檢查最新的修正程式 (Service Pack) 或補強程式 (Hotfix) 是
否安裝,檢查防毒程式是否有安裝與啟動中,以及病毒碼是否有更新,檢查路由功能
是否關閉,以避免在 Internet 上的惡意使用者,藉由用戶端所啟用的路由功能來入
侵企業內部網路。
另外ISA Server 2004 採用加強之驗證方式 L2TP/IPSec 來進行管控,使安全更能被
確保。L2TP/IPSec 用來驗證使用者身份的方法可分為憑證與預先共用金鑰兩種;憑
證的使用方式必須企業先向主管單位申請信任憑證,而後於企業內部網路開放憑證申
請,也僅有在雙方都具有 CA 時才能建立安全的 L2TP/IPSec VPN。而欲使用預先共
用金鑰 (pre-shard key) 來驗證身份的 L2TP/IPSec VPN,則 VPN 伺服器端及 VPN
用戶端皆不需向 CA 申請憑證,而是設定相同的預先共用金鑰,而其他設定方式都與
使用 CA 建立類似。相關設定方式可參考附錄一 (*)。
◎ SoftEther
SoftEther是一套於 2003 年日本築波大學一年級學生登游大自編的軟體,此軟體簡
單的說就是模擬乙太網路的工作順序,甚至可以模擬 HUB 功能,使用 tunnel 特性
以實現 VPN。該套軟體實作之方式是:
(1).在 OSI 七層中的第二層鏈結層 (Link layer) 用軟體模擬網路通訊,將實體層
(physical layer) 的物理特性封包內容給封裝進 TCP 封包內 (利用軟體模擬)。
(2).將自己的通訊封包利用 SSL session 包裝,藉由 HTTPS 協定傳輸出去,而大多
數防火牆皆不會阻擋該協定封包,亦無法查知其內容,藉以矇騙過防火牆偵測。
該軟體發行之初曾引起日本信息處理事業協會 (IPA,負責日本Internet運營管理/
安全的機構) 的高度關切,並禁止其繼續公布,因為利用該軟體將可以輕易的穿透所
有防火牆。該種軟體是屬於一種主動式的連結,藉由由內部網路所主動發起之連線與
外部主機建立 tunnel,再透過該連線繞過防火牆驗證進入內部網路。不過該軟體並
不適合安裝於大型網路環境,除非建立自己的私有虛擬 HUB,且經過妥善之設定。相
關設定與探討可參考附錄二 (*)。
2.Unix 環境下常見作法
◎ VPN-PPTP
PoPToPv 是在 Linux 上建置 VPN 的其中一種方法,它可以讓 Linux、Windows 95、
98、NT、2000 可利用現有套件簡單的撥號網路與 VPN Server 建立安全的 VPN 通道
。目前可支援 40 及 128 位元的加密方式。設定與操作方式可參考附錄 (3.3)。
◎ IPSec_ESP
IPSec 加密方式為我們先前所提到過之優秀的通道加密方式,利用方式可以輕易的建
立 VPN tunnel ,不論是 site-to-site 或 point-to-point VPN 都是可輕易完成。
相關 kernel、防火牆及路由設定方式可參考附錄 (3.4, 3.5)。
四、結論
VPN 技術的發展雖然造福了很多公司的發展,但也帶來了許多安全管理上的挑戰,誠
如前面所提到之 SoftEnther 軟體既可用來當作 VPN 伺服器軟體使用,但只要有心人士
錯誤使用,即會造成公司網安上的一大漏洞。因此針對 VPN 的使用與管理,更是我們所
應該做好的,把未經安全檢驗的 VPN 伺服器架上公司網路,只會提高公司的網路危機,
而不會帶來任何好處。故如何在便利與安全的天平上做好權衡,不僅是 MIS人員所應注
重之課題,亦是主管單位所應好好考量的。以下我們提供幾點安全措施的建議供大家參
考與檢驗:
1.限制哪些人可以存取 VPN
把 VPN 供公司所有人員使用實在不是一件明智的事情,因此控制 VPN 使用者之人及
杜絕不需使用之人員,並確保其使用目的,如此以有效控管。會需要使用到 VPN 的
人如:
(1)SOHO族,在家工作者。
(2)系統或網站維護人員,需要存取到伺服器系統。
(3)出差之業務人員需要透過內部網路收發電子郵件。
並教育使用者定期更換密碼,以及控管離職人員之登陸帳號等議題。
2.限制 VPN 使用者所能作的事情
好的網管人員不應該將公司內部網路整個暴露在 VPN 用戶端面前,而應有效之區分
企業網路成數個部分,如依業務性質區分成:會計部、資訊部、採購部等。或依資料
重要性進行有效之實體隔離。故於設計 VPN 用戶端撥進公司網路後可存取之範圍時
,應依其需使用之業務內容進行調整,如業務人員僅需使用公司對外之 IP 位址以登
入郵件伺服器收信,則就不應讓其撥進內部網路。種種設定政策都要依實際公司的營
運狀況作調整,故 MIS人員與各部門亦應保持良好之溝通管道。
3.避免 VPN 伺服器與路由器的資訊公開到公眾 DNS
由於 VPN 伺服器有可能造成公司網路的一大漏洞以及駭客攻擊的目標,所以不應該
讓攻擊者知道太多有關 VPN 伺服器的資訊,最簡單的就是不要讓其具有 DNS 主機名
稱 (hostname),如非不得以需要設定,則也請設定一個假的 DNS 伺服器供上層查詢
用,然後於內部架設一真正使用之 DNS 伺服器。
4.使用最新的技術
隨時注意相關軟體之更新及修補訊息,因為你絕對不會希望該台伺服器有被攻破的一
天,因此時時更新、修補漏洞將系統做到滴水不漏,將可以為你省卻很多麻煩。
5.加強人員之教育訓練
系統的防護再深,也難保內部人員的亂搞。管理最難之處即在於人,因此適當的教育
即告之內部人員使用及防範方法,可有效幫助系統之防護。
五、附錄
1.ISA Server 2004 – 防火牆安裝與管理指南, 戴有煒, 碁峰資訊股份有限公司。
2.http://www.vlab.com.tw/vlabforums/viewtopic.php?t=5613
3.其他參考資料
(1).Virtual Private Networks second edition – Charlie Scott, Paul Wolfe &
Mike Erwin, O’reilly
(2).http://freebsd.ntut.idv.tw/document/pf_2vpn_ipsec.html
(3).http://www.alexwang.com/Chinese/FreeBSD/VPNhowto.txt
(4).http://freebsd.ntut.idv.tw/document/pf_2vpn_ipsec.html
(5).http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ipsec.html
from site :http://www.cert.org.tw/document/column/show.php?key=93