随着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配置实例:讲解路由器设置参数步骤