思科ASA防火墙VPDN拨号配置命令整理 (ASA版本8.2,包括PPPoE/L2TP)

本文是Adreaman根据思科ASA8.2配置文档手册中的L2TP和PPPoE功能介绍整理出来的,介绍思科ASA(软件版本8.2)防火墙中PPPoE/L2TP这两种VPDN特性的配置步骤。可与本博客之前介绍的《思科PIX防火墙VPDN拨号配置命令整理》对比查看。思科ASA防火墙支持作为PPPoE客户端拨号,支持作为L2TP服务器接受拨入,并且,仅支持L2TP over IPsec方式拨入,不支持纯L2TP方式拨入。ASA思科文档中未介绍PPTP,并且命令行中也去掉了PPTP的部分,应该已经取消了对于PPTP的支持。

注:本文并非个人真实配置步骤的记录,而是思科配置手册的分析和注释,旨在帮助我们理解一个整体的配置思路。

  • 一、 PPPoE的配置
  • 1.1 定义PPPoE服务VPDN组
  • vpdn group group_name request dialout pppoe

  • 1.2 指定PPP认证使用的协议
  • vpdn group group_name ppp authentication {chap | mschap | pap} mschap只支持v1。

  • 1.3 将PPPoE客户端用户名绑定到该VPDN组
  • vpdn group group_name localname username

  • 1.4 为用户指定密码
  • vpdn username username password password [store-local]

  • 1.5 接口使能PPPoE功能
  • 接口视图下 ip address pppoe [setroute] 注:相对于PIX6.3,此命令已经转移到接口视图下,所以无需指定接口名作为参数。

  • 1.6 为接口指定VPDN组
  • 接口视图下 pppoe client vpdn group grpname 注:PIX6.3下没有这个命令,如果不用此命令指定VPDN group,将随机使用一个VPDN组。

  • 1.7 启动PPPoE,但是由用户指定IP地址
  • 接口视图下 ip address ipaddress mask pppoe 由用户指定地址和掩码

  • 1.8 show命令。
  • “show ip address outside pppoe ” 文档没有详细介绍,模拟器有此命令。
    show vpdn session [l2tp | pppoe] [id sess_id | packets | state | window]
    show vpdn tunnel [l2tp | pppoe] [id tnl_id | packets | state | summary | transport] 命令可以显示拨号的session信息和tunnel信息,
    模拟器可以help出一些show命令,应该都可以支持。
    show vpdn group [group_name] 8.2文档未介绍,从PIX6.3继承而来
    show vpdn username [user_name] 8.2文档未介绍,从PIX6.3继承而来

  • 1.9 debug命令。
  • “[no] debug pppoe event | error | packet”

  • 二、 L2TP的配置
  • 2.1 在开始L2TP的配置之前,先要配置ipsec(此处省略了IPsec的许多细节配置)
  • crypto ipsec transform-set transform_name algorithm
    Example:
    hostname(config)# crypto ipsec transform-set sales_l2tp_transform esp-3des

  • 2.2 设置ipsec为传输模式
  • crypto ipsec transform-set trans_name mode transport
    Example:
    hostname(config)# crypto ipsec transform-set trans_name mode transport

  • 2.3 设置一个L2TP/IPsec的组策略
  • vpn-tunnel-protocol l2tp-ipsec
    Example:
    hostname(config)# group-policy sales_policy attributes
    hostname(config-group-policy)# vpn-tunnel-protocol l2tp-ipsec

  • 2.4 为组策略中的客户端设置DNS服务器地址(命令位于组策略视图下)
  • dns value [none | IP_primary [IP_secondary] (注:命令行手册和模拟器上此命令为dns-server {value ip_address [ip_address] | none},应以命令行手册为准)
    Example:
    hostname(config)# group-policy sales_policy attributes
    hostname(config-group-policy)# dns value 209.165.201.1 209.165.201.2

  • 2.5 为组策略中的客户端设置WINS服务器地址(命令位于组策略视图下)
  • wins-server value [none | IP_primary [IP_secondary]]
    Example:
    hostname (config-group-policy)# wins-server value 209.165.201.3 209.165.201.4

  • 2.6 创建Tunnel组
  • tunnel-group name type ipsec-ra
    注:此命令中指定的”ipsec-ra”类型在8.2版本应该已经和webvpn类型一起统一为remote-access类型,但8.2的配置文档中仍然沿用了ipsec-ra类型做介绍,所以本文沿用,真正配置时请注意区别。
    Example:
    hostname(config)# tunnel-group sales_tunnel type ipsec-ra
    可用的type如下:
    ciscoasa(config)# tunnel-group 111 type ?

    configure mode commands/options:
    ipsec-l2l IPSec Site to Site group
    ipsec-ra IPSec Remote Access group (DEPRECATED) 注:已废止,变为remote-access类型
    remote-access Remote access (IPSec and WebVPN) group
    webvpn WebVPN group (DEPRECATED) 注:已废止,变为remote-access类型

  • 2.7 开始配置Tunnel group的通用(General)属性(即进入Tunnel Group 通用属性配置视图)
    hostname(config)# tunnel-group sales_tunnel general-attributes
    (只有用”tunnel-group name type”命令创建了某种Tunnel组之后,才可以为该组输入下列属性配置命令进入属性配置视图。)

    • 2.7.1 关联Tunnel组和策略组(在Tunnel组通用属性配置视图下)
    • default-group-policy name
      Example:
      hostname(config-tunnel-general)# default-group-policy sales_policy

    • 2.7.2 设置Tunnel组的认证方式(在Tunnel组通用属性配置视图下)
    • authentication-server-group [(interface_name)] server_group [LOCAL | NONE]
      server_group 为使用 “aaa-server” 命令创建的AAA服务器组。 LOCAL 表示当所有的服务器通信失败时,使用本地用户组。server_group 处可以直接使用LOCAL关键字 ,表示只使用本地用户库做验证。
      no authentication-server-group [(interface_name)] server_group 删除本Tunnel group的认证服务器组
      Example:
      hostname(config-tunnel-general)# authentication-server-group sales_server

    • 2.7.3 指定Tunnel组的记账方式(在Tunnel组通用属性配置视图下)
    • accounting-server-group aaa_server_group server_group为使用 “aaa-server” 命令创建的AAA服务器组。
      同上面介绍的指定认证组,此处为Tunnel组指定记账(accounting)使用的AAA服务器。
      Example:
      hostname(config-tunnel-general)# accounting-server-group sales_aaa_server

    • 2.7.4 设置为Tunnel组的客户端分配IP地址的IP池 (在Tunnel组通用属性配置视图下)
    • address-pool [(interface name)] address_pool1 [...address_pool6] address_poolx为使用”ip local pool”命令配置的地址范围
      注意:在Group-policy视图下配置的address-pool会覆盖此处配置的地址池。此处配置的地址池排列顺序就是分配时选取地址的顺序。
      Example:
      hostname(config-tunnel-general)# address-pool sales_addresses

  • 下列其他的一些属性视图:
    tunnel-group general-attributes (对于ipsec-l2l类型和remote-access类型可用)
    tunnel-group ipsec-attributes (对于ipsec-l2l类型和remote-access类型可用)
    tunnel-group webvpn-attributes (对于remote-access类型可用)
    tunnel-group ppp-attributes (对于remote-access类型可用)

  • 2.8 开始配置Tunnel group的PPP属性(即进入Tunnel Group 的PPP属性配置视图)
    • 2.8.1 配置PPP的认证属性
    • authentication auth_type
      auth_type可选如下:(命令行索引中没有介绍chap,但是模拟器可配)
      chap Enable ppp authentication protocol CHAP
      eap-proxy Enable ppp authentication to be proxied to an EAP enabled RADIUS server
      ms-chap-v1 Enable ppp authentication protocol MS-CHAP version 1
      ms-chap-v2 Enable ppp authentication protocol MS-CHAP version 2
      pap Enable ppp authentication protocol PAP

  • tunnel-group name ppp-attributes
    Example:
    hostname(config)# tunnel-group name ppp-attributes

  • 2.9 配置l2tp的Hello间隔
  • l2tp tunnel hello seconds 全局配置视图

  • 2.10 配置NAT穿越

ASA相对于PIX增加了策略组(Group policy)和隧道组(Tunnel group)的概念,思科在ASA版本中增加了很多此类封装型的配置概念,例如MPF框架中的策略、分类和服务,是对一组配置的封装,封装为一个“模块”,供其他“应用者”Link引用,以减少相同配置的多次重复配置。

附:思科PIX6.x支持PPPoE(拨出)、PPTP/L2TP(拨入),统称VPDN(虚拟私有拨号网)。在软件版本升级到7.0后(包括7.0至7.2三个版本),这三个功能全部消失。在6.x至7.x这次升级中,思科大幅度的调整了命令行的结构和配置方式,全面向IOS路由器的命令行形式靠拢,例如在filter和inspect(fixup)范畴加入了MPF组织框架,在VPN范畴中增加了Group policy/Tunnel Group机制,这些配置方式的变化是革命性的和令初学者望而却步的,PIX/ASA的配置不再像6.x版本那样直白和平铺直叙,而是将基础配置进行抽象封装模块化,从此配置变得更加灵活、易于扩展,但组织起来稍显复杂,也易于出错。在7.3之后,PPPoE回到了版本中,并继续位于原来的vpdn命令行中,而L2TP则被嵌入ipsec VPN的体系之中,并仅支持L2TP over IPsec。

<完>

发表评论

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

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>