Tuesday 10 April 2012

SSL VPN功能介绍


1SSL VPN功能介绍


11 SSL VPN功能介绍

      FortiGate SSL VPN功能使用SSL和代理技术使授权用户得到安全的可靠的Web客户端,服务器端应用或者其他文件资源共享等等服务。FortiGate SSL VPN只能工作在NAT模式下面,透明模式不支持SSL VPN功能。FortiGate SSL VPN提供如下2种工作模式:

A
Web模式,远程用户使用浏览器就可以通过这种模式的SSL VPN访问公司内部资源,只限于HTTP/HTTPS,FTP,SMB/CIFS,Telnet,VNC,RDP服务;

B
、隧道模式,防火墙会虚拟出一个"ssl.root"接口出来,所有使用SSL隧道模式的流量都相当于进出此SSL VPN接口,远程用户需要安装一个SSL VPN的客户端软件,支持所有的应用。

12 典型拓扑结构如下,




13 SSL VPN支持的认证协议有:

  1. 本地认证
  2. Radius认证
  3. Tacacs+认证
  4. LDAP认证
  5. PKI证书认证
  6. Windows AD认证
14 SSL VPN IPSEC VPN比较

        SSL VPN                                 IPSEC VPN
  1. 主要针对漫游用户                       主要用于站点直接
  2. 基于Web应用                           基于IP层的安全协议
  3. 主要应用于2点直接VPN连接            主要应用于多点,构建VPN网络
  4. 有浏览器就可以使用                     需要安装特定的IPSEC VPN客户端软件
  5. 基于用户的访问控制策略                 主要是基于站点的访问控制策略
  6. 没有备份功能                           具有隧道备份和连接备份功能
2Web模式配置

Web模式配置大概需要如下几个步骤:

  1. 启用SSL VPN
  2. 新建SSL VPN用户
  3. 新建SSL VPN用户组
  4. 建立SSL VPN策略
下面我们具体介绍一下Web模式的详细配置。

21启用SSL VPN
打开Web浏览器登陆防火墙,进入
虚拟专网---->SSL---->设置,勾上"启动SSL-VPN",其他配置根据需要修改或使用默认配置就可以了,如下图:


22新建SSL VPN用户

进入
设置用户---->本地,点击"新建"按钮新建一个本地用户,用户类型我们同时可以支持本地用户,Radius用户,Tacacs+用户,LDAP用户等等,这里我们只使用本地用户举例,如下图:




23 新建SSL VPN用户组

进入
设置用户---->用户组,点击"新建"按钮新建一个SSL类别的用户组,可用成员选择上面新建的用户成员,启动Web应用里面可以选择上需要开通的SSL VPN服务,其他默认设置就可以了,如下图所示:


24 建立SSL VPN策略

进入
防火墙---->策略,新建一条防火墙策略,源接口是SSL VPN用户端所连接的接口,源地址可以是任意,目的接口是服务器所连接的接口,目的地址可以是只能允许访问的服务器地址段或任意服务器地址,模式是:SSL-VPN,可用组选择刚刚建立的SSL VPN类型的用户组就可以了,具体如下图显示:



FortiGate
防火墙模式使用的SSL VPN的端口是10443,这样,就可以从外网通过https://防火墙外网口地址:10443 登陆到防火墙Web模式的SSL VPN入口,通过防火墙认证后使用SSL VPN访问内网服务器资源了。

25 如何设置防火墙默认的SSL VPN登陆端口,具体如下:








26 登陆SSL VPN Web模式后的界面如下:


3.隧道模式配置

隧道模式的SSL VPN配置必须在Web模式配置完的机场上才能进行,大概步骤如下:

  1. 配置Web模式SSL VPN
  2. 打开Web浏览器登陆防火墙,进入
    虚拟专网---->SSL---->设置,设置"通道IP范围"
  3. 进入
    设置用户---->用户组,编辑Web模式下建立的SSL VPN用户组,在"SSL-VPN用户组选项"里面启用"启动SSL-VPN通道服务"
  4. 配置相关的隧道模式SSL VPN防火墙策略
  5. 配置相关的隧道模式SSL VPN静态路由
