软件客户端的半隧道Cisco IPsec VPN网关

日期: 2008-10-21 作者:Michael J. Martin翻译:曾少宁 来源:TechTarget中国 英文

我们回顾了转换集和密码图,我们可以继续“建立IOS基于路由器的VPN网关”来支持Cisco IPsec软件和硬件客户端了。Cisco对它的“3000 based”的VPN客户端的支持是在12.2T的代码库中引入的,并且大多数的特性集都是12.2系列中开发的。其中包含了2个不同的部署软件VPN客户端的方法。我将这这两个方法称为“旧式”和“新式”模型。

我们将尝试的第一个VPN网关配置例子是一个根据“旧式”模型实现的半隧道客户端拓扑。 上面的VPN网关配置支持一个半隧道流量模型,其中只有去往安全网络的流量是加密的,而所有其它的流量不加密直接转发的。许多安全性专家认为这个模型没有“全隧道”模型安全。这……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

我们回顾了转换集和密码图,我们可以继续“建立IOS基于路由器的VPN网关”来支持Cisco IPsec软件和硬件客户端了。Cisco对它的“3000 based”的VPN客户端的支持是在12.2T的代码库中引入的,并且大多数的特性集都是12.2系列中开发的。其中包含了2个不同的部署软件VPN客户端的方法。我将这这两个方法称为“旧式”和“新式”模型。我们将尝试的第一个VPN网关配置例子是一个根据“旧式”模型实现的半隧道客户端拓扑。

VPN网关配置

上面的VPN网关配置支持一个半隧道流量模型,其中只有去往安全网络的流量是加密的,而所有其它的流量不加密直接转发的。许多安全性专家认为这个模型没有“全隧道”模型安全。这是因为当用户连接到网关时,他们是同时连接到两个网络上的。所以就会有这样一个潜在的风险:从非安全网络来的任意病毒或安全缺陷都可能通过连接的主机破坏安全网络。如果抛开安全性,这是一个在大多数VPN网关实现中非常流行的模型。它能保证特定的流量安全,但不要求网关增加带宽或增加处理所有连接的用户流量所需的负载。

半隧道(旧式)VPN网关配置

下面的配置将保证地址空间为172.30.55.32/28的VPN客户端池和连接到172.30.40.0/24、172.30.80.0/24 和 172.30.60.0/24的LAN子网的主机及服务器之间的通信安全。VPN网关配置是由两部分组成的:ISAKMP配置和密码图配置。下面是配置的步骤:

ISAKMP配置

A.创建ISAKMP策略:
1. 创建策略实体
2. 定义阶段1的加密方式
3. 定义阶段1的哈希
4. 定义阶段1的认证方式
5. 定义DH交换密钥大小

outlan-rt05(config)#crypto isakmp policy 10
outlan-rt05(config-isakmp)# encryption 3des
outlan-rt05(config-isakmp)# hash md5
outlan-rt05(config-isakmp)# authentication pre-share
outlan-rt05(config-isakmp)# group 2
outlan-rt05(config-isakmp)#exit

B.配置AAA用户、组认证和帐号:
1. 激活AAA新模型
2. 定义VPN XAUTH用户认证
3. 定义VPN XAUTH 组认证
4. 定义VPN XAUTH组授权
5. 创建本地帐号

outlan-rt05(config)#aaa new-model
outlan-rt05(config)#aaa authentication login default local
outlan-rt05(config)#aaa authentication login userauth local
outlan-rt05(config)#aaa authorization network groupauth local 
outlan-rt05(config)#username root password root

C.创建IP地址池:

outlan-rt05(config)# ip local pool OS-VPN 172.30.90.2 172.30.90.14

D.创建loopback接口和地址池:

outlan-rt05(config)#interface loopback 90
outlan-rt05(config-if)#ip address 172.30.90.1 255.255.255.240

E.创建半隧道ACL:

outlan-rt05(config)#$ access-list 100 permit 172.30.40.0 0.0.0.255 
172.30.90.0 0.0.0.15
outlan-rt05(config)#$ access-list 100 permit 172.30.80.0 0.0.0.255 
172.30.90.0 0.0.0.15
outlan-rt05(config)#$ access-list 100 permit 172.30.60.0 0.0.0.255 
172.30.90.0 0.0.0.15

F.创建客户端配置组:
1. 定义组名
2. 组密钥
3. DNS服务
4. 子网掩码
5. ACL
6. 最大登录数
7. 最大用户数
8. 地址池
9. 激活客户端保存XAUTH密码
10. 连接欢迎语

outlan-rt05(config)#crypto isakmp client configuration group Old-School
outlan-rt05(config-isakmp-group)# key secretkey
outlan-rt05(config-isakmp-group)#dns 172.30.40.2
outlan-rt05(config-isakmp-group)#netmask 255.255.255.240
outlan-rt05(config-isakmp-group)#backup-gateway 45.224.90.17
outlan-rt05(config-isakmp-group)#domain outlan.net
outlan-rt05(config-isakmp-group)#acl 100
outlan-rt05(config-isakmp-group)#max-login 1
outlan-rt05(config-isakmp-group)#max-users 13
outlan-rt05(config-isakmp-group)#pool OS-VPN
outlan-rt05(config-isakmp-group)#save-password
outlan-rt05(config-isakmp-group)#banner ^
Enter TEXT message.  End with the character '^'.
You are connected to outlan.net. All transactions are monitored.
^
outlan-rt05(config-isakmp-group)#

G.配置Compound TCP (CTCP)定义(并在路由器上禁用HTTP和HTTPS服务):

