複製鏈接
請複製以下鏈接發送給好友

點對點隧道協議

鎖定
點對點隧道協議(PPTP,Point-to-Point Tunneling Protocol)是一種協議(一套通信規則),它允許企業通過私人“隧道”在公共網絡上擴展自己的企業網絡。
中文名
點對點隧道協議
外文名
Point-to-Point Tunneling Protocol
通    過
WindowsNT
支    持
使用Internet
獲    得
企業網絡的安全訪問
應    用
PPTP協議,L2TP協議

點對點隧道協議簡介

點對點隧道協議(英語:Point to Point Tunneling Protocol,縮寫為PPTP)是實現虛擬專用網(VPN)的方式之一。PPTP使用傳輸控制協議(TCP)創建控制通道來發送控制命令,以及利用通用路由封裝(GRE)通道來封裝點對點協議(PPP)數據包以發送數據。這個協議最早由微軟等廠商主導開發,但因為它的加密方式容易被破解,微軟已經不再建議使用這個協議。
PPTP的協議規範本身並未描述加密身份驗證的部分,它依靠點對點協議(PPP)來實現這些安全性功能。因為PPTP協議內置在微軟視窗系統家族的各個產品中,在微軟點對點協議(PPP)協議堆棧中,提供了各種標準的身份驗證與加密機制來支持PPTP。 在微軟視窗系統中,它可以搭配PAP、CHAPMS-CHAPv1/v2或EAP-TLS來進行身份驗證。通常也可以搭配微軟點對點加密(MPPE)或IPSec的加密機制來提高安全性。
在Windows或Mac OS平台之外,Linux與FreeBSD等平台也提供開放源代碼的版本。 [1] 

點對點隧道協議規格

PPTP不是IETF建議的標準,是由微軟、Ascend Communications(現在屬於Alcatel-Lucent集團)、3Com等廠商聯合形成的產業聯盟開發。 1999年7月發佈的 RFC 2637是第一個正式的PPTP規格書。
PPTP以通用路由封裝(GRE)協議向對方作一般的點對點傳輸。通過TCP1723端口來發起和管理GRE狀態。因為PPTP需要2個網絡狀態,因此會對穿越防火牆造成困難。很多防火牆不能完整地傳遞連接,導致無法連接。 在Windows或Mac OS平台,通常PPTP可搭配MSCHAP-v2或EAP-TLS進行身份驗證 ,也可配合微軟點對點加密(MPPE)進行連接時的加密。
與PPTP相似的另一種常見的VPN協議是第二層隧道協議(L2TP)。 [1] 

點對點隧道協議使用方法

通過WindowsNT上虛擬專用企業網絡支持使用Internet可廉價安全地訪問企業網絡。該新協議通過使用對Internet的本地呼叫獲得使用Internet的企業網絡的安全訪問來工作。PPTP這一開放的企業標準支持最流行的網絡協議—IP、IPX和MicrosoftNetworking(NetBEUI)。公司可以使用PPTP將其遠程撥號需要交給Internet服務提供商或其他中間商以減少費用降低複雜性。 [2] 

點對點隧道協議設置方法

在使用VPN的時候可以使用,也可以使用,具體設置方法如下:比如在Windows XP中,首先,在“網絡連接”窗口中右鍵單擊某個VPN連接,選擇“屬性”。接着,在打開的屬性窗口中選擇“網絡”選項卡。然後在“VPN類型”中選擇“PPTP VPN”,單擊“確定”按鈕即可。
點對點隧道協議(PPTP)是微軟和其他公司支持的標準;層2隧道協議是思科系統公司提出的。作為提議標準,它們都有可能成為新的互聯網工程任務組IETF)標準的基礎。PPTP是互聯網點對點協議(PPP)的擴展,任何具有PPP客户端支持的PC用户都能夠用一個獨立的服務提供商(ISP),來安全地連接用户公司的服務器。 [2] 

點對點隧道協議實現

PPTP 是第一個被Microsoft撥號網絡支持的 VPN 通信協議。自Windows 95 OSR2起,所有的Microsoft Windows 版本都內置了PPTP客户端軟件(雖然只能支持最多兩個同時對外的連接)。 在Mobile版本上,Microsoft Windows Mobile 2003與更新的版本也支持 PPTP。Windows的路由及遠程訪問包有包含PPTP服務器。 Microsoft的實現在MS-CHAP認證協議內使用了單次DES加密,但單次DES常被認為無法提供數據足夠檔次的安全防護。
Windows Vista與更新版本的PPTP開始支持PEAP。認證機制有PEAPv0 / EAP-MSCHAPv2 (使用密碼) 還有PEAP-TLS (智能卡與證書)。Windows Vista同時停止了MSCHAP-v1的認證協議。
Linux的PPTP服務器一般是使用PoPToP包加上PPP與MPPE的Kernel Module。PPTP的客户端程序從 1997 就開始提供了,但服務器部分要等到Matthew Ramsay在1999開發的版本從Moreton Bay以GNU GPL發行後才真正開始有人大量使用。但是,Linux發行版本一開始通常都不包含 MPPE 的部分(因為擔心有專利問題)所以不完整,直到 2005/10/28 發佈的Linux Kernel 2.6.14才正式支持 MPPE。SuSE Linux 10 是第一個有完整可用的PPTP客户端程序的版本。另外還有ACCEL-PPP包:它提供了PPTP / L2TP / PPPoE服務器,可提供kernel模式的PPTP協議。
OpenBSD跟FreeBSD 在 "ports" 包系統裏提供PoPToP。OSX與iOS則提供內置PPTP客户端程序。OS X Server內置了PPTP服務。Cisco與Efficient Networks 有另外販賣給舊版 MacOS使用的PPTP客户端程序。 許多Android智能形手機也支持PPTP。 [3] 
參考資料
  • 1.    Cryptanalysis of Microsoft's PPTP Authentication Extensions (MS-CHAPv2), Bruce Schneier,1999
  • 2.    FAQ on security flaws in Microsoft's implementation,Bruce Schneier,1998
  • 3.    林丹. 基於點對點隧道協議的虛擬專網的實現及應用[J]. 農業網絡信息, 2008(5):115-117.