这里不在累述Web模式SSL VPN配置步骤,如下配置步骤是在Web模式SSL VPN已经配置完成的基础上进行的,具体步骤下面详细描述:

31 修改SSL VPN设置

进入
虚拟专网---->SSL---->设置,配置隧道模式SSL VPN的客户端使用的地址范围,如下图示:


32 修改SSL VPN用户组

进入
设置用户---->用户组,编辑Web模式下建立的SSL VPN用户组,在"SSL-VPN用户组选项"里面启用"启动SSL-VPN通道服务",如下图示:




33 配置相关的隧道模式SSL VPN防火墙策略

防火墙移用隧道模式SSL VPN之后,系统会虚拟出一个"ssl.root"接口出来,所有使用SSL隧道模式的流量都相当于进出此SSL VPN接口,对应的ssl.root接口可以在
防火墙---->策略
里面找到。进入防火墙---->策略,点击"新建"按钮新建一条防火墙策略,按如下配置设置:

  1. 源接口:ssl.root
  2. 源地址:SSL隧道模式分配的通道IP范围
  3. 目的接口:服务器所在的接口
  4. 目的地址:允许SSL VPN客户端访问的服务器资源等
  5. 时间表:根据需要配置
  6. 服务:允许SSL VPN客户端访问的服务器服务
  7. 模式:ACCEPT
  8. NAT等所有其他选项可以根据具体需要配置
具体参加下图示配置:




如果有反向的从服务器端到SSL VPN客户端的访问需求的话,可以同时建立一条方向的防火墙策略以允许服务器到客户端的访问,如下图示:


34 配置相关的隧道模式SSL VPN的静态路由

防火墙虚拟的"ssl.root"接口时不会自动创建目的是ssl.root接口的路由,所以需要手工添加一条目的地址是SSL VPN虚拟接口通道IP地址范围的静态路由,如下图示:


 

35 如何在客户端启用SSL VPN隧道模式

351 从外网通过https://防火墙外网口地址:10443 登陆到防火墙Web模式的SSL VPN入口,进入到SSL VPN Web模式界面下面,如下图显示:






352 点击左上角的"激活SSL-VPN通道模式",如下图显示:

可以看到"Link Status"显示成"Up",并且有显示通过SSL VPN隧道收发的字节数,同时会在客户端操作系统里面虚拟出一个Fortinet的网络连接来,表示SSL VPN隧道已经建立并且可以被客户端使用了,


353 SSL VPN隧道启动前后客户端系统路由表的变化

SSL VPN隧道启动之前的系统路由表


SSL VPN隧道启动之后的系统路由表


36 关于隧道模式的SSL VPN的通道分割功能

361 通道分割模式启动后客户端路由表的变化

上面我们建立的是隧道模式SSL VPN的完全隧道方式(Full Tunnel),在这种模式下当客户端SSL VPN隧道启动后系统会虚拟出一条默认网关路由指向防火墙,这样的话所有从客户端出去的数据包都会通过SSL VPN隧道发送给防火墙无论数据包是否是连接到内网服务器的。FortiGate防火墙还支持另外一种方式的隧道模式SSL VPN叫做通道分割方式(Split Tunnel),这种模式下,客户端在SSL VPN隧道启动的时候只会在客户端虚拟出一条到达SSL VPN服务器方向的一条静态路由,系统原来的默认网关不会被更改,这样的话从客户端发起的连接只有连向SSL VPN服务器端路由时才会通过SSL VPN隧道传送到防火墙,其它的所有非SSL VPN应用的数据包仍然会通过客户端系统原来的网关转发,以达到通道分割的目的,在上面相同的网络结构下面只是启动了通道分割功能的情况下,在客户端系统种SSL VPN隧道启动之后的系统路由表如下显示:



客户端系统默认网关是172.22.6.1仍然没有被修改,SSL VPN隧道启动后只是增加了一条到达服务器网络(192.168.12.0)的静态路由,下一跳是防火墙(10.254.254.1,也就是SSL VPN隧道分配给客户端的IP地址):
192.168.12.0    255.255.255.0     10.254.254.1    10.254.254.1       1

