Cisco 的解决方案中 PIX VPN的两个问题

发表于:2007-06-23来源:作者:点击数: 标签:
在Cisco 的 解决方案 中,IPSEC VPN通常建立在IOS Router、VPN 集中器、PIX以及WinPC之间,其中WinPC既可以使用 Windows 自带的组件,也可以使用Cisco VPN client 程序,后者配置和使用都较为便利。 问题一的拓扑如下: Lan1(ACS)-----PIX525-----Internet

   
  在Cisco 的解决方案中,IPSEC VPN通常建立在IOS Router、VPN 集中器、PIX以及WinPC之间,其中WinPC既可以使用Windows自带的组件,也可以使用Cisco VPN client 程序,后者配置和使用都较为便利。
  问题一的拓扑如下:
  

  Lan1(ACS)-----PIX525-----Internet------Router------Lan2
  
  PIX 525是VPN Server, 在Lan2 中有多个客户。 客户端通过Router 以PAT(端口地址转换)方式连接到Internet,使用Cisco VPN Client 软件与PIX 525建立VPN 连接。当Lan2中只有一个客户与PIX 525建立连接时,一切正常;但如果另一个客户也要发起VPN连接的话,前一个客户的连接就会被断掉。问题的原因可能是PIX 525按IP地址识别SA,对同一IP地址,不能建立两个SA。
  
  解决的方法是使用PIX 6.3版本软件的一个新特性“TCP transparancy”,该特性允许客户端把IPSEC数据打包通过TCP或UDP的一个端口(默认10000)进行传输,关键命令是:isakmp nat-traversal。
  
  完整配置:
  PIX Version 6.3(1)
  interface ethernet0 auto
  interface ethernet1 auto
  interface ethernet2 auto
  nameif ethernet0 outside security0
  nameif ethernet1 inside security100
  nameif ethernet2 dmz security50
  enable password ******************** encrypted
  passwd ******************** encrypted
  hostname TEST
  domain-name jyzq.cn
  fixup protocol ftp 21
  fixup protocol h323 h225 1720
  fixup protocol h323 ras 1718-1719
  fixup protocol http 80
  fixup protocol ils 389
  fixup protocol rsh 514
  fixup protocol rtsp 554
  fixup protocol sip 5060
  fixup protocol sip udp 5060
  no fixup protocol skinny 2000
  fixup protocol smtp 25
  fixup protocol sqlnet 1521
  names
  aclearcase/" target="_blank" >ccess-list 101 permit ip 10.1.1.0 255.255.255.0 10.2.1.0 255.255.255.0
  access-list 102 permit ip 10.1.2.0 255.255.255.0 10.2.2.0 255.255.255.0
  access-list no-nat permit ip 10.1.1.0 255.255.255.0 10.2.1.0 255.255.255.0
  access-list no-nat permit ip 10.1.2.0 255.255.255.0 10.2.2.0 255.255.255.0
  pager lines 24
  mtu outside 1500
  mtu inside 1500
  mtu dmz 1500
  ip address outside 202.100.100.100 255.255.255.192
  ip address inside 10.1.3.250 255.255.255.0
  ip address dmz 192.168.1.1 255.255.255.0
  ip audit info action alarm
  ip audit attack action alarm
  ip local pool pool1 10.2.1.1-10.2.1.250
  ip local pool pool2 10.2.2.1-10.2.2.250
  no failover
  failover timeout 0:00:00
  failover poll 15
  no failover ip address outside
  no failover ip address inside
  no failover ip address dmz
  pdm history enable
  arp timeout 14400
  global (outside) 1 interface
  nat (inside) 0 access-list no-nat
  nat (inside) 1 10.1.1.0 255.255.255.0 0 0
  nat (inside) 1 10.1.2.0 255.255.255.0 0 0
  nat (dmz) 1 192.168.1.0 255.255.255.0 0 0
  route outside 0.0.0.0 0.0.0.0 202.100.100.101 1
  route inside 10.1.1.0 255.255.248.0 10.1.3.2 1
  route inside 10.1.2.0 255.255.255.0 10.1.3.2 1
  timeout xlate 3:00:00
  timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h225 1:00:00
  timeout h323 0:05:00 mgcp 0:05:00 sip 0:30:00 sip_media 0:02:00
  timeout uauth 0:05:00 absolute
  aaa-server TACACS+ protocol tacacs+
  aaa-server RADIUS protocol radius
  aaa-server RADIUS (inside) host 10.1.3.100 cisco timeout 10
  aaa-server LOCAL protocol local
  aaa authentication telnet console RADIUS
  no snmp-server location
  no snmp-server contact
  snmp-server community public
  no snmp-server enable traps
  floodguard enable
  sysopt connection permit-ipsec
  crypto ipsec transform-set test esp-des esp-md5-hmac
  crypto dynamic-map dynmap 10 set transform-set test
  crypto map testvpn 10 ipsec-isakmp dynamic dynmap
  crypto map testvpn client configuration address initiate
  crypto map testvpn client configuration address respond
  crypto map testvpn client authentication RADIUS
  crypto map testvpn interface outside
  isakmp enable outside
  isakmp key ******** address 0.0.0.0 netmask 0.0.0.0
  isakmp identity address
  isakmp nat-traversal 120
  isakmp policy 10 authentication pre-share
  isakmp policy 10 encryption des
  isakmp policy 10 hash md5
  isakmp policy 10 group 2
  isakmp policy 10 lifetime 86400
  vpngroup vpn1 address-pool pool1
  vpngroup vpn1 dns-server 202.100.100.198
  vpngroup vpn1 default-domain test.cn
  vpngroup vpn1 split-tunnel 101
  vpngroup vpn1 idle-time 1800
  vpngroup vpn1 password ********
  vpngroup vpn2 address-pool pool2
  vpngroup vpn2 dns-server 202.100.100.198
  vpngroup vpn2 default-domain test.cn
  vpngroup vpn2 split-tunnel 102
  vpngroup vpn2 idle-time 1800
  vpngroup vpn2 password ********
  telnet 10.1.3.0 255.255.255.0 inside
  telnet timeout 5
  ssh timeout 5
  console timeout 0
  terminal width 80
  Cryptochecksum:bbafa6e012639b4db524831263ba7b86
  : end
  
  注意Cisco VPN Client 低版本(如3.5)在上述环境中使用有问题,须要使用较新的版本,如4.0版本。配置方法为选中VPN连接属性中的“Enable Transparent Tunneling"。
  
  在以上配置中,PIX上有两个vpngroup,均通过本机的地址池分配地址,不同组用户可以访问不同的资源。用户使用不同的Pre-shared key连接PIX,确定其所属的组。用户名、密码则由PIX提交给ACS做集中验证。由于ACS无法限定某个用户只能以某个组的身份登录,如果A组的成员知道了B组的Pre-shared key, 他可以使用自己的用户名、密码登录到B组。为了防止这种情况发生,可以在ACS上为两个组的用户指定不同的ACL,使得即使用户以别的组的身份登录,也无法访问受限资源。
  
  问题二的拓扑如下:
  Lan1-----PIX525-----Internet------PIX506E------Lan2
  
  在该环境中,Lan2用户可以通过PIX 506E上网,但不能与PIX 525建立VPN连接。经观察发现,Lan2用户如果不通过PIX506E防火墙可以与PIX 525建立VPN连接。如果PIX 506E为Lan2中的某台PC做了静态NAT, 该PC也可以与PIX 525建立VPN连接。
  
  解决过程:
  show version 发现PIX 506E不支持VPN-DES加密特性:
  
  Licensed Features:
  Failover: Disabled
  VPN-DES: Disabled
  VPN-3DES-AES: Disabled
  
  PIX 的VPN-DES特性是免费的,如果出厂时该特性是Disabled的,要到网址http://www.cisco.com/kobayashi/sw-center/ciscosecure/pix.shtml(需要CCO帐号)点击“*FREE* Register for PIX 56-bit IPSEC Software Feature Key”进行注册获取新的Acitvation Key。高版本软件可以用命令activation-key 直接输入新的key,低版本的升级方法可以参考:http://mize.netbuddy.org/021213.html。

原文转自:http://www.ltesting.net