outlan-rt05(config)#crypto ctcp port 443 10000
outlan-rt05(config)#no ip http server
outlan-rt05(config)#no ip http secure-server

H.配置NAT透明存活时间:

outlan-rt05(config)#crypto isakmp nat keepalive 20

密码图配置

A.创建转换集:
1. 定义阶段2加密方式
2. 定义阶段2哈希
3. 激活IP压缩

outlan-rt05(config)#$ crypto transform-set 3DES-MD5-LZS esp-3des esp-md5-hmac comp-lzs

B.创建动态密码图:
1. 定义转换集
2. 定义客户路由处理

outlan-rt05(config)#crypto dynamic-map OLD-SCHOOL 10
outlan-rt05(config-crypto-map)# set transform-set 3DES-MD5-LZS 
outlan-rt05(config-crypto-map)# reverse-route

C.创建静态密码图:
1. 用认证和动态密码图引用创建静态密码图
2. 定义VPN客户端认证列表
3. 定义客户ISAKMP授权列表
4. 定义VPN客户端IP地址配置

outlan-rt05(config)#crypto map SW-Client 10 ipsec-isakmp dynamic OLD-SCHOOL
outlan-rt05(config)#crypto map SW-Client client authentication list userauth
outlan-rt05(config)#crypto map SW-Client isakmp authorization list groupauth
outlan-rt05(config)#crypto map SW-Client client configuration address respond

D.创建接口访问ACL:

outlan-rt05(config)#access-list 101 permit tcp any host 172.30.80.45 eq 22
outlan-rt05(config)#access-list 101 permit tcp any host 172.30.80.45 eq 23
outlan-rt05(config)#access-list 101 permit tcp any host 172.30.80.45 eq telnet
outlan-rt05(config)#access-list 101 permit tcp any host 172.30.80.45 eq 443
outlan-rt05(config)#access-list 101 permit tcp any host 172.30.80.45 eq 10000
outlan-rt05(config)#access-list 101 permit tcp any host 172.30.80.45 established

E.安装密码图:
1. 应用图到“非安全”路由接口
2. 安装VPN访问ACL
3. 配置IP路由

outlan-rt05(config)#interface FastEthernet0/0
outlan-rt05(config-if)#crypto map SW-Client
outlan-rt05(config-if)#ip access-group 101 in
outlan-rt05(config-if)#exit
outlan-rt05(config)#ip route 0.0.0.0 0.0.0.0 63.240.22.2
outlan-rt05(config)#ip route 172.30.80.0 0.0.0.255 172.30.40.33
outlan-rt05(config)#ip route 172.30.60.0 0.0.0.255 172.30.40.33

创建VPN客户端策略

完成VPN网关后,最后一步是创建VPN客户端策略。Cisco的VPN客户端软件是与所有有VPN授权许可的路由器和单独的硬件密码模块(VAM和AIM硬件适配器)一起供应的。这些软件也可以从www.cisco.com下载。客户端有Windows、Mac OS和Linux等三个版本。其中Windows和Mac OS版本有GUI界面。其中有两种方法可以创建配置模板。第一种是创建一个基本配置的文本文件,定义核心的连接变量,然后将文件转入到客户端中。下面是基于我们上面配置的旧式VPN网关的配置模板:

[main]
Host=63.240.22.2
AuthType=1
GroupName=Old-School
GroupPwd=secretkey
TunnelingMode=1
TcpTunnelingPort=443

为了导入配置,你可以启动客户端GUI,然后点击“Import”按钮。一旦你连接到VPN网关,客户端应用将添加剩余的客户端变量,包括加密形式的组密码。

另一个方法是使用GUI来创建客户端配置模板。点击“New”按钮,打开一个模板配置窗口:

模板配置窗口

当通过GUI来创建模板时,你需要配置下面的数据项:

  • VPN网关IP地址
  • ISAKMP客户端配置组名
  • ISAKMP客户端组密码

当VPN网关地址和组认证数据配置完成后,下一步就是“Transport”标签:

 “Transport”标签

传输部分提供了客户端CTCP或NAT遍历选项的配置界面。半隧道VPN配置同时支持NAT-T和CTCP两种方式,但只能选择其中的一种作为配置模板。这上面的这个例子中,配置的模板支持监听443端口的CTCP。最后一个配置步骤是通过选中“Backup Servers”标签中的“Enable Backup Servers”复选框来提供一个备份VPN网关。

如果你正在实现一个关键的访问服务,实现一个备份VPN网关是一个很好的做法。如果备份服务器定义为ISAKMP组配置的一部分,它将在初始连接建立时被下发到VPN客户端模板中。此外,它也可以被配置为VPN客户端模板的一部分。

作者

Michael J. Martin
Michael J. Martin

Michael J. Martin作为网络和Unix信息管理员已经在信息技术领域工作了17多年。他早期在研究和ISP方面进行的设计、实现和支持MIS基础架构的经历,为他当前在大型因特网和安全架构的工作上提供了独特的视角。作为一个网络架构师,他已经为多家公司设计过高速、高可用的LAN/WAN网络,如ANS/AOL、Philips和Edgix Corporation等,它也给许多业务和区域ISP提供网络顾问服务。Michael也撰写了很多关于网络和安全问题的文章。

翻译

曾少宁
曾少宁

TechTarget中国特约技术编辑,某高校计算机科学专业教师和网络实验室负责人,曾任职某网络国际厂商,关注数据中心、开发运维、数据库及软件开发技术。有多本关于思科数据中心和虚拟化技术的译著,如《思科绿色数据中心建设与管理》和《基于IP的能源管理》等。