VPN构建攻略 Win2008实战之SSTP

云计算 虚拟化
随着windows server 2008的发布,相信新的功能和特性让IT PRO们兴奋不已,在新的功能中,SSTP协议的支持让通过WINDOWS 2008进行SSL-VPN访问成为了可能。

随着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上的客户端。)

【编辑推荐】

  1. VPN服务器故障排查之Windows篇
  2. 中小企业VPN网络部署须知
  3. vpn配置实例:讲解路由器设置参数步骤
责任编辑:景琦 来源: IT168
相关推荐

2009-04-03 14:13:49

Win2008微软 操作系统

2010-05-19 09:20:41

Win2008 R2虚拟化

2010-10-14 09:42:02

Win2008 R2Hyper-V

2010-05-20 10:42:34

Win2008 R2DC FOR NAP

2010-03-25 11:09:07

Hyper-V磁盘存储虚拟化Hyper-V

2010-05-20 10:12:22

Win2008 R2服务器

2009-06-29 17:29:19

Win2008

2010-04-29 10:36:20

2010-05-20 10:25:12

Win2008 R2服务器环境

2012-09-28 09:44:32

2012-09-27 10:21:00

2009-05-08 11:25:37

2010-03-30 16:54:53

升级Win2008 R

2010-11-10 10:47:18

Win2008 R2 VDI

2009-10-30 09:37:27

Windows Ser

2010-03-29 15:42:33

迁移工具

2011-04-12 13:29:33

Windows SerHyper-V

2012-05-16 11:21:24

2010-03-29 17:44:38

Hyper-V安装

2010-01-22 11:27:18

点赞
收藏

51CTO技术栈公众号