转载自:https://www.h3c.com/cn/d_202209/1692437_30005_0.htm https://www.h3c.com/cn/d_202301/1761539_30005_0.htm#_Toc124888393

理论简介

1.概述

  SSL VPN以SSL(Secure Sockets Layer,安全套接字层)为基础提供远程的安全连接服务。用户可通过互联网,使用内嵌SSL协议的浏览器与远端的Web服务器建立安全的连接,访问内部资源。

  企业或机构可通过SSL VPN来为移动用户或者外部客户提供访问内部资源的服务并保证安全性

2.SSLVPN工作机制

  

  SSL VPN服务通过SSL VPN网关来提供。SSL VPN网关位于远端接入用户和企业内部网络之间,负责在二者之间转发报文。管理员需要在SSL VPN网关上创建与企业网内服务器对应的资源。

  SSL VPN网关与远端接入用户建立SSL连接,并对接入用户进行身份认证。远端接入用户的访问请求只有通过SSL VPN网关的安全检查和认证后,才会被SSL VPN网关转发到企业网络内部,从而实现对企业内部资源的保护。

  如图所示,SSL VPN的工作机制为:

  1)远程接入用户与SSL VPN网关建立HTTPS连接,通过SSL提供的基于证书的身份验证功能,SSL VPN网关和远程接入用户可以验证彼此的身份。

  2)远程接入用户输入用户名、密码等身份信息,SSL VPN网关对用户的身份进行认证,并对用户可以访问的资源进行授权。

  3)用户获取到可以访问的资源,通过SSL连接将访问请求发送给SSL VPN网关。

  4)SSL VPN网关将资源访问请求转发给企业网内的服务器。

  5)SSL VPN网关接收到服务器的应答后,通过SSL连接将其转发给用户。

3.SSLVPN设备的两种工作模式

  1)网关模式

  在网关模式中,SSL VPN网关直接作为网关设备连接用户和内网服务器,所有流量将通过SSL VPN网关进行转发。网关模式可以提供对内网的完全保护,但是由于SSL VPN网关处在内网与外网通信的关键路径上,

  其性能对内外网之间的数据传输有很大的影响。

  2)单臂模式(旁路)

  在单臂模式中,SSL VPN网关不作为网关设备。用户访问内网服务器时,流量将先由网关设备转发到SSL VPN网关,经SSL VPN网关处理后再转发到网关设备,由网关设备转发到内网服务器。

  在单臂模式中,SSL VPN网关不处在网络通信的关键路径上,其性能不会影响内外网的通信。但是这种组网使得SSL VPN网关不能全面地保护企业内部的网络资源。

4.SSLVPN的接入方式

1)web接入

  Web接入方式是指用户使用浏览器,通过HTTPS协议访问SSL VPN网关提供的Web资源。用户登录后,Web页面上会显示用户可访问的资源列表,用户可以选择需要访问的资源直接访问。

  Web接入方式中,所有数据的显示和操作都是通过Web页面进行的。Web接入方式下,管理员需要在SSL VPN网关上创建URL列表,URL表项为企业网内部服务器的IP地址(或域名)。

  Web方式接入过程如下:

  1)用户使用浏览器,通过HTTPS协议登录SSL VPN网关。

  2)SSL VPN网关对用户进行认证,并对允许用户访问的URL资源进行授权,授权的URL资源以URL链接的形式展示在网关的Web页面上。

  3)用户在SSL VPN网关的Web页面上访问经过授权的URL资源。

  4)SSL VPN网关解析接收到的Web请求,并使用HTTP或HTTPS协议向Web服务器发送Web请求。

  5)SSL VPN网关接收到Web服务器的应答报文后,通过SSL连接将其转发给用户浏览器。

2)TCP接入

  TCP接入方式是指用户对企业内部服务器开放端口的安全访问。通过TCP接入方式,用户可以访问任意基于TCP的服务,包括远程访问服务(如Telnet)、桌面共享服务、电子邮件服务以及其他使用固定端口的TCP服务。

  用户利用TCP接入方式访问内网服务器时,需要在SSL VPN客户端(用户使用的终端设备)上安装专用的TCP接入客户端软件,由该软件实现使用SSL连接传送应用层数据。

  TCP接入方式下,管理员需要在SSL VPN网关上创建端口转发规则,将企业网内部服务器的IP地址(或域名)和端口号映射为SSL VPN客户端的本地IP地址(或主机名)和本地端口号。

  TCP方式接入过程如下:

  1)用户使用浏览器,通过HTTPS协议登录SSL VPN网关。

  2)SSL VPN网关对用户进行认证,并对允许用户访问的TCP接入服务(即端口转发规则)进行授权。

  3)用户在SSL VPN网关的Web页面上下载TCP接入客户端软件

  4)用户在SSL VPN客户端上启动TCP接入客户端软件,可以看到授权访问的TCP接入服务。TCP接入客户端软件在SSL VPN客户端上打开授权的端口转发规则中指定的本地端口号。

  5)用户访问本地IP地址(或主机名)和本地端口号时,TCP接入客户端软件将访问请求通过SSL连接发送给SSL VPN网关。

  6) SSL VPN网关解析接收到的请求,并根据本地配置的端口转发规则,将该请求转发给对应的内部服务器。

  7)SSL VPN网关接收到服务器的应答报文后,通过SSL连接将其转发给SSL VPN客户端。