需要增加的SSL VPN部分的配置是,第一步,修改SSL VPN Web模式下面的那条防火墙策略的目的地址,明确指向需要发布给客户端访问的服务器地址范围,如下图显示,我们要把Finace Network的服务器路由(192.168.12.0/24)发布给SSL VPN客户端,那么对应的SSL-VPN策略目的地址就是Finace Network192.168.12.0/24),有多个目的路由需要发布只要添加多个目的地址就可以了:




第二步,修改SSL VPN用户组,进入
设置用户à用户组
编辑前面定义好的SSL VPN类型的用户组,打开"SSL-VPN用户组选项"在启动SSL-VPN通道服务à允许通道分割
前面打上勾就行了,如下图显示:


362 通道分割功能下面可以基于用户组的IP地址分配功能

同时,进入
设置用户à用户组
编辑前面定义好的SSL VPN类型的用户组,打开"SSL-VPN用户组选项"在启动SSL-VPN通道服务à允许通道分割启用之后,下面的"对该组限制通道的IP地址范围"指的是可以根据不同的用户组来分配给不同的IP地址空间,那么在这个用户组的用户通过防火墙的认证后防火墙分配下去的IP地址范围就将是这里配置的而不是"虚拟专网->SSL->通道范围"里面配置的,它优先级高最高,如下图显示:


这时候客户端启动SSL VPN隧道后的主机路由表如下显示:



对应的配置,需要在防火墙路由里面添加一条静态路由到192.168.212.0/24的出接口是ssl.root



4SSL VPN客户端

我们同时提供WindowsLinuxMac版本的SSL VPN客户端软件,具体如下详细描述。

41 Windows下面的SSL VPN客户端

Windows版本的SSL VPN客户端有2种格式安装包可以选择,分别是.msi.exe。在通过浏览器登陆到防火墙Web模式的SSL VPN界面里面去下载,登陆上Web模式后防火墙会检测客户端机器是否已经安装了SSL VPN客户端软件,如果没有安装或安装的SSL VPN客户端版本太低的话,登陆过后的Web模式界面里面会有提示要求用户下载新版本的SSL VPN客户端软件安装,并有下载地址。
用户需要退出Web模式的SSL VPN界面才可以启动SSL VPN客户端软件,界面如下:



SSL VPN
客户端软件同时支持用户名密码+证书的认证方式,如果在"虚拟专网-->SSL-->设置"里面启用了"要求客户端认证"的话,隧道模式登陆时候必须同时提供客户证书才能通过防火墙的认证,这个证书可以打开IE浏览器,进入到
工具-->Internet选项-->内容-->证书
里面导入客户端正式,之后再打开SSL VPN客户端软件时可以自动选上之前从IE浏览器里面导入的证书。如果没有启用"要求客户端认证"的话和Web模式下认证是一样的只需要提供用户名和密码就可以了。





42 Linux/Mac下面的SSL VPN客户端

Linux/Mac环境下面不支持Web模式的SSL VPN登陆方式,只能通过SSL VPN客户端软件登陆SSL VPN,同时也不支持自动客户端软件安装检测和从防火墙Web模式的界面里面下载SSL VPN客户端软件,只能从support.fortinet.com网站里面下载。如下显示Linux环境下SSL VPN客户端登陆界面:



同时,如果要是证书认证方式,客户端证书只能手工上传到客户端上。客户端可以通过代理服务器和防火墙建立SSL VPN隧道,打开"Advanced Setting"可以配置代理服务器等设置,如下显示:


5FortiGate 4.0新功能介绍

FortiGate4.0版本里面的SSL VPN模块有非常多的优化,下面具体描述。

51 新的FortiGate 4.0防火墙SSL VPN登陆界面设置

FortiGate 4.0版本Web模式登陆登陆界面增加WidgetThemeLayout style配置,同时把SSL VPN通道分割模式配置,启动Web应用,主机检测及清理缓存和SSL标签及重定向URL都全部都移到独立的SSL VPN界面里面配置了。

