VPN構建攻略 Win2008實戰之SSTP
隨著windows server 2008的發布,相信新的功能和特性讓IT PRO們興奮不已,在新的功能中,SSTP協議的支持讓通過WINDOWS 2008進行SSL-VPN訪問成為了可能。
一、 新的協議SSTP的支持及介紹
SSTP是微軟提供的新一代的虛擬專用網(VPN)技術,它的全稱是安全套接層隧道協議(Secure Socket Tunneling Protocol;sstp),和PPTP L2TP OVER IPsec一樣,也是微軟所提供的VPN技術。在擁有最大彈性發揮的同時,又確保信息安全達到了一定程度。
目前,支持SSTP技術的僅限于如下OS:Windows XP Sp3(偶在生產環境中并沒有去驗證)、Windows Vista Sp1(windows 7也在支持之列)以及Windows 2008。且Windows Server 2008僅支持客戶端與服務器之間的SSTP VPN,并不支持站點到站點間的SSTP VPN。通使用此項新技術,可以使防火墻管理員能更容易的配置策略使SSTP流量通過其防火墻。它提供了一種機制,將PPP數據包封裝在HTTPS的SSL通訊中,從而使PPP支持更加安全身份驗方法,如EAP-TLS等。
二、PPTP及L2TP OVER IPSEC在使用過程中的不足
新的SSTP協議的支持,并沒有完全否決PPTP及L2TP OVER IPSEC在微軟產品所組成的解決方案中的作用,當企業使用基于WINDOWS 平臺的VPN解決方案時,這種協議仍是被常用來解決或是提升企業網絡安全性。但兩者的數據包通過防火墻、NAT、WEB PROXY時卻都有可能發生一些連線方面的問題。
PPTP數據包通過防火墻時,防火墻需被設定成同時充許TCP連接以及GRE封裝的數據通過,但大部分ISP都會阻止這種封包,從而造成連線的問題;而當你的機器位于NAT之后,NAT亦必需被設定成能轉發GRE協議封裝的數據包。否則就會造成只能建立PPTP的TCP連接,而無法接收GRE協議封裝的數據包;WEB PROXY是不支持PPTP 協議的。
L2TP OVER IPSEC的情況和此類似,需要在防火墻上充許IKE 數據和ESP封裝的數據同時通過,否則也會出現連接問題。且WEB PROXY也是不支持L2TP OVER IPSEC協議的。
#p#
三、SSTP的執行過程
上面簡要介紹了SSTP協議的優勢以及PPTP等之前兩種協議的不足,下面就來說下XP WITH SP3 或是VISTA WITH SP1(Windows 7)等客戶端是如何連接到WINDOWS 2008 SSL(SSTP)VPN服務器的:
1、SSTP VPN客戶端以隨機的TCP端口建立TCP連接至SSTP VPN服務器(常常是SSTP VPN 網關服務器)上的TCP 443端口。
2、SSTP VPN客戶端發送一個SSL "Client-Hello"消息給SSTP VPN服務器,表明想與此建立一個SSL會話。
3、SSTP VPN服務器發送"其機器證書"至SSTP VPN客戶端。
4、SSTP VPN客戶端驗證機器證書,決定SSL會話的加密方法,并產生一個以SSTP VPN服務器公鑰加密的SSL會話密鑰,然后發送給SSTP VPN服務器。
5、SSTP VPN服務器使用此機器證書私鑰來解密收到的加密的SSL會話,之后兩者之間所有的通訊都以協商的加密方法和SSL 會話密鑰進行加密。
6、SSTP VPN客戶端發送一個基于SSL的HTTP(HTTPS)請求至SSTP VPN服務器。
7、SSTP VPN客戶端與SSTP VPN服務器協商SSTP隧道。
8、SSTP VPN客戶端與SSTP VPN服務器協商包含"使用PPP驗證方法驗(或EAP驗證方法)證使用者證書以及進行IPV4或IPV6通訊"的PPP連接。
9、SSTP VPN客戶端開始發送基于PPP連接的IPV4或IPV6通訊流量(數據)。
#p#
四、SSTP VPN服務器環境搭建及說明
測試環境較為簡單,三臺機器完成全部操作,其中兩臺是WINDOWS SERVER 2008企業版,一臺是帶有SP1的VISTA。注意,這其中會涉及到公有DNS解析問題,在本試驗中,以HOSTS文件中寫入相關信息代替。網絡拓樸及詳細說明如下:
1、圖中WIN2K8 DC是一臺windows 2008 域制器,名為win2k8dc.contoso.com。
充當DC、CA(企業根)、FILE SERVER角色。
IP Add:10.0.0.2/24
Gw:10.0.0.1
DNS:10.0.0.2
2、圖中RRAS是一臺windows 2008服務器,域成員,充當RRAS 、IIS服務器。兩塊網卡。
NEI 網卡IP Add:10.0.0.1/24
DNS:10.0.0.2
WAI網卡IP Add:166.111.8.2/24
DNS:10.0.0.2(真實環境中這塊網卡是有網關和公有DNS的)
3、圖中VISTA是一臺帶有SP1的VISTA手提電腦,位于INTERNET上的任一位置。
IP Add:166.111.8.1/24
整個網絡拓樸中的機器角色是通過HYPER-V上安裝虛擬機器完成。實際生產環境中請按角色歸位。
整個實驗執行流程如下:
A、在WIN2K8 DC升級域控,安裝CA角色(企業根)
B、在RRAS這臺機器上安裝RRAS(VPN,NAT)、IIS角色,并能發布位于DC上的CA URL。同時為本機申請證書。
C、在VISTA機器上,建立SSL VPN連線至VPN服務器。(在此機器上寫HOSTS文件相關DNS域名解析結果)
在進行之前,需要強調兩個問題,這兩個問題是在配置和利用證書方面經常會產生的,提前告示大家在后續文章閱讀時要注意:
1、 將不正確的RRAS計算機證書綁定至偵聽器。
(在將RRAS角色添加到VPN服務器之前,必須添加RRAS計算機證書,這樣子SSTP才可以正確的用。否則,就會將錯誤的證書綁定到該協議。詳細請見下篇文章中的三、四部分)
2、 證書撤銷站點對于VPN客戶端不可用。
(證書撤銷列表必須可用于 Internet上的客戶端。)
【編輯推薦】
- VPN服務器故障排查之Windows篇
- 中小企業VPN網絡部署須知
- vpn配置實例:講解路由器設置參數步驟