5.SSLVPN用户认证

  用户名、密码认证;证书认证;用户名、密码认证与证书认证;短信认证

TCP接入配置举例(缺省证书)

1.组网需求

   

  Device为SSLVPN网关设备,连接公网用户和企业私有网络。用户通过Device可以通过IP接入方式安全地访问私有网络内的Server。Device采用本地认证和授权方式对用户进行认证和授权。

2.配置步骤

1)配置SSL VPN网关

# 配置SSL VPN网关gw的IP地址为1.1.1.2,端口号为4430。
[Device] sslvpn gateway gw
[Device-sslvpn-gateway-gw] ip address 1.1.1.2 port 4430
[Device-sslvpn-gateway-gw] service enable

2)创建SSL VPN客户端地址池

# 创建为SSL VPN客户端分配地址的地址池sslvpnpool,地址范围为10.1.1.110.1.1.10。
[Device] sslvpn ip address-pool sslvpnpool 10.1.1.1 10.1.1.10

3)创建SSL VPN AC接口

# 创建SSL VPN AC接口1,配置该接口的IP地址为10.1.1.100/24。
[Device] interface sslvpn-ac 1
[Device-SSLVPN-AC1] ip address 10.1.1.100 24

4)配置SSL VPN访问实例

# 配置SSL VPN访问实例ctxip,引用SSL VPN网关gw,指定域名为domainip。
[Device] sslvpn context ctxip
[Device-sslvpn-context-ctxip] gateway gw domain domainip

# 配置IP接入引用的SSL VPN AC接口1.
[Device-sslvpn-context-ctxip] ip-tunnel interface sslvpn-ac 1

# 创建路由表rtlist,并添加路由表项20.2.2.0/24。
[Device-sslvpn-context-ctxip] ip-route-list rtlist
[Device-sslvpn-context-ctxip-route-list-rtlist] include 20.2.2.0 24

# 引用SSL VPN客户端地址池sslvpnpool。
[Device-sslvpn-context-ctxip] ip-tunnel address-pool sslvpnpool mask 24

# 创建SSL VPN策略组resourcegrp,引用路由列表rtlist,并同时配置对IP接入进行ACL过滤。
[Device-sslvpn-context-ctxip] policy-group resourcegrp
[Device-sslvpn-context-ctxip-policy-group-resourcegrp] ip-tunnel access-route ip-route-list rtlist
[Device-sslvpn-context-ctxip-policy-group-resourcegrp] filter ip-tunnel acl 3000

# 开启SSL VPN访问实例ctxip。
[Device-sslvpn-context-ctxip] service enable

# 创建ACL 3000,规则为允许源IP为10.1.1.0/24的报文访问目标IP网段20.2.2.0/24。
[Device] acl advanced 3000
[Device-acl-ipv4-adv-3000] rule permit ip source 10.1.1.0 0.0.0.255 destination 20.2.2.0 0.0.0.255

5) 配置SSL VPN用户

# 创建本地SSL VPN用户sslvpn,密码为123456TESTplat&!,用户角色为network-operator,授权用户的SSL VPN策略组为resourcegrp。
[Device] local-user sslvpn class network
[Device-luser-network-sslvpn] password simple 123456TESTplat&!
[Device-luser-network-sslvpn] service-type sslvpn
[Device-luser-network-sslvpn] authorization-attribute user-role network-operator
[Device-luser-network-sslvpn] authorization-attribute sslvpn-policy-group resourcegrp

3.验证配置

# 在Device上查看SSL VPN网关状态,可见SSL VPN网关gw处于Up状态。
[Device] display sslvpn gateway
Gateway name: gw
  Operation state: Up
  IP: 1.1.1.2  Port: 4430
  Front VPN instance: Not configured
# 在Device上查看SSL VPN访问实例状态,可见SSL VPN访问实例ctx处于Up状态。
[Device] display sslvpn context
Context name: ctx
  Operation state: Up
  AAA domain: Not specified
  Certificate authentication: Disabled
  Password authentication:Enabled
  Authentication use: All
  Code verification: Disabled
  Default policy group: Not configured
  Associated SSL VPN gateway: gw
  SSL client policy configured: ssl
  SSL client policy in use: ssl
  Maximum users allowed: 1048575
  VPN instance: Not configured
  Idle timeout: 30 min
  Denied client types: Browsers

# 在Device上可以看到SSL VPN用户sslvpnuser的会话信息。

[Device] display sslvpn session user sslvpnuser
User : sslvpnuser
Context : ctxip
Policy group : resourcegrp
Idle timeout : 30 min
Created at : 16:38:48 UTC Wed 07/26/2017
Lastest : 16:47:41 UTC Wed 07/26/2017
User IPv4 address : 172.16.1.16
Allocated IP : 10.1.1.1
Session ID : 14
Web browser/OS : Windows

posted on 2022-11-23 16:17  星痕1216  阅读(2028)  评论(0)    收藏  举报