511 大体上的界面配置如下:

FortiGate 3.0版本里面,SSL VPNWeb登陆界面是在SSL VPN用户组里面配置的,而且界面里面的内容和结构都是固定的不能被修改,到了FortiGate 4.0版本,我们把SSL VPNWeb登陆界面里面的登陆内容独立出来到"虚拟专网->SSL->界面"里面,这里可以定义不通的Web登陆界面,定义完了之后可以被用户组来引用。如下图显示:




用户组里面引用对应的界面:


512 如何配置Web模式登陆界面的风格和布局模式(Theme and Layout

进入
虚拟专网->SSL->界面,新建一个界面,可以看到如下图显示配置,

  1. 可以选择三种不同的Web风格:蓝色,桔色和灰色;
  2. 可以选择两种不通的布局风格:单排布局和2排布局。





513 配置Widget

可以添加如下四种Widget:连接状态信息块,通道模式配置块,书签块和连接工具块,如下图显示:


514 如何配置SSL VPN Web模式应用程序控制

2地方可以配置,如下图显示:


515 SSL VPN界面配置里面的高级选项

进入虚拟专网->SSL->界面->Setting->Advanced,可以配置如下高级选项:

  1. AV/FW检查,检查客户端是否安装有AVFW软件;
  2. 主机操作系统补丁检查功能,检查客户端机器的补丁是否是最新的;
  3. Cache清除功能;
  4. 重定向URL设置功能;
  5. 虚拟桌面功能。
如下图显示:


5.1.5.1 AV/FW检查

  1. 如果启用此功能,如果客户端机器没有安装单机版的防火墙和杀毒软件的话,防火墙会拒绝客户端连接SSL VPN
  2. 目前支持的操作系统仅限于:Windows XPWindows Vista


应用举例:
如果配置

  1. Client Check TypeThird-party
  2. Client CheckAV/FW
那么

  1. 一台Windows XP机器客户端安装了Norton2009版本的AV/FW软件后可以成功的连接到FortiGateSSL VPN
  2. 一台没有安装任何单机防火墙和杀毒软件的机器将不能通过FortiGateSSL VPN的认证。
防火墙支持的AV/FW产品检查列表如下:
Norton Internet Security 2006
Trend Micro PC-cillin
McAfee
Sophos Anti-virus
Panda Platinum 2006 Internet Security
F-Secure
Secure Resolutions
Cat Computer Servies
AhnLab
Kaspersky
ZoneAlarm

5.1.5.2 主机操作系统补丁检查功能

可以检查终端用户操作系统安装的系统补丁是否是在允许的范围内的,目前支持的操作系统只有Windows XPWindows 2000



应用举例:
如果配置,启用Windows XP检查功能,最新补丁级别是3,容忍度是0那么,用户Windows XP机器只安装的SP2补丁将不能通过防火墙认证。

5.1.5.3 Cache清除功能

如果防火墙SSL VPN启用了这个功能,终端用户在关闭SSL VPN连接的时候防火墙会自动清除客户端的SSL VPN相关的连接信息;
目前这个功能只能支持Windows系统里面的IEFirefox浏览器。

5.1.5.4重定向URL设置功能

如果启用了这个功能,在用户登陆到Web模式的SSL VPN界面之后,防火墙会把重定向的URL页面同时推送给客户端。

6.其他关于SSL VPN的功能

61 SSL VPN用户监控

进入
设置用户->性能->SSL ,当有SSL VPN用户登陆上来的时候可以实时监控到SSL VPN用户的活动状态,如下图显示:


62 用户认证超时和通讯超时时间

系统的连接计时器对SSL 连接是无效的,SSL连接的超时时间需要单独设置,可以设置用户认证超时和通讯超时时间,如下配置,只能在命令行下面进行:

Configure vpn ssl setttings;
set idle-timeout <value>
set auth-timeout <value>

63 常用的SSL VPN诊断命令

  1. diag debug application sslvpn -1
  2. diag sniffer packet any 'port 10443' 4

No comments:

Post a Comment