前面刚讲了VSR如何配合L2TP VPN实现访问云上资源(巧用VSR的L2TP VPN功能实现访问云上业务),通过在公共网络上建立点到点的L2TP隧道,将PPP数据帧封装后通过L2TP隧道传输,使得用户利用公共网络,可以通过L2TP隧道与云上网络通信,访问云内资源。
一定程度上讲,这种方式是经济且有效的,但是基本配置不够安全,如果需要安全配置,一般是配合IPsec做L2TP over IPsec使用,我们前面测试过主机的IPsec性能是比较低的,所以这时一般要用到客户端接入。
既然要用到客户端接入,那为什么不使用SSL VPN呢?VSR默认还带了15个免费的SSL VPN授权呢。
SSL VPN是以SSL(Secure Sockets Layer,安全套接字层)为基础的VPN(Virtual Private Network,虚拟专用网络)技术,通过建立SSL连接来实现访问转发。它充分利用了SSL协议提供的基于证书的身份认证、数据加密和完整性验证机制,为员工访问企业内网提供了一种安全的验证机制。相比于其他常用的VPN,如GRE VPN、L2TPVPN和IPSec VPN等,有着使用方便、数据安全、访问资源易控制等优势,被广泛应用于企业的远程接入。
本案例中,我们需要在VSR上创建与云内服务器对应的资源,由VSR充当SSL VPN网关来提供SSL VPN服务,负责在远端接入用户和云内网络之间转发报文。
SSL VPN网关与远端接入用户建立SSL连接,并对接入用户进行身份认证。远端接入用户的访问请求只有通过SSL VPN网关的安全检查和认证后,才会被SSL VPN网关转发到企业网络内部,从而实现对企业内部资源的保护。
SSL VPN可以提供三种资源接入方式,分别为Web接入方式、TCP接入方式和IP接入方式。其中,IP接入方式用来实现远程主机与企业内部服务器网络层之间的安全通信,进而实现所有基于IP的远程主机与服务器的互通,这也是本案例使用的配置方式。
首先配置PKI(Public Key Infrastructure,公钥基础设施)域guotiejun,并导入CA证书certguo.cer和服务器证书serverguo.pfx,证书的生成方式请参考文章(Windows Server配置生成认证证书)。
#
pki domain guotiejun
public-key rsa general name guotiejun
undo crl check enable
pki import domain guotiejun pem ca filename certguo.cer
pki import domain guotiejun p12 local filename serverguo.pfx
[H3C]pki import domain guotiejun pem ca filename certguo.cer
The trusted CA's finger print is:
MD5 fingerprint:9B04 EA72 D3D0 A346 C0C4 7A24 BCB4 BC78
SHA1 fingerprint:475D D82F 8A18 23A6 5C0F 3BCE 2027 3C1E 5972 2D6D
Is the finger print correct?(Y/N):y
[H3C]pki import domain guotiejun p12 local filename serverguo.pfx
Please input the password:(guotiejun)
配置SSL服务器端策略ssl,绑定PKI域guotiejun。
#
ssl server-policy guotiejun
pki-domain guotiejun
配置SSL VPN网关tiejun的IP地址为172.30.1.19,端口号为10086。(别忘了在云主机上放通该端口的安全策略。)
#
sslvpn gateway guotiejun
ip address 172.30.1.19 port 10086
ssl server-policy guotiejun
service enable
创建SSL VPN AC接口1,配置该接口的IP地址为10.1.1.1/24。
#
interface SSLVPN-AC1
ip address 10.1.1.1 255.255.255.0
创建为SSL VPN客户端分配地址的地址池tiejun,地址范围为10.1.1.100-10.1.1.200。
#
sslvpn ip address-pool tiejun 10.1.1.100 10.1.1.200
配置SSL VPN访问实例guotiejun。引用SSL VPN网关guotiejun,配置IP接入引用的SSL VPN AC接口1,引用SSL VPN客户端地址池sslvpnpool。创建路由表guotiejun,并添加路由表项172.30.1.0/24。指定域名为guotiejun。创建SSL VPN策略组guotiejun,引用路由列表guotiejun,并同时配置对IP接入进行ACL过滤。最后使能SSL VPN访问实例。
#
sslvpn context guotiejun
gateway guotiejun
ip-tunnel interface SSLVPN-AC1
ip-tunnel address-pool tiejun mask 255.255.255.0
ip-route-list guotiejun
include 172.30.1.0 255.255.255.0
policy-group guotiejun
filter ip-tunnel acl 3402
ip-tunnel access-route ip-route-list guotiejun
default-policy-group guotiejun
service enable
创建ACL 3402,允许源IP为10.1.1.0/24的报文访问目标IP网段172.30.1.0/24。
#
acl advanced 3402
rule 0 permit ip source 10.1.1.0 0.0.0.255 destination 172.30.1.0 0.0.0.255
创建用户组sslvpn,授权给该用户组的策略组为guotiejun。
user-group sslvpn
authorization-attribute sslvpn-policy-group guotiejun
创建本地SSL VPN用户guotiejun,密码为guotiejun,授权用户的SSL VPN策略组为resourcegrp。
#
guotiejun class network
password simple guotiejun
sslvpn
group sslvpn
user-role network-operator
用户通过IP接入方式访问内网服务器前,需要安装专用的IP接入客户端软件iNode,该客户端软件会在SSL VPN客户端上安装一个虚拟网卡。
iNode客户端需要由iNode管理中心定制生成,iNode管理中心PC客户端的下载地址如下(支持→文档与软件→软件下载→管理软件→iNode客户端→iNode PC(PC客户端)):
https://www.h3c.com/cn/Service/Document_Software/Software_Download/IP_Management/iNode/iNode_PC/?CHID=56726&v=612
安装完成之后,进入客户端定制。网络接入组件仅选择“SSL VPN”即可,然后点击“高级定制”。
在SSL VPN配置项中,添加一个SSL VPN网关地址,设置参数与配置的相同。身份认证类型为Local,身份校验模式为密码认证。
点击确定后会返回客户端定制的页面,点击完成。
指定一个附加信息,勾选“生成定制的客户端安装程序”就OK了。然后就可以在以下目录中找到生成的安装包。
直接安装就OK了。
安装完成之后,先点击网关后面的刷新,查询SSL VPN的网关参数成功之后,会加载用户名和密码对话框,输入账户密码,点击连接。
然后就连接成功了。
查看系统路由表,生成了新的网卡iNode VPN Virtual NIC,网卡地址为10.1.1.100,并且多了去往服务器网段的路由。
测试一下访问云内业务。
一不小心又成功了。