思科 ASA 系列 VPN CLI 配置指南

Size: px
Start display at page:

Download "思科 ASA 系列 VPN CLI 配置指南"

Transcription

1 软件版本 9.4 适用于 ASA 5506-X ASA 5506H-X ASA 5506W-X ASA 5508-X ASA 5512-X ASA 5515-X ASA 5516-X ASA 5525-X ASA 5545-X ASA 5555-X ASA 5585-X ASA 服务模块和自适应安全虚拟设备 首次发行日期 :2015 年 3 月 23 日最后更新日期 :2015 年 4 月 7 日 思科系统公司 思科在全球设有 200 多个办事处 有关地址 电话号码和传真号码信息, 可查阅思科网站 : 文本部件号 : 不适用, 仅在线提供

2 本手册中有关产品的规格和信息如有更改, 恕不另行通知 本手册中的所有声明 信息和建议均准确可靠, 但我们不为其提供任何明示或暗示的担保 用户必须承担使用产品的全部责任 产品配套的软件许可和有限担保在随产品一起提供的信息包中提供, 且构成本文的一部分 如果您找不到软件许可或有限担保, 请与思科代表联系以索取副本 思科所采用的 TCP 报头压缩是加州大学伯克莱分校 (UCB) 开发的一个程序的改版, 是 UCB 的 UNIX 操作系统公共域版本的一部分 保留所有权利 版权所有 1981, 加州大学董事会 无论在该手册中是否作出了其他担保, 来自这些供应商的所有文档文件和软件都按 原样 提供且仍有可能存在缺陷 思科和上述供应商不承诺所有明示或暗示的担保, 包括 ( 但不限于 ) 对特定用途的适销性 适用性 非侵权性以及因交易 使用或商业惯例所衍生的担保 在任何情况下, 对于任何间接 特殊 连带发生或偶发的损坏, 包括 ( 但不限于 ) 因使用或无法使用本手册而导致的任何利润损失或数据损失或损坏, 思科及其供应商概不负责, 即使思科及其供应商已获知此类损坏的可能性也不例外 思科和思科徽标是思科和 / 或其附属公司在美国和其他国家 / 地区的商标或注册商标 要查看思科商标列表, 请转至此 URL: 文中提及的第三方商标为其相应所有者的财产 合作伙伴 一词的使用并不意味着思科和任何其他公司之间存在合作伙伴关系 (1110R) 本文档中使用的任何互联网协议 (IP) 地址和电话号码并非实际地址和电话号码 本文档中所含的任何示例 命令显示输出 网络拓扑图和其他图形仅供说明之用 说明性内容中用到的任何真实 IP 地址或电话号码纯属巧合, 并非有意使用 2015 思科系统公司版权所有

3 关于本指南 文档目标, 第 iii 页 相关文档, 第 iii 页 约定, 第 iii 页 获取文档和提交服务请求, 第 iv 页 文档目标 本指南旨在帮助您使用命令行界面在自适应安全设备 (ASA) 上配置 VPN 本指南仅介绍最常见的一些配置场景, 并未涵盖所有功能 通过使用自适应安全设备管理器 (ASDM)( 一种基于 Web 的 GUI 应用 ), 也可以配置和监控 ASA ASDM 提供配置向导指导您完成一些常见配置场景, 并提供联机帮助以使您获得不常见场景的信息 本指南适用于思科 ASA 系列 本指南中, 术语 ASA 一般适用于所支持的型号, 除非另有说明 相关文档 有关详细信息, 请参阅 思科 ASA 系列文档导航, 网址为 : 约定 本文档使用下列约定 : 约定 说明 粗体 命令和关键字及用户输入的文本以粗体显示 斜体 文档标题 新出现或强调的术语, 以及要为其提供数值的参数以斜体显示 [ ] 方括号中的元素是可选项 {x y z } 必需的备选关键字集中在大括号内, 以竖线分隔 [ x y z ] 可选的备选关键字集中在方括号内, 以竖线分隔 iii

4 字符串 courier 字体 courier 粗体 不加引号的字符集 请勿将字符串用引号引起来, 否则会将引号视为字符串的一部分 系统显示的终端会话和信息以 courier 字体显示 命令和关键字及用户输入的文本以 courier 粗体显示 courier 斜体 需要提供值的参数以 courier 斜体显示 < > 非打印字符 ( 如密码 ) 括在尖括号中 [ ] 系统提示的默认回复括在方括号中!,# 代码行开头的感叹号 (!) 或井字号 (#) 表示注释行 备注 表示读者需要注意的地方 提示 表示以下信息有助于您解决问题 注意 表示读者应当小心处理 在这种情况下, 操作可能会导致设备损坏或数据丢失 获取文档和提交服务请求 有关获取文档 使用思科漏洞搜索工具 (BST) 提交服务请求和收集其他信息的信息, 请参阅思科产品文档更新, 其网址为 : 通过 RSS 摘要的方式订阅思科产品文档更新, 其中列出了所有最新及修订的思科技术文档, 相关内容将通过阅读器应用程序直接发送至您的桌面 RSS 摘要是一种免费服务 iv

5 第 1 部分 站点到站点 VPN 和客户端 VPN

6

7 第 1 章 IPsec 和 ISAKMP 首次发布日期 :2015 年 3 月 23 日最后更新日期 :2015 年 4 月 7 日 有关隧道 IPsec 和 ISAKMP( 第 1-1 页 ) IPsec VPN 的许可 ( 第 1-3 页 ) IPsec VPN 规定 ( 第 1-4 页 ) 配置 ISAKMP( 第 1-4 页 ) 配置 IPsec( 第 1-13 页 ) 管理 IPsec VPN( 第 1-29 页 ) 支持 Nokia VPN 客户端 ( 第 1-31 页 ) 有关隧道 IPsec 和 ISAKMP 本主题介绍用于建立虚拟专用网络 (VPN) 的互联网协议安全 (IPsec) 以及互联网安全关联和密钥管理协议 (ISAKMP) 标准 借助隧道, 可以使用互联网等公共 TCP/IP 网络在远程用户与企业专用网络之间创建安全连接 每个安全连接都称为一个隧道 ASA 使用 ISAKMP 和 IPSec 隧道标准来建立和管理隧道 ISAKMP 和 IPSec 将完成以下操作 : 协商隧道参数 建立隧道 验证用户和数据 管理安全密钥 加密和解密数据 管理隧道中的数据传输 作为隧道终端或路由器管理入站和出站数据传输 ASA 用作双向隧道终端 它可以从专用网络接收明文数据包, 将其封装, 创建隧道, 然后发送到隧道的另一端, 随后解封并发送到最终目的地 它也会从公用网络接收封装数据包, 将其解封, 然后发送给其在专用网络上的最终目标 1-1

8 有关隧道 IPsec 和 ISAKMP 第 1 章 IPsec 和 ISAKMP IPsec 概述 ASA 会将 IPsec 用于 LAN 到 LAN VPN 连接, 并提供将 IPsec 用于客户端到 LAN VPN 连接的选项 在 IPsec 术语中, 对等体是一个远程访问客户端或其他安全网关 对于这两个连接类型, ASA 仅支持思科对等体 由于我们遵守 VPN 行业标准,ASA 也可以与其他供应商的对等体结合使用 ; 但是, 我们不支持这些对等体 在建立隧道的过程中, 两个对等体会协商管理身份验证 加密 封装和密钥管理的安全关联 这些协商包括两个阶段 : 第一个阶段, 建立隧道 (IKE SA); 第二个阶段, 管理该隧道内的流量 (IPsec SA) LAN 到 LAN VPN 可连接不同地理位置的网络 在 IPsec LAN 到 LAN 连接中,ASA 可用作发起方或响应方 在 IPsec 客户端到 LAN 连接中,ASA 只能用作响应方 发起方会提议 SA; 响应方会接受 拒绝或提出相反提议, 所有这一切都根据配置的 SA 参数进行 要建立连接, 两个实体都必须同意 SA 在单情景模式和多情景模式下都可以执行站点到站点任务的配置 备注 多情景模式仅适用于站点到站点的 IKEv2 和 IKEv1, 而不适用于 AnyConnect 无客户端 SSL VPN 旧版思科 VPN 客户端 Apple 本机 VPN 客户端 Microsoft 本机 VPN 客户端或 IKEv1 IPsec 的 ctcp 了解 IPsec 隧道 IPsec 隧道是 ASA 在对等体之间建立的 SA 集合 SA 指定适用于敏感数据的协议和算法并指定对等体使用的密钥内容 IPSec SA 控制用户流量的实际传输 SA 是单向的, 但是通常成对建立 ( 入站和出站 ) 对等体协商用于每个 SA 的设置 每个 SA 包括以下内容 : IKEv1 转换集或 IKEv2 提议 加密映射 ACL 隧道组 预分片策略 ISAKMP 和 IKE 概述 ISAKMP 是使两台主机商定如何构建 IPsec 安全关联 (SA) 的协商协议 它提供用于商定 SA 属性的格式的公共框架 此安全关联包括与对等体协商 SA 以及修改或删除 SA ISAKMP 将协商分为两个阶段 : 阶段 1 和阶段 2 阶段 1 创建第一条隧道, 其将保护随后的 ISAKMP 协商消息 阶段 2 创建保护数据的隧道 IKE 使用 ISAKMP 为要使用的 IPsec 设置 SA IKE 创建用于对对等体进行身份验证的加密密钥 ASA 对于来自旧版思科 VPN 客户端的连接支持 IKEv1, 对于 AnyConnect VPN 客户端支持 IKEv2 要设置 ISAKMP 协商的条款, 请创建 IKE 策略, 其中包含以下内容 : IKEv1 对等体必需的身份验证类型 : 使用证书的 RSA 签名或预共享密钥 (PSK) 加密方法, 用于保护数据并确保隐私 散列消息身份验证代码 (HMAC) 方法, 用于确保发送方的身份, 以及确保消息在传输过程中未发生修改 1-2

9 第 1 章 IPsec 和 ISAKMP IPsec VPN 的许可 Diffie-Hellman 群, 用于确定 encryption-key-determination 算法的强度 ASA 使用此算法派生加密密钥和散列密钥 对于 IKEv2, 使用单独的伪随机函数 (PRF) 作为派生 IKEv2 隧道加密等所要求的密钥内容和散列运算的算法 对 ASA 替换加密密钥之前使用加密密钥的时间的限制 利用 IKEv1 策略, 您要为每个参数设置一个值 对于 IKEv2, 您可以为单个策略配置多个加密和身份验证类型以及多个完整性算法 ASA 将按最安全到最不安全的顺序对设置进行排序, 并使用该顺序与对等体进行协商 利用这种排序, 您可以发送单个提议来传达所有允许的转换, 而无需像对 IKEv1 一样发送每个允许的组合 了解 IKEv1 转换集和 IKEv2 提议 IKEv1 转换集或 IKEv2 提议是定义 ASA 如何保护数据的安全协议和算法的组合 在 IPsec SA 协商中, 对等体必须标识两个对等体相同的转换集或提议 然后 ASA 应用匹配的转换集或提议为该加密映射创建保护 ACL 中数据流的 SA 利用 IKEv1 转换集, 您可以为每个参数设置一个值 对于 IKEv2 提议, 您可以为单个提议配置多个加密和身份验证类型以及多个完整性算法 ASA 将按最安全到最不安全的顺序对设置进行排序, 并使用该顺序与对等体进行协商 利用这种排序, 您可以发送单个提议来传达所有允许的组合, 而无需像 IKEv1 一样逐一发送每个允许的组合 如果您更改用于创建其 SA 的转换集或提议的定义,ASA 将撤销隧道 有关详细信息, 请参阅清除安全关联 ( 第 1-30 页 ) 备注 如果您清除或删除转换集或提议中的唯一元素,ASA 将自动取消其加密映射引用 IPsec VPN 的许可 备注 此功能不适用于无负载加密型号 使用 IKEv2 的 IPsec 远程访问 VPN 需要 AnyConnect Plus 或 Apex 许可证, 可单独购买 购买 AnyConnect 许可证时, 请参阅以下最大值 使用 IKEv1 的 IPsec 远程访问 VPN 和使用 IKEv1 或 IKEv2 的 IPsec 站点到站点 VPN 使用基本许可证随附的其他 VPN 许可证 所有类型的最大组合 VPN 会话数量不能超过此表中所示的最大会话数 建模许可证要求 ASA 5506-X 使用 IKEv2 的 IPsec 远程访问 VPN:50 个会话 5506H-X 5506W-X 使用 IKEv1 的 IPsec 远程访问 VPN 和使用 IKEv1 或 IKEv2 的 IPsec 站点到站点 VPN: ASA 5508-X ASA 5512-X ASA 5515-X ASA 5516-X 基本许可证 :10 个会话 增强型安全许可证 :50 个会话 100 个会话 250 个会话 250 个会话 300 个会话 1-3

10 IPsec VPN 规定 第 1 章 IPsec 和 ISAKMP 建模 ASA 5525-X ASA 5545-X ASA 5555-X ASA 5585-X, 带 SSP-10 ASA 5585-X, 带 SSP-20 SSP-40 和 SSP-60 ASASM ASAv5 ASAv10 ASAv30 许可证要求 750 个会话 2500 个会话 5000 个会话 5000 个会话 10,000 个会话 10,000 个会话 250 个会话 250 个会话 750 个会话 IPsec VPN 规定 情景模式规定支持单情景或多情景模式 防火墙模式规定仅支持路由防火墙模式 不支持透明防火墙模式 故障切换规定仅在主用 / 备用故障切换配置中复制 IPsec VPN 会话 IPv6 规定不支持 IPv6 配置 ISAKMP 配置 IKEv1 和 IKEv2 策略 IKEv1 和 IKEv2 最多分别支持 20 个 IKE 策略, 每个都有不同的值集 为您创建的每个策略分别分配一个唯一的优先级 优先级数值越低, 优先级就越高 在 IKE 协商开始时, 发起协商的对等体将其所有策略发送至远程对等体, 然后远程对等体将尝试找到一个匹配项 远程对等体将按照优先级顺序 ( 优先级最高的优先 ), 将该对等体的所有策略与自身配置的各个策略进行比对, 直到发现一个匹配项 当来自两个对等体的两个策略包含相同的加密 散列 身份验证和 Diffie-Hellman 参数值时, 表明存在匹配项 对于 IKEv1, 远程对等体策略还必须指定一个寿命, 其值应低于或等于发起方发送的策略中的寿命 如果这两个寿命不一样,ASA 将使用较短的寿命 对于 IKEv2, 各对等体之间将不协商寿命, 而是在本地进行管理, 从而可以在每个对等体上单独配置其寿命 如果不存在可接受的匹配项,IKE 将拒绝协商, 并且不会建立 SA 1-4

11 第 1 章 IPsec 和 ISAKMP 配置 ISAKMP 毫无疑问, 为每个参数选择具体值时, 需要在安全和性能之间进行权衡 默认值提供的安全级别足以达到大多数组织的安全要求 如果与仅支持一个参数值的对等体进行互操作, 则只能选择该参数值 您必须在每个 ISAKMP 命令中包含优先级 优先级数值唯一标识了策略并且决定着策略在 IKE 协商中的优先级 步骤 1 要创建 IKE 策略, 请在单情景或多情景模式下从全局配置模式输入 crypto ikev1 ikev2 policy 命令 提示符将显示 IKE 策略配置模式 例如 : hostname(config)# crypto ikev1 policy 1 hostname(config-ikev1-policy)# 注意 新的 ASA 配置没有默认 IKEv1 或 IKEv2 策略 步骤 2 指定加密算法 默认设置为三重 DES 本示例将加密算法设置为 DES encryption [aes aes-192 aes-256 des 3des] 例如 : hostname(config-ikev1-policy)# encryption des 步骤 3 指定散列算法 默认值为 SHA-1 此示例配置 MD5 hash [md5 sha] 例如 : hostname(config-ikev1-policy)# hash md5 步骤 4 指定身份验证方法 默认设置为预共享密钥 此示例配置 RSA 签名 authentication [pre-share crack rsa-sig] 例如 : hostname(config-ikev1-policy)# authentication rsa-sig 步骤 5 指定 Diffie-Hellman 群标识符 默认值为群 2 此示例配置群 5 group [1 2 5] 例如 : hostname(config-ikev1-policy)# group 5 步骤 6 指定 SA 寿命 此示例将其寿命设置为 4 小时 (14400 秒 ) 默认值为 秒 (24 小时 ) lifetime seconds 例如 : hostname(config-ikev1-policy)# lifetime 步骤 7 使用 IKE 策略关键字和值 ( 第 1-6 页 ) 中提供的 IKEv1 和 IKEv2 策略关键字及其值来指定其他设置 如果您没有为特定策略参数指定值, 则将应用默认值 1-5

12 配置 ISAKMP 第 1 章 IPsec 和 ISAKMP IKE 策略关键字和值 命令关键字含义说明 authentication rsa-sig 带有使用 RSA 签名算法 生成的密钥的数字证书 crack pre-share ( 默认 ) 身份验证加密密钥的质询 / 响应 预共享密钥 指定 ASA 用于建立每个 IPSec 对等体的标识的身份验证方法 CRACK 在客户端使用 RADIUS 等传统方法进行身份验证且服务器使用公钥身份验证时提供强大的相互身份验证 预共享密钥不能在增长型网络中很好地进行扩展, 但是在小型网络中更容易设置 加密 des 3des( 默认 ) 56 位 DES-CBC 168 位三重 DES 指定保护两个 IPSec 对等体之间传输的数据的对称加密算法 默认设置为 168 位三重 DES hash sha( 默认 ) SHA-1(HMAC 变体 ) 指定用于确保数据完整性的散列算法 它可以确保数据包来自其所声明的发送方, 并且在传输过程中未被修改 md5 MD5(HMAC 变体 ) 默认值为 SHA-1 MD5 的摘要较小, 被认为略快于 SHA-1 已发生过针对 MD5 的成功 ( 但非常困难 ) 攻击 ; 然而,IKE 使用的 HMAC 变体可防止此类攻击 group 1 群 1(768 位 ) 指定 Diffie-Hellman 群标识符, 两个 IPsec 对等体会在 2( 默认 ) 群 2(1024 位 ) 不相互传输该标识符的情况下, 使用该标识符来派生共享密钥 5 群 5(1536 位 ) Diffie-Hellman 群编号越小, 其执行所要求的 CPU 时间 就越少 Diffie-Hellman 群编号越大, 则安全性越高 AES 只有在支持 VPN-3DES 的安全设备上才可用 要 支持 AES 所需要的大密钥长度,ISAKMP 协商应使用 Diffie-Hellman (DH) 群 5 lifetime 整数值 (86400 = 默认值 ) 120 至 秒指定 SA 寿命 默认值为 秒或 24 小时 通常, 此寿命越短,ISAKMP 协商 ( 在某种程度上 ) 越安全 但是, 此寿命越短,ASA 设置将来的 IPSec SA 的速度越快 命令 关键字 含义 说明 integrity sha( 默认 ) SHA-1(HMAC 变体 ) 指定用于确保数据完整性的散列算法 它可以确保数据包来自其所声明的发送方, 并且在传输过程中未被修改 md5 MD5(HMAC 变体 ) 默认值为 SHA-1 MD5 的摘要较小, 被认为略快于 SHA-1 已发生过针对 MD5 的成功 ( 但非常困难 ) 攻击 ; 然而,IKE 使用的 HMAC 变体可防止此类攻击 sha256 SHA 2,256 位摘要 指定具有 256 位摘要的安全散列算法 SHA 2 sha384 SHA 2,384 位摘要 指定具有 384 位摘要的安全散列算法 SHA 2 sha512 SHA 2,512 位摘要 指定具有 512 位摘要的安全散列算法 SHA 2 null 指定 AES-GCM 为加密算法时, 管理员可以选择 null 作为 IKEv2 完整性算法 1-6

13 第 1 章 IPsec 和 ISAKMP 配置 ISAKMP 命令关键字含义说明 加密 des 3des( 默认 ) aes aes-192 aes-256 aes-gcm aes-gcm-192 aes-gcm-256 null 56 位 DES-CBC 168 位三重 DES 用于 IKEv2 加密的 AES-GCM 算法选项 指定保护两个 IPSec 对等体之间传输的数据的对称加密算法 默认设置为 168 位三重 DES 高级加密标准支持长度为 位的密钥 高级加密标准支持长度为 位的密钥 policy_index 访问 IKEv2 策略子模式 prf sha( 默认 ) SHA-1(HMAC 变体 ) 指定伪随机函数 (PRF), 即用于生成密钥内容的算法 md5 MD5(HMAC 变体 ) 默认值为 SHA-1 MD5 的摘要较小, 被认为略快于 SHA-1 已发生过针对 MD5 的成功 ( 但非常困难 ) 攻击 ; 然而,IKE 使用的 HMAC 变体可防止此类攻击 sha256 SHA 2,256 位摘要 指定具有 256 位摘要的安全散列算法 SHA 2 sha384 SHA 2,384 位摘要 指定具有 384 位摘要的安全散列算法 SHA 2 sha512 SHA 2,512 位摘要 指定具有 512 位摘要的安全散列算法 SHA 2 优先级 将策略模式扩展为支持其他 IPsec V3 功能并使 AES-GCM 和 ECDH 设置成为 Suite B 支持的一部分 group 1 群 1(768 位 ) 指定 Diffie-Hellman 群标识符, 两个 IPsec 对等体会在 2( 默认 ) 群 2(1024 位 ) 不相互传输该标识符的情况下, 使用该标识符来派生共享密钥 5 群 5(1536 位 ) Diffie-Hellman 群编号越小, 其执行所要求的 CPU 时间 就越少 Diffie-Hellman 群编号越大, 则安全性越高 lifetime 整数值 (86400 = 默认值 ) AnyConnect 客户端在非 FIPS 模式下支持 DH 群 1 2 和 5, 而在 FIPS 模式下只支持群 2 AES 只有在支持 VPN-3DES 的安全设备上才可用 要支持 AES 所需要的大密钥长度,ISAKMP 协商应使用 Diffie-Hellman (DH) 群 至 秒指定 SA 寿命 默认值为 秒或 24 小时 通常, 此寿命越短,ISAKMP 协商 ( 在某种程度上 ) 越安全 但是, 此寿命越短,ASA 设置将来的 IPSec SA 的速度越快 在外部接口上启用 IKE 您必须在终止 VPN 隧道的接口上启用 IKE 这通常是外部或公共接口 要启用 IKEv1 或 IKEv2, 请在单情景或多情景模式下从全局配置模式使用 crypto ikev1 ikev2 enable interface-name 命令 例如 : hostname(config)# crypto ikev1 enable outside 1-7

14 配置 ISAKMP 第 1 章 IPsec 和 ISAKMP 禁用 IKEv1 积极模式 阶段 1 IKEv1 协商可以使用主模式或积极模式 这两个模式提供相同的服务, 但是积极模式只需在对等体之间进行两次消息交换, 交换总计三条消息 ; 而不需要进行三次消息交换, 交换总计六条消息 积极模式速度更快, 但是不为通信方提供标识保护 因此, 对等体在建立安全 SA 之前必须交换标识信息 默认情况下启用积极模式 备注 禁用积极模式可防止思科 VPN 客户端使用预共享密钥身份验证向 ASA 建立隧道 但是, 它们可以使用基于证书的身份验证 ( 也就是 ASA 或 RSA) 建立隧道 要禁用积极模式, 请在单情景或多情景模式下输入以下命令 : hostname(config)# crypto ikev1 am-disable 如果禁用了积极模式, 然后想要恢复它, 请使用此命令的 no 形式 例如 : hostname(config)# no crypto ikev1 am-disable 配置 IKEv1 和 IKEv2 ISAKMP 对等体的 ID 方法 在 IKEv1 或 IKEv2 ISAKMP 阶段 I 协商中, 对等体必须相互标识自身身份 您可以从以下选项中选择标识方法 地址 Automatic ( 默认 ) 主机名 Key ID key_id_string 使用交换 ISAKMP 标识信息的主机的 IP 地址 按连接类型确定 ISAKMP 协商 : 预共享密钥的 IP 地址 证书身份验证的证书可分辨名称 使用交换 ISAKMP 标识信息的主机的完全限定域名 ( 默认 ) 此名称包含主机名和域名 指定远程对等体用于查找预共享密钥的字符串 ASA 使用要向对等体发送的阶段 I ID 所有 VPN 场景都是如此, 但主模式下 LAN 到 LAN IKEv1 连接除外, 它使用预共享密钥进行身份验证 要更改对等标识方法, 请在单情景或多情景模式下输入以下命令 : crypto isakmp identity {address hostname key-id id-string auto} 例如, 以下命令将对等标识方法设置为使用主机名 : hostname(config)# crypto isakmp identity hostname INVALID_SELECTORS 通知 如果 IPsec 系统在某个 SA 上收到入站数据包, 但该数据包的报头字段与该 SA 的选择符不一致, 则 IPsec 系统必须丢弃该数据包 此事件的审核日志条目包括当前日期 / 时间 SPI IPsec 协议 数据包的源和目标 该数据包的任何其他可用向量值, 以及来自相关 SA 条目的选择符值 系统会生成 IKE 通知 INVALID_SELECTORS 并发送到发送方 (IPsec 对等体 ), 表明收到的数据包因未能通过选择符检查而丢弃 1-8

15 第 1 章 IPsec 和 ISAKMP 配置 ISAKMP ASA 已在 CTM 中使用如下所示的现有系统日志对此事件进行日志记录 : %ASA : IKEv2 Received INVALID_SELECTORS Notification from peer: <peer IP>. Peer received a packet (SPI=<spi>) from <local_ip>. The decapsulated inner packet didn't match the negotiated policy in the SA. Packet destination <pkt_daddr>, port <pkt_dest_port>, source <pkt_saddr>, port <pkt_src_port>, protocol <pkt_prot> 管理员现在可以启用或禁用在 SA 上收到与该 SA 的流量选择符不匹配的入站数据包时向对等体发送 IKEv2 通知 如果启用,IKEv2 通知消息的速率限制为每个 SA 每 5 秒发送一条通知消息 IKEv2 通知在 IKEv2 信息交换中发送到对等体 配置十六进制 IKEv2 预共享密钥 您可以在本地和远程预共享密钥命令中添加关键字 hex, 配置十六进制的 IKEv2 预共享密钥 ikev2 local-authentication pre-shared-key [ 0 8 hex ] <string> ikev2 remote-authentication pre-shared-key [ 0 8 hex ] <string> 启用或禁用发送 IKE 通知 管理员可以启用或禁用在 IKEv2 IPsec VPN 连接上收到与该连接的流量选择符不匹配的入站数据包时向对等体发送 IKE 通知 默认情况下禁用发送此通知 使用以下 CLI 命令启用或禁用在对 ASDM 证书中的用户名授权时发送 IKE INVALID_SELECTORS 通知 : [no] crypto ikev2 notify invalid-selectors 执行证书身份验证时, 证书中的 CN 就是用户名, 并且将对本地服务器执行授权 如果检索 service-type 属性, 则按前文所述进行处理 AAA 身份验证和授权 aaa authentication http console LOCAL aaa authorization http console radius 使用用户输入的用户名 / 密码, 对本地服务器执行 AAA 身份验证 使用同一用户名, 对 radius 服务器执行其他授权 如果检索 service-type 属性, 则按前文所述进行处理 启用 IPsec over NAT-T NAT-T 允许 IPsec 对等体通过 NAT 设备建立连接 其方法是使用端口 4500 将 IPsec 流量封装在 UDP 数据报中, 从而为 NAT 设备提供端口信息 NAT-T 会自动检测所有 NAT 设备, 但只有在必要时才封装 IPSec 流量 此功能默认为已禁用 备注 由于 AnyConnect 客户端的限制, 您必须启用 NAT-T, 才能让 AnyConnect 客户端使用 IKEv2 成功建立连接 即使客户端不在 NAT-T 设备后面, 此要求也适用 ASA 可同时支持标准 IPsec IPsec over TCP NAT-T 和 IPsec over UDP, 具体取决于与其交换数据的客户端 1-9

16 配置 ISAKMP 第 1 章 IPsec 和 ISAKMP 以下细分表格显示启用了各选项的连接 选项启用的功能客户端位置使用的功能并且客户端位于 NAT 后面, 则使用 NAT-T 选项 1 如果已启用 NAT-T 并且如果没有 NAT, 则使用本地 IPsec (ESP) 并且客户端位于 NAT 后面, 则使用 IPsec over UDP 选项 2 如果已启用 IPsec over UDP 并且如果没有 NAT, 则使用 IPsec over UDP 如果 NAT-T 和并且客户端位于 NAT 后面, 则使用 NAT-T 选项 3 IPsec over UDP 都已启用并且如果没有 NAT, 则使用 IPsec over UDP 备注 IPsec over TCP 启用时, 它将优先于所有其他连接方法 当您启用 NAT-T 时,ASA 将在所有启用 IPsec 的接口上自动打开端口 4500 ASA 支持在 LAN 到 LAN 或远程访问网络中运行 ( 但不能同时在两种网络中运行 ) 的一台 NAT/PAT 设备后面部署多个 IPsec 对等体 : 在混合环境中, 远程访问隧道将协商失败, 因为所有对等体都显示来自相同的公用 IP 地址, 即 NAT 设备的地址 此外, 远程访问隧道在混合环境中失败的原因还包括它们通常使用和 LAN 到 LAN 隧道组相同的名称 ( 也就是 NAT 设备的 IP 地址 ) 这种一致性会导致在 NAT 设备后面的 LAN 到 LAN 和远程访问混合网络中多个对等体之间协商失败 如要使用 NAT-T, 请在单情景或多情景模式下执行以下站点到站点步骤 : 步骤 1 输入以下命令, 在 ASA 上全局启用 IPsec over NAT-T: crypto isakmp nat-traversal natkeepalive 其中 natkeepalive 参数的取值范围是 10 至 3600 秒 默认值为 20 秒 例如, 输入以下命令将启用 NAT-T 并将其寿命值设置为一小时 hostname(config)# crypto isakmp nat-traversal 3600 步骤 2 通过输入以下命令为 IPsec 分片策略选择加密前选项 : hostname(config)# crypto ipsec fragmentation before-encryption 此选项允许流量通过不支持 IP 分片的 NAT 设备 这不影响支持 IP 分片的 NAT 设备的运行 启用 IPsec with IKEv1 over TCP IPsec over TCP 将 IKEv1 和 IPSec 协议同时封装在类 TCP 数据包内, 并支持同时穿过 NAT 与 PAT 设备和防火墙的安全隧道 此功能默认为已禁用 对于标准 ESP 或 IKEv1 在其中无法工作, 或者仅在修改现有防火墙规则的情况下才能工作的环境,IPsec/IKEv1 over TCP 使得思科 VPN 客户端可以在此环境中运行 备注 此功能不能与基于代理的防火墙配合使用 1-10

17 第 1 章 IPsec 和 ISAKMP 配置 ISAKMP IPsec over TCP 可与远程访问客户端配合使用 您可以同时在 ASA 及其连接的客户端上启用 IPsec over TCP 它在 ASA 上全局启用, 用于所有启用 IKEv1 的接口 它不适用于 LAN 到 LAN 连接 ASA 可同时支持标准 IPsec IPsec over TCP NAT 遍历和 IPsec over UDP, 具体取决于与其交换数据的客户端 IPsec over TCP 启用时优先于所有其他连接方法 一次只支持一个隧道的 VPN 3002 硬件客户端, 可使用标准 IPsec IPsec over TCP NAT 遍历或 IPsec over UDP 进行连接 您可以为您指定的最多 10 个端口启用 IPsec over TCP 如果您输入一个已知端口, 例如端口 80 (HTTP) 或端口 443 (HTTPS), 系统会显示一条警告, 指示与该端口关联的协议将不再用于公共接口 其结果是, 您无法再使用浏览器通过公共接口管理 ASA 要解决此问题, 请将 HTTP/HTTPS 管理重新配置到不同的端口 默认端口为 您必须在客户端以及 ASA 上配置 TCP 端口 客户端配置必须包含至少一个您为 ASA 设置的端口 要在 ASA 上从全局为 IKEv1 启用 IPsec over TCP, 请在单情景或多情景模式下执行以下命令 : crypto ikev1 ipsec-over-tcp [port port 1...port0] 本示例在端口 45 上启用 IPsec over TCP: hostname(config)# crypto ikev1 ipsec-over-tcp port 45 为 IKEv1 配置证书组匹配 隧道组定义用户连接条件和权限 证书组匹配允许使用用户证书的使用者 DN 或颁发者 DN 将用户与隧道组进行匹配 备注 证书组匹配仅适用于 IKEv1 和 IKEv2 LAN 到 LAN 连接 IKEv2 远程访问连接支持在隧道组的 webvpn 属性中以及在 certificate-group-map 的 webvpn 配置模式下配置的下拉组选择 要根据证书的这些字段将用户与隧道组匹配, 必须先创建定义匹配条件的规则, 然后将每个规则与所需的隧道组匹配 要创建证书映射, 请使用 crypto ca certificate map 命令 要定义隧道组, 请使用 tunnel-group 命令 您还必须配置证书组匹配策略, 指定从规则或从组织单位 (OU) 字段匹配组, 或指定为所有证书用户使用默认组 可以使用其中任意或所有方法 步骤 1 要配置基于证书的 ISAKMP 会话向隧道组映射所遵循的策略和规则并将证书映射条目与隧道组关联, 请在单情景或多情景模式下输入 tunnel-group-map 命令 其语法如下 : tunnel-group-map enable {rules ou ike-id peer ip} tunnel-group-map [rule-index] enable policy 1-11

18 配置 ISAKMP 第 1 章 IPsec 和 ISAKMP policy 指定用于从证书获取隧道组名称的策略 Policy 可以是以下某一项 : rule index ike-id - 指示如果无法根据规则查找确定隧道组或采用来自 OU 的隧道组, 则基于证书的 ISAKMP 会话将根据阶段 1 ISAKMP ID 映射到隧道组 ou - 指示如果无法根据规则查找确定隧道组, 则使用使用者可分辨名称 (DN) 中 OU 的值 peer-ip - 指示如果无法根据规则查找确定隧道组或采用来自 OU 的隧道组或 ike-id 方法, 则使用对等体 IP 地址 rules - 指示根据此命令所配置的证书映射关联, 将基于证书的 ISAKMP 会话映射到隧道组 ( 可选 ) 指 crypto ca certificate map 命令指定的参数 有效值为 1 到 步骤 2 请注意下列说明 : 您可以多次调用此命令, 前提是每次调用都是唯一的, 并且不多次引用映射索引 规则不能超过 255 个字符 您可以将多个规则分配给同一组 为此, 您首先要添加规则优先级和组 然后, 为每个组定义所需数量的条件语句 当将多个规则分配给同一组时, 将为测试为真的第一条规则生成匹配项 通过创建一条规则, 您可以要求将用户分配给特定隧道组之前匹配所有条件 要求匹配所有条件等同于逻辑和运算 或者, 如果要在将用户分配给特定隧道组之前要求只匹配一个条件, 请为每个条件创建一条规则 要求只匹配一个条件等同于逻辑或运算 指定当配置未指定隧道组时要使用的默认隧道组 其语法为 tunnel-group-map [rule-index] default-group tunnel-group-name, 其中 rule-index 是规则的优先级, 并且 tunnel-group name 必须用于现有的隧道组 示例 以下示例启用根据阶段 1 ISAKMP ID 的内容将基于证书的 ISAKMP 会话映射到隧道组 : hostname(config)# tunnel-group-map enable ike-id hostname(config)# 以下示例启用根据对等体的 IP 地址将基于证书的 ISAKMP 会话映射到隧道组 : hostname(config)# tunnel-group-map enable peer-ip hostname(config)# 以下示例启用根据使用者可分辨名称 (DN) 中的组织单位 (OU) 映射基于证书的 ISAKMP 会话 : hostname(config)# tunnel-group-map enable ou hostname(config)# 以下示例启用根据既定规则映射基于证书的 ISAKMP 会话 : hostname(config)# tunnel-group-map enable rules hostname(config)# 1-12

19 第 1 章 IPsec 和 ISAKMP 配置 IPsec 配置 IPsec 本节介绍使用 IPsec 实施 VPN 时, 配置 ASA 所需执行的程序 定义加密映射 加密映射定义在 IPsec SA 中协商的 IPSec 策略 其包括以下内容 : 确定 IPSec 连接允许和保护的数据包的 ACL 对等体标识 IPSec 流量的本地地址 ( 有关详细信息, 请参阅将加密映射应用于接口 ( 第 1-21 页 ) ) 最多 11 个 IKEv1 转换集或 IKEv2 提议, 用于尝试与对等体安全设置进行匹配 一个加密映射集包括一个或多个具有相同映射名称的加密映射 在创建第一个加密映射时, 就要创建加密映射集 以下站点到站点任务将在单情景或多情景模式下创建或添加加密映射 : crypto map map-name seq-num match address access-list-name 使用 access-list-name 指定 ACL ID, 即长度最多为 241 个字符的字符串或整数 提示使用全部为大写的字母可以更轻松地在您的配置中标识 ACL ID 您可以继续输入此命令, 向加密映射集添加加密映射 在以下示例中,mymap 是您可能想要添加加密映射的加密映射集的名称 crypto map mymap 10 match address 101 上面语法中显示的序号 (seq-num) 将具有相同名称的加密映射相互区分开 分配给加密映射的序号还决定着同一个加密映射集中该加密映射相较于其他加密映射的优先级 序号越小, 优先级就越高 在您将加密映射集分配给接口之后,ASA 将按照此映射集中的加密映射评估通过该接口的所有 IP 流量, 从序号最小的加密映射开始 [no] crypto map map_name map_index set pfs [group1 group2 group5 group14 group19 group20 group21 group24] 指定用于加密映射完全向前保密 (FCS) 的 ECDH 组 防止您为加密映射配置组 14 和组 24 选项 ( 使用 IKEv1 策略时 ) [no]crypto map name priority set validate-icmp-errors 或者 [no]crypto dynamic-map name priority set validate-icmp-errors 指定是否为加密或动态加密映射验证传入的 ICMP 错误消息 [no] crypto map <name> <priority> set df-bit [clear-df copy-df set-df} 或者 [no] crypto map dynamic-map <name> <priority> set df-bit [clear-df copy-df set-df] 为加密或动态加密映射配置现有的不分片 (DF) 策略 ( 安全关联级别 ) clear-df Ignores the DF bit. copy-df 保持 DF 位 set-df 设置和使用 DF 位 1-13

20 配置 IPsec 第 1 章 IPsec 和 ISAKMP [no] crypto map <name> <priority> set tfc-packets [burst <length auto] [payload-size <bytes auto> [timeout <seconds auto> 或者 [no] crypto dynamic-map <name> <priority> set tfc-packets [burst <length auto] [payload-size <bytes auto> [timeout <seconds auto> 管理员可以按照任意长度和间隔对 IPsec 安全关联启用虚拟流量机密性 (TFC) 数据包 您必须在启用 TFC 之前设置 IKEv2 IPsec 提议 分配给加密映射的 ACL 包括具有相同 ACL 名称的所有 ACE, 如以下命令语法所示 : access-list access-list-name {deny permit} ip source source-netmask destination destination-netmask 在创建第一个 ACE 时就要创建 ACL 以下命令语法将创建或添加 ACL: access-list access-list-name {deny permit} ip source source-netmask destination destination-netmask 在以下示例中,ASA 将分配给加密映射的 IPSec 保护应用于从 子网流向 子网的所有流量 : access-list 101 permit ip 匹配数据包的加密映射确定用于 SA 协商的安全设置 如果本地 ASA 发起协商, 它将使用静态加密映射中指定的策略创建发送到指定对等体的提议 如果对等体发起协商,ASA 会尝试将策略与静态加密映射匹配, 如果匹配失败, 则尝试匹配加密映射集中的任意动态加密映射, 从而决定是接受还是拒绝对等体提议 要使两个对等体成功建立 SA, 它们必须至少有一个兼容的加密映射 要兼容, 加密映射必须符合以下条件 : 加密映射必须包含兼容的加密 ACL( 例如, 镜像 ACL) 如果对应的对等体使用动态加密映射, 则 ASA 还必须包含兼容的加密 ACL 才能应用 IPsec 每个加密映射将标识另一个对等体 ( 除非对应的对等体使用动态加密映射 ) 加密映射至少有一个共同的转换集或提议 一个接口只能应用一个加密映射集 如果存在以下任意情况, 则在 ASA 上为特定接口创建多个加密映射 : 您想让特定对等体处理不同的数据流 您想要将不同的 IPSec 安全应用于不同类型的流量 例如, 创建一个加密映射并分配一个标识两个子网之间流量的 ACL, 然后分配一个 IKEv1 转换集或 IKEv2 提议 创建另一个使用不同 ACL 标识另外两个子网之间流量的加密映射, 并应用包含不同 VPN 参数的转换集或提议 如果要为某个接口创建多个加密映射, 请为每个映射条目指定一个确定其在加密映射集内优先级的序号 (seq-num) 每个 ACE 包含一个 permit 或 deny 语句 下表解释应用于加密映射的 ACL 中 permit 和 deny ACE 的特殊含义 1-14

21 第 1 章 IPsec 和 ISAKMP 配置 IPsec 加密映射评估结果匹配 ACE 中包含 permit 语句的条件 匹配 ACE 中包含 deny 语句的条件 无法匹配加密映射集中所有受测试的 permit ACE 解决方案 停止按照加密映射集中剩余的 ACE 对数据包进行进一步分析, 而按照分配给该加密映射的 IKEv1 转换集或 IKEv2 提议中的数据包设置评估数据包安全设置 将这些安全设置与转换集或提议中的设置进行匹配之后,ASA 将应用关联的 IPsec 设置 通常对于出站流量, 这意味着对数据包进行解密 身份验证和路由 中断按照正在评估的加密映射中剩余的 ACE 对数据包进行进一步分析, 而按照下一个加密映射 ( 具体由分配给它的下一个序号决定 ) 中的 ACE 继续进行评估 路由数据包, 而不对其进行加密 包含 deny 语句的 ACE 过滤掉不需要 IPSec 保护的出站流量 ( 例如, 路由协议流量 ) 因此, 请插入初始 deny 语句来过滤不应该按照加密 ACL 中的 permit 语句进行评估的出站流量 对于入站加密数据包, 安全设备使用源地址和 ESP SPI 确定解密参数 安全设备解密数据包后, 会将解密的数据包的内部报头与和数据包 SA 关联的 ACL 中的 permit ACE 进行比较 如果内部报头无法与代理匹配, 安全设备将丢弃该数据包 如果内部报头与代理匹配, 安全设备则会路由该数据包 在比较未加密入站数据包的内部报头时, 安全设备将忽略所有拒绝规则, 因为它们会阻止阶段 2 SA 的建立 备注要将未加密的入站流量作为明文路由, 请在 permit ACE 之前插入 deny ACE LAN 到 LAN 加密映射示例 以下 LAN 到 LAN 网络示例中配置安全设备 A B 和 C 的目的是允许通过隧道传送来自其中一个主机并且以其余主机中另一个主机作为目标的所有流量 但是, 因为主机 A.3 的流量包含来自人力资源部门的敏感数据, 所以这些流量要求采用强加密并比其他流量更频繁地重新生成密钥 因此, 您需要为来自主机 A.3 的流量分配一个专用转换集 1-15

22 配置 IPsec 第 1 章 IPsec 和 ISAKMP A.1 B.1 C.1 A.2 B.2 C.2 A.3 Human Resources B.3 C.3 A B C Internet 上图中显示的和以下说明中使用的简单地址表示为假想地址 说明后面使用的是带有真实 IP 地址的示例 要为出站流量配置安全设备 A, 您要创建两个加密映射, 一个用于来自主机 A.3 的流量, 另一个用于来自网络 A 中其他主机的流量, 如以下示例所示 : Crypto Map Seq_No_1 deny packets from A.3 to B deny packets from A.3 to C permit packets from A to B permit packets from A to C Crypto Map Seq_No_2 permit packets from A.3 to B permit packets from A.3 to C 创建 ACL 之后, 您要为每个加密映射分配一个转换集, 向每个匹配的数据包应用所要求的 IPsec 级联 ACL 涉及插入 deny ACE 以绕过按照某个 ACL 进行的评估, 而按照加密映射集中的后续 ACL 继续进行评估 由于您可以将每个加密映射与不同的 IPsec 设置关联, 因此您可以使用 deny ACE 将特定流量从相应加密映射中的进一步评估中排除, 并且将特定流量与另一个加密映射中的 permit 语句匹配以提供或要求提供不同的安全保护 分配给加密 ACL 的序号确定其在加密映射集内评估序列中的位置 1-16

23 第 1 章 IPsec 和 ISAKMP 配置 IPsec 下图显示从本示例中的概念性 ACE 创建的级联 ACL 每个符号的含义定义如下 : 加密映射集中的加密映射 ( 直线上的缺口 ) 当数据包与 ACE 匹配时退出加密映射 符合一个 ACE 描述的数据包 各种尺寸的球表示与图中各个 ACE 匹配的不同数据包, 尺寸的区别只代表每个数据包的源和目标的差异 重定向至加密映射集中的下一个加密映射 当数据包与 ACE 匹配或无法匹配加密映射集中的所有 permit ACE 时, 做出响应 1-17

24 配置 IPsec 第 1 章 IPsec 和 ISAKMP 图 1-1 加密映射集中的级联 ACL Crypto Map 1 Deny A.3 B Deny A.3 C Permit A B Permit A C Apply IPSec assigned to Crypto Map 1 Crypto Map 2 Permit A.3 B Permit A.3 C Apply IPSec assigned to Crypto Map 2 Route as clear text 安全设备 A 评估源自主机 A.3 的数据包, 直到与某个 permit ACE 匹配, 然后尝试分配与加密映射关联的 IPSec 安全 但凡数据包与某个 deny ACE 匹配,ASA 将忽略加密映射中剩余的 ACE, 而按照下一个加密映射 ( 具体由分配给它的序号决定 ) 继续进行评估 因此在本示例中, 如果安全设备 A 收到来自主机 A.3 的数据包, 它会将数据包与第一个加密映射中的 deny ACE 匹配, 然后按照下一个加密映射继续评估数据包 当它将数据包与该加密映射中的 permit ACE 匹配时, 它会应用关联的 IPSec 安全 ( 强加密和频繁地重新生成密钥 ) 为了完成示例网络中的 ASA 配置, 我们将镜像加密映射分配到 ASA B 和 C 但是, 因为 ASA 在评估加密的入站流量时会忽略 deny ACE, 所以我们可以忽略 deny A.3 B 和 deny A.3 C ACE 的等效镜像, 并且因而忽略加密映射 2 的等效镜像 因此, 没有必要在 ASA B 和 C 上配置级联 ACL 1-18

25 第 1 章 IPsec 和 ISAKMP 配置 IPsec 下表显示分配给为所有三个 ASA(A B 和 C) 配置的加密映射的 ACL: 安全设备 A 安全设备 B 安全设备 C 加密映射序列不需要 ACE 模式 加密映射序列不需要 ACE 模式 加密映射序列不需要 ACE 模式 1 deny A.3 B 1 permit B A 1 permit C A deny A.3 C permit A B permit A C permit B C permit C B 2 permit A.3 B permit A.3 C 下图将此前显示的概念性地址映射至真实 IP 地址 A B C A B C A Human Resources B C A /26 B /29 C /27 Internet

26 配置 IPsec 第 1 章 IPsec 和 ISAKMP 下表中显示的真实 ACE 可确保此网络内接受评估的所有 IPsec 数据包都获得正确的 IPsec 设置 安全设备 加密映射序列不需要 ACE 模式 真实 ACE A 1 deny A.3 B deny deny A.3 C deny permit A B permit permit A C permit permit A.3 B permit permit A.3 C permit B 不需要 permit B A permit permit B C permit C 不需要 permit C A permit permit C B permit 您可以应用示例网络中所示的推理, 通过使用级联 ACL 将不同安全设置分配给受 ASA 保护的不同主机或子网 备注 默认情况下,ASA 不支持目标与其所进入的接口相同的 IPsec 流量 这种类型流量的名称包括 U-turn hub-and-spoke 和 hairpinning 但是, 您可以插入允许流量往返网络的 ACE, 从而将 IPsec 配置为支持 U-turn 流量 例如, 要在安全设备 B 上支持 U-turn 流量, 请将概念性 permit B B ACE 添加到 ACL1 中 实际 ACE 如下所示 : permit 设置公钥基础设施 (PKI) 密钥 您必须设置公钥基础设施 (PKI), 管理员才可以在生成或归零密钥对时选择 Suite B ECDSA 算法 : 准备工作 如果将加密映射配置为使用 RSA 或 ECDSA 信任点进行身份验证, 您首先必须生成密钥集 然后您可以创建信任点并在隧道组配置中引用它 步骤 1 在生成密钥对时选择 Suite B ECDSA 算法 : crypto key generate [rsa [general-keys label <name> modules [ ] noconfirm usage-keys] ecdsa [label <name> elliptic-curve [ ] noconfirm]] 步骤 2 在归零密钥对时选择 Suite B ECDSA 算法 : crypto key zeroize [rsa ecdsa] [default label <name> noconfirm] 1-20

27 第 1 章 IPsec 和 ISAKMP 配置 IPsec 配置加密核心池 可以在对称多处理 (SMP) 平台上更改加密核心的分配, 以提高 AnyConnect TLS/DTLS 流量的吞吐量性能 这些更改可以加速 SSL VPN 数据路径, 并在 AnyConnect 智能隧道和端口转发方面提供客户可见的性能提升 要配置加密核心池, 请执行以下步骤 准备工作 加密核心再平衡适用于以下平台 : 5585-X 5545-X/5555-X ASASM 步骤 1 配置加密核心池, 指定以下三个互斥选项之一 : balanced - 平均分配加密硬件资源 (Admin/SSL 和 IPsec 核心 ) ipsec - 将加密硬件资源优先分配给 IPsec( 包括 SRTP 加密语音流量 ) ssl - 将加密硬件资源优先分配给 Admin/SSL hostname(config)# crypto engine? configure mode commands/options: accelerator-bias Specify how to allocate crypto accelerator processors hostname(config)# crypto engine accelerator-bias? configure mode commands/options balanced - Equally distribute crypto hardware resources ipsec - Allocate crypto hardware resources to favor IPsec/Encrypted Voice (SRTP) ssl - Allocate crypto hardware resources to favor SSL hostname(config)# crypto engine accelerator-bias ssl 将加密映射应用于接口 您必须为 IPSec 流量经过的每个接口分配加密映射集 ASA 在所有接口上都支持 IPsec, 向接口分配加密映射集将命令 ASA 按照该加密映射集评估所有流量并在连接或 SA 协商期间使用指定的策略 将加密映射分配给接口还将初始化运行时的数据结构, 例如 SA 数据库和安全策略数据库 将修改过的加密映射重新分配给该接口会将运行时的数据结构与加密映射配置重新同步 此外, 通过使用新序号添加新的对等体和重新分配加密映射不会中断现有连接 使用接口 ACL 默认情况下,ASA 允许 IPSec 数据包绕过接口 ACL 如果要将接口 ACL 应用于 IPsec 流量, 请使用 no 形式的 sysopt connection permit-vpn 命令 与传出接口绑定的加密映射 ACL 将允许或拒绝 IPSec 数据包通过 VPN 隧道 IPsec 对从 IPSec 隧道到达的数据包进行身份验证和解密, 并使其按照与隧道关联的 ACL 接受评估 1-21

28 配置 IPsec 第 1 章 IPsec 和 ISAKMP ACL 定义要保护的 IP 流量 例如, 您可以创建 ACL 以保护两个子网或两台主机之间的所有 IP 流量 ( 这些 ACL 类似于用于 access-group 命令的 ACL 但是, 用于 access-group 命令时,ACL 确定在接口上转发或阻止哪些流量 ) 在分配给加密映射之前,ACL 不特定于 IPsec 每个加密映射都引用 ACL, 如果某数据包与其中一个 ACL 中的 permit 匹配, 则加密映射还确定应用于此数据包的 IPSec 属性 分配给 IPsec 加密映射的 ACL 有四个主要功能 : 选择 IPsec 将保护的出站流量 ( 允许 = 保护 ) 为在没有建立 SA 的情况下进行的数据传送触发 ISAKMP 协商 处理入站流量, 以便过滤出并丢弃原本应受 IPsec 保护的流量 在处理来自对等体的 IKE 协商时, 确定是否接受对于 IPSec SA 的请求 ( 协商仅适用于 ipsec-isakmp crypto map 条目 ) 对等体必须允许与 ipsec-isakmp crypto map 命令条目关联的数据流, 才能确保在协商期间被接受 备注 如果删除 ACL 中的唯一元素,ASA 也将删除关联的加密映射 如果修改一个或多个加密映射当前引用的 ACL, 请使用 crypto map interface 命令重新初始化运行时 SA 数据库 有关详细信息, 请参阅 crypto map 命令 对于您在本地对等体上定义的静态加密映射的每个指定加密 ACL, 我们建议您在远程对等体上定义一个 镜像 加密 ACL 加密映射还应支持共同的转换并将其他系统称为对等体 这将确保两个对等体正确处理 IPsec 备注 每个静态加密映射必须定义一个 ACL 和一个 IPSec 对等体 如果任何一个缺失, 加密映射都不完整并且 ASA 将丢弃尚未与之前的完整加密映射匹配的任何流量 使用 show conf 命令确保每个加密映射都是完整的 要修复某个不完整的加密映射, 请删除该加密映射, 添加缺少的条目, 然后重新应用它 我们建议不要使用 any 关键字在加密 ACL 中指定源或目标地址, 因为会造成一些问题 我们强烈建议不要使用 permit any any 命令语句, 因为它会执行以下操作 : 保护所有出站流量, 包括发送到相应的加密映射中指定对等体的所有受保护流量 要求保护所有入站流量 在这种情况下,ASA 将自动丢弃缺少 IPSec 保护的所有入站数据包 请务必定义要保护哪些数据包 如果将 any 关键字用于 permit 语句, 请在其前面加上一系列 deny 语句来过滤掉您不想要保护的流量, 否则其将进入 permit 语句 备注 配置了 no sysopt connection permit-vpn 时, 尽管在外部接口上有访问组 ( 调用 deny ip any any 访问列表 ), 仍会允许来自客户端的解密直通流量 如果用户想要使用 no sysopt permit 命令结合外部接口上的访问控制列表 (ACL) 来控制通过站点到站点或远程访问 VPN 对受保护网络进行的访问, 则无法成功进行控制 在这种情况下, 启用管理访问内部接口时, 不应用 ACL, 用户仍然可以使用 SSH 连接到安全设备 流向内部网络上的主机的流量将被 ACL 正确地阻拦, 但是无法阻止流向内部接口的解密直通流量 ssh 和 http 命令具有比 ACL 更高的优先级 换句话说, 要拒绝从 VPN 会话流向设备的 SSH Telnet 或 ICMP 流量, 应使用 ssh telnet 和 icmp 命令, 这些命令将拒绝应该添加的本地 IP 池 1-22

29 第 1 章 IPsec 和 ISAKMP 配置 IPsec 不管流量是入站流量还是出站流量,ASA 都将按照分配给接口的 ACL 评估流量 按照以下步骤将 IPsec 分配到接口上 : 步骤 1 创建用于 Ipsec 的 ACL 步骤 2 将列表映射到一个或多个使用同一个加密映射名称的加密映射 步骤 3 将 IKEv1 转换集或 IKEv2 提议映射到加密映射, 从而向数据流应用 IPsec 步骤 4 通过将加密映射共用的加密映射名称分配到接口, 以加密映射集的形式应用全部加密映射 示例 在本示例中, 数据退出 ASA A 上的外部接口, 流向主机 时,IPsec 保护将应用于主机 和主机 之间的流量 IPSec peers Host outside Security Appliance Firewall A Internet outside Security Appliance Firewall B Host IPSec Access List at "outside" interface: access-list 101 permit ip host host IPSec Access List at "outside" interface: access-list 111 permit ip host host Traffic exchanged between hosts and is protected between Security Appliance Firewall A "outside" and Security Appliance Firewall B "outside" ASA A 评估从主机 到主机 的流量, 如下所示 : 源 = 主机 目标 = 主机 ASA A 也评估从主机 到主机 的流量, 如下所示 : 源 = 主机 目标 = 主机 与接受评估的数据包匹配的第一条 permit 语句确定 IPsec SA 的范围 更改 IPsec SA 寿命 协商新的 IPsec SA 时, 您可以更改 ASA 使用的全局寿命值 您可以为特定加密映射覆盖这些全局寿命值 IPSec SA 使用派生的共享密钥 密钥是 SA 的组成部分 ; 密钥一起超时就要求刷新密钥 每个 SA 都有两个寿命 : 计时寿命和流量寿命 SA 将在各个寿命之后到期, 然后对等体将开始协商新的 SA 默认寿命是 28,800 秒 ( 八小时 ) 和 4,608,000 千字节 ( 一个小时内每秒钟 10 兆字节 ) 如果您更改全局寿命,ASA 将丢弃隧道, 它将在随后建立 SA 的协商中使用新值 1-23

30 配置 IPsec 第 1 章 IPsec 和 ISAKMP 如果加密映射没有配置寿命值并且 ASA 请求使用新的 SA, 它会将现有 SA 中使用的全局寿命值插入到发送至对等体的请求中 当对等体收到协商请求时, 它会使用对等体提议的寿命值和本地配置的寿命值这二者中较小的值作为新 SA 的寿命 对等体将在超出现有 SA 的寿命阈值之前协商一个新 SA, 确保在现有 SA 过期时已经准备好新 SA 当现有 SA 剩余寿命只有大约 5% 至 15% 时, 对等体将协商一个新的 SA 创建静态加密映射 要使用静态加密映射创建基本 IPSec 配置, 请执行以下步骤 : 步骤 1 要创建 ACL 以定义要保护的流量, 请输入以下命令 : access-list access-list-name {deny permit} ip source source-netmask destination destination-netmask 例如 : hostname(config)# access-list 101 permit ip 其中 access-list-name 指定 ACL ID, 即一个最长为 241 个字符的字符串或整数 destination-netmask 和 source-netmask 指定 IPv4 网络地址和子网掩码 在本例中,permit 关键字将使匹配指定条件的所有流量受加密保护 步骤 2 要配置定义如何保护流量的 IKEv1 转换集, 请输入以下命令 : crypto ipsec ikev1 transform-set transform-set-name encryption [authentication] Encryption 指定使用哪个加密方法保护 IPsec 数据流 : esp-aes 使用带 128 位密钥的 AES esp-aes-192 使用带 192 位密钥的 AES esp-aes-256 使用带 256 位密钥的 AES \ esp-des 使用 56 位 DES-CBC esp-3des 使用三重 DES 算法 esp-null 不加密 Authentication 指定使用哪个加密方法保护 IPsec 数据流 esp-md5-hmac 使用 MD5/HMAC-128 作为散列算法 esp-sha-hmac 使用 SHA/HMAC-160 作为散列算法 esp-none 不进行 HMAC 身份验证 例如 : hostname(config)# crypto ipsec ikev1 transform-set myset1 esp-des esp-sha-hmac hostname(config)# crypto ipsec ikev1 transform-set myset2 esp-3des esp-sha-hmac hostname(config)# crypto ipsec ikev1 transform-set aes_set esp-md5-hmac esp-aes-256 在本示例中,myset1 和 myset2 以及 aes_set 是转换集的名称 要配置同样定义如何保护流量的 IKEv2 提议, 请输入 crypto ipsec ikev2 ipsec-proposal 命令来创建提议, 并进入 ipsec 提议配置模式, 您可以在此模式下为提议指定多个加密和完整性类型 : crypto ipsec ikev2 ipsec-proposal [proposal tag] 1-24

31 第 1 章 IPsec 和 ISAKMP 配置 IPsec Proposal tag 是 IKEv2 IPsec 提议的名称, 即一个 1 至 64 个字符的字符串 例如 : hostname(config)# crypto ipsec ikev2 ipsec-proposal secure 在本例中,secure 是提议的名称 输入协议和加密类型 : hostname(config-ipsec-proposal)# protocol esp encryption 3des aes des 相反, 以下命令将选择使用哪个 AES-GCM 或 AES-GMAC 算法 : hostname(config-ipsec-proposal)# [no] protocol esp encryption [3des aes aes-192 aes-256 aes-gcm aes-gcm-192 aes-gcm-256 aes-gmac aes-gmac-192 aes-gmac-256 des null] 如果选择 SHA-2 或 null, 则必须选择使用哪个算法作为 IPsec 完整性算法 如果将 AES-GCM/GMAC 配置为加密算法, 则必须选择 null 完整性算法 : hostname(config-ipsec-proposal)# [no] protocol esp integrity [md5 sha-1 sha-256 sha-384 sha-512 null] 注意 如果已将 AES-GCM/GMAC 配置为加密算法, 则必须选择 null 完整性算法 : 可以将 SHA-256 用于完整性和 PRF 以建立 IKEv2 隧道, 但是也可以将其用于 ESP 完整性保护 步骤 3 ( 可选 ) 管理员可以启用路径最大传输单元 (PMTU) 老化并设置将 PMTU 值重置为其原始值的时间间隔 hostname(config-ipsec-proposal)# [no] crypto ipsec security-association pmtu-aging <reset-interval> 步骤 4 要创建加密映射, 请使用单情景或多情景模式执行以下站点到站点步骤 : a. 将 ACL 分配到加密映射 : crypto map map-name seq-num match address access-list-name 加密映射集是一系列加密映射条目, 每个条目使用不同的序号 (seq-num), 但使用相同的映射名称 使用 access-list-name 指定 ACL ID, 即长度最多为 241 个字符的字符串或整数 在以下示例中,mymap 是加密映射集的名称 此映射集序号为 10, 此序号用于排列一个加密映射集内多个条目的优先级 序号越小, 优先级就越高 crypto map mymap 10 match address 101 在本示例中, 名称为 101 的 ACL 将分配给加密映射 mymap b. 指定可以向其转发受 IPSec 保护的流量的对等体 : crypto map map-name seq-num set peer ip-address 例如 : crypto map mymap 10 set peer ASA 设置 SA, 其中对等体分配的 IP 地址为 重复此命令指定多个对等体 c. 指定此加密映射允许哪些 IKEv1 转换集或 IKEv2 提议 按照优先级顺序列出多个转换集或提议 ( 优先级高的优先 ) 您可以使用以下两个命令之一, 在加密映射中最多指定 11 个转换集或提议 : crypto map map-name seq-num set ikev1 transform-set transform-set-name1 [transform-set-name2, transform-set-name11] 1-25

32 配置 IPsec 第 1 章 IPsec 和 ISAKMP crypto map map-name seq-num set ikev2 ipsec-proposal proposal-name1 [proposal-name2, proposal-name11] Proposal-name1 和 proposal-name11 指定用于 IKEv2 的一个或多个 IPsec 提议名称 每个加密映射条目支持最多 11 个提议 例如 ( 对于 IKEv1): crypto map mymap 10 set ikev1 transform-set myset1 myset2 在本示例中, 流量与 ACL 101 匹配时,SA 可以使用 myset1( 第一优先级 ) 或 myset2( 第二优先级 ), 具体取决于哪个转换集与对等体的转换集匹配 d. ( 可选 ) 如果想要覆盖全局寿命, 请为加密映射指定 SA 寿命 crypto map map-name seq-num set security-association lifetime {seconds seconds kilobytes kilobytes} Map-name 指定加密映射集的名称 Seq-num 指定您分配给加密映射条目的序号 例如 : crypto map mymap 10 set security-association lifetime seconds 2700 此示例将加密映射 mymap 10 的计时寿命缩短至 2700 秒 (45 分钟 ) 基于流量的寿命未更改 e. ( 可选 ) 指定在为此加密映射请求新的 SA 时 IPsec 要求完全向前保密, 或在从对等体接收的请求中要求 PFS: crypto map map-name seq-num set pfs [group1 group2 group5] 例如 : crypto map mymap 10 set pfs group2 此示例要求在为加密映射 mymap 10 协商新 SA 时提供 PFS ASA 在新 SA 中使用 1024 位 Diffie-Hellman 素数模数群 步骤 5 将加密映射集应用于评估 IPSec 流量的接口 : crypto map map-name interface interface-name Map-name 指定加密映射集的名称 Interface-name 指定要在其上启用或禁用 ISAKMP IKEv1 协商的接口的名称 例如 : crypto map mymap interface outside 在本示例中,ASA 按照加密映射 mymap 评估通过外部接口的流量, 确定其是否需要保护 创建动态加密映射 动态加密映射是未配置任何参数的加密映射 该映射可作为一个策略模板, 其中缺失的参数将在以后根据 IPsec 协商的结果动态获取, 以匹配对等体要求 如果尚未在静态加密映射中确定对等体的 IP 地址,ASA 将应用动态加密映射以便对等体协商隧道 这种情况发生于以下类型的对等体中 : 具有动态分配的公用 IP 地址的对等体 LAN 到 LAN 和远程访问对等体都可以使用 DHCP 获取公用 IP 地址 ASA 只使用此地址启动隧道 1-26

33 第 1 章 IPsec 和 ISAKMP 配置 IPsec 具有动态分配的专用 IP 地址的对等体 请求远程访问隧道的对等体通常具有由头端分配的专用 IP 地址 通常,LAN 到 LAN 隧道具有预定的专用网络集, 用于配置静态映射, 进而用于建立 IPsec SA 作为配置静态加密映射的管理员, 您可能不知道动态分配的 IP 地址 ( 通过 DHCP 或其他方法 ), 而且您可能不知道其他客户端的专用 IP 地址 ( 无论它们如何分配 ) VPN 客户端通常没有静态 IP 地址 ; 这些客户端需要动态加密映射来支持 IPsec 协商 例如, 头端在 IKE 协商期间向思科 VPN 客户端分配 IP 地址, 然后客户端使用该 IP 地址来协商 IPSec SA 备注 动态加密映射只需要 transform-set 参数 动态加密映射可以简化 IPSec 配置, 我们建议在并非总是能够预先确定对等体的网络中使用动态加密映射 对于思科 VPN 客户端 ( 例如移动用户 ) 和获取动态分配的 IP 地址的路由器, 请使用动态加密映射 提示 在动态加密映射中将 any 关键字用于 permit 条目时, 请小心 如果此 permit 条目包含的流量可能包含组播或广播流量, 请将适用于相应地址范围的 deny 条目插入 ACL 中 记住为网络和子网广播流量以及 IPsec 不应保护的任何其他流量插入 deny 条目 动态加密映射只适用于和发起连接的远程对等体协商 SA ASA 不能使用动态加密映射向远程对等体发起连接 使用动态加密映射时, 如果出站流量匹配 ACL 中的 permit 条目并且对应的 SA 尚不存在, 则 ASA 将丢弃该流量 加密映射集可以包括动态加密映射 动态加密映射集应是加密映射集中优先级最低的加密映射 ( 即它们应该具有最高序列号 ), 以便 ASA 先评估其他加密映射 只有在其他 ( 静态 ) 映射条目不匹配时, 它才会检查动态加密映射集 与静态加密映射集类似, 动态加密映射集也包括具有相同动态映射名称的所有动态加密映射 动态序号将区分动态加密映射集中的动态加密映射 如果您配置动态加密映射, 请插入 permit ACL, 为加密 ACL 标识 IPSec 对等体的数据流 否则,ASA 将接受对等体提议的所有数据流标识 注意 对于要通过隧道传送到使用动态加密映射集配置的 ASA 接口的流量, 请勿对其分配模块默认路由 要标识应通过隧道传送的流量, 请将 ACL 添加到动态加密映射 配置与远程访问隧道关联的 ACL 时, 请小心标识合适的地址池 仅在隧道启用后使用反向路由注入安装路由 使用单情景或多情景模式创建一个动态映射条目 您可以在一个加密映射集中同时包含静态和动态映射条目 步骤 1 ( 可选 ) 将 ACL 分配给动态加密映射 : crypto dynamic-map dynamic-map-name dynamic-seq-num match address access-list-name 这将确定应保护和不应保护哪些流量 Dynamic-map-name 指定引用已有动态加密映射的加密映射条目的名称 Dynamic-seq-num 指定与动态加密映射条目对应的序号 例如 : crypto dynamic-map dyn1 10 match address 101 在本示例中,ACL 101 已分配给动态加密映射 dyn1 映射序号为

34 配置 IPsec 第 1 章 IPsec 和 ISAKMP 步骤 2 指定此动态加密映射允许哪些 IKEv1 转换集或 IKEv2 提议 使用该命令为 IKEv1 转换集或 IKEv2 提议按照优先级顺序列出多个转换集或提议 ( 优先级高的优先 ): crypto dynamic-map dynamic-map-name dynamic-seq-num set ikev1 transform-set transform-set-name1, [transform-set-name2, transform-set-name9] crypto dynamic-map dynamic-map-name dynamic-seq-num set ikev2 ipsec-proposal proposal-name1 [proposal-name2, proposal-name11] Dynamic-map-name 指定引用已有动态加密映射的加密映射条目的名称 Dynamic-seq-num 指定与动态加密映射条目对应的序号 transform-set-name 是当前创建或修改的转换集的名称 proposal-name 为 IKEv2 指定一个或多个 IPsec 提议的名称 例如 ( 对于 IKEv1): crypto dynamic-map dyn 10 set ikev1 transform-set myset1 myset2 在本示例中, 当流量匹配 ACL 101 时,SA 可以使用 myset1( 第一优先级 ) 或 myset2( 第二优先级 ), 具体取决于哪个转换集与对等体的转换集匹配 步骤 3 ( 可选 ) 如果您想要覆盖全局寿命值, 请指定动态加密映射条目的 SA 寿命 : crypto dynamic-map dynamic-map-name dynamic-seq-num set security-association lifetime {seconds seconds kilobytes kilobytes} Dynamic-map-name 指定引用已有动态加密映射的加密映射条目的名称 Dynamic-seq-num 指定与动态加密映射条目对应的序号 例如 : crypto dynamic-map dyn1 10 set security-association lifetime seconds 2700 步骤 4 此示例将动态加密映射 dyn1 10 的计时寿命缩短至 2700 秒 (45 分钟 ) 基于时间的寿命未更改 ( 可选 ) 指定在为此动态加密映射请求新的 SA 时 IPsec 要求 PFS, 或应该在从对等体接收的请求中要求 PFS: crypto dynamic-map dynamic-map-name dynamic-seq-num set pfs [group1 group2 group5 group7] Dynamic-map-name 指定引用已有动态加密映射的加密映射条目的名称 Dynamic-seq-num 指定与动态加密映射条目对应的序号 例如 : crypto dynamic-map dyn1 10 set pfs group5 步骤 5 将动态加密映射集添加到静态加密映射集中 请确保将引用动态映射的加密映射设置为加密映射集中优先级最低的条目 ( 序号最高 ) crypto map map-name seq-num ipsec-isakmp dynamic dynamic-map-name Map-name 指定加密映射集的名称 Dynamic-map-name 指定引用已有动态加密映射的加密映射条目的名称 例如 : crypto map mymap 200 ipsec-isakmp dynamic dyn1 1-28

35 第 1 章 IPsec 和 ISAKMP 管理 IPsec VPN 提供站点到站点冗余 您可以使用加密映射定义多个 IKEv1 对等体, 以提供冗余 此配置对于站点到站点 VPN 非常有用 IKEv2 不支持此功能 如果一个对等体失败,ASA 将与下一个和加密映射关联的对等体建立隧道 它会将数据发送到已与其协商成功的对等体, 并且该对等体将成为活动对等体 活动对等体是 ASA 始终首先尝试后续协商的对等体, 直到协商失败 此时 ASA 将继续与下一个对等体协商 当与加密映射关联的所有对等体都失败时,ASA 将循环返回第一个对等体 管理 IPsec VPN 查看 IPsec 配置 表 1-1 列出了一些命令, 您可以在单情景或多情景模式下输入这些命令, 用于查看有关 IPSec 配置的信息 表 1-1 用于查看 IPSec 配置信息的命令 命令 show running-configuration crypto show running-config crypto ipsec show running-config crypto isakmp show running-config crypto map show running-config crypto dynamic-map show all crypto map show crypto ikev2 sa detail show crypto ipsec sa show ipsec stats 目的 显示整个加密配置, 包括 IPsec 加密映射 动态加密映射和 ISAKMP 显示完整的 IPsec 配置 显示完整的 ISAKMP 配置 显示完整的加密映射配置 显示动态加密映射配置 显示所有配置参数, 包括使用默认值的那些配置参数 在加密统计信息中显示 Suite B 算法支持 在单情景或多情景模式下显示 Suite B 算法支持和 ESPv3 IPsec 输出 在单情景或多情景模式下显示有关 IPsec 子系统的信息 TFC 数据包以及收到的有效和无效 ICMP 错误中都会显示 ESPv3 统计信息 等待活动会话终止再重新启动 您可以安排 ASA 仅当所有活动会话都已自行终止后, 才重新启动 此功能默认为已禁用 要启用等待所有活动会话自行终止后 ASA 再重新启动的功能, 请在单情景或多情景模式下执行以下站点到站点任务 : crypto isakmp reload-wait 例如 : hostname(config)# crypto isakmp reload-wait 1-29

36 管理 IPsec VPN 第 1 章 IPsec 和 ISAKMP 使用 reload 命令重新启动 ASA 如果设置了 reload-wait 命令, 则可以使用 reload quick 命令覆盖 reload-wait 设置 reload 和 reload-wait 命令适用于特权 EXEC 模式, 这两个命令都不包含 isakmp 前缀 断开连接前向对等体发出警报 远程访问或 LAN 到 LAN 会话可能出于某些原因丢失, 例如 :ASA 关闭或重新启动 会话空闲超时 超过最长连接时间或管理员切断 ASA 可向合格对等体 ( 在 LAN 到 LAN 配置中 ) 思科 VPN 客户端和 VPN 3002 硬件客户端通知会话即将断开 收到此警报的对等体或客户端会对该原因进行解码, 并将其显示在事件日志或弹出窗格中 此功能默认为已禁用 合格客户端和对等体包括以下项 : 已启用警报的安全设备 运行 4.0 或更高版本软件的思科 VPN 客户端 ( 无需进行配置 ) 运行 4.0 或更高版本软件, 并且已启用警报的 VPN 3002 硬件客户端 运行 4.0 或更高版本软件, 并且已启用警报的 VPN 3000 系列集中器要启用用于 IPSec 对等体的断开通知, 请在单情景或多情景模式下输入 crypto isakmp disconnect-notify 命令 例如 : hostname(config)# crypto isakmp disconnect-notify 清除安全关联 有一些配置更改只有在随后的 SA 的协商过程中才生效 如果要让新的设置立即生效, 请清除现有 SA 以使用已更改的配置重新建立它们 如果 ASA 正在处理 IPSec 流量, 请只清除配置更改所影响的那部分 SA 数据库 对于大规模更改, 或 ASA 正在处理少量 IPSec 流量时, 请推迟执行清除整个 SA 数据库的时间 表 1-2 列出了可以在单情景或多情景模式下输入用以清除和重新初始化 IPsec SA 的命令 表 1-2 清除和重新初始化 IPSec SA 的命令 命令 clear configure crypto clear configure crypto ca trustpoint clear configure crypto dynamic-map clear configure crypto map clear configure crypto isakmp clear configure crypto isakmp policy clear crypto isakmp sa 目的 删除整个加密配置, 包括 IPsec 加密映射 动态加密映射和 ISAKMP 删除所有信任点 删除所有动态加密映射 包括用于删除特定动态加密映射的关键字 删除所有加密映射 包括用于删除特定加密映射的关键字 删除整个 ISAKMP 配置 删除所有 ISAKMP 策略或特定策略 删除整个 ISAKMP SA 数据库 1-30

37 第 1 章 IPsec 和 ISAKMP 支持 Nokia VPN 客户端 清除加密映射配置 clear configure crypto 命令包括可用于删除加密配置的元素的参数, 这些配置包括 IPsec 加密映射 动态加密映射 CA 信任点 所有证书 证书映射配置和 ISAKMP 请注意, 如果输入不带参数的 clear configure crypto 命令, 则将删除整个加密配置, 包括所有证书 有关详细信息, 请参阅 思科 ASA 系列命令参考 中的 clear configure crypto 命令 支持 Nokia VPN 客户端 ASA 使用身份验证加密密钥的质询 / 响应 (CRACK) 协议支持来自 Nokia 92xx Communicator 系列手机上 Nokia VPN 客户端的连接 对于使用旧版身份验证技术而不是数字证书的支持 IPsec 的移动客户端,CRACK 是理想之选 当客户端使用 RADIUS 等基于旧版的密钥身份验证技术并且网关使用公钥身份验证时, 它可以提供相互身份验证 必须具备 Nokia 后端服务才能同时支持 Nokia 客户端和 CRACK 协议 此要求包括如下所示的 Nokia 安全服务管理器 (NSSM) 和 Nokia 数据库 有关在 Nokia 客户端上支持 CRACK 协议所需的 Nokia 服务以及确保正确安装和配置这些服务的详细信息, 请联系当地 Nokia 代表 Remote Access DMZ Internet Operator mobile network Firewall/ VPN gateway Nokia SSM Web server SSM server and database SSM enrollment gateway SSM management station RADIUS or LDAP server Windows Clients/ Laptop Policy Mobile Devices/ Mobile Devices Policy Telecommuters SAP database Corporate Corporate Web services

38 支持 Nokia VPN 客户端 第 1 章 IPsec 和 ISAKMP 步骤 1 在全局配置模式下使用 crypto isakmp policy priority authentication 命令和 crack 关键字启用 CRACK 身份验证 例如 : hostname(config)# crypto isakmp policy 2 hostname(config-isakmp-policy)# authentication crack 步骤 2 如果使用数字证书进行客户端身份验证, 请执行以下附加步骤 : a. 配置信任点并删除对完全限定域名的要求 信任点可能是 NSSM 或其他 CA 在本示例中, 信任点命名为 CompanyVPNCA: hostname(config)# crypto ca trustpoint CompanyVPNCA hostname(config-ca-trustpoint)# fqdn none b. 要配置 ISAKMP 对等体的标识, 请执行以下步骤之一 : 使用 crypto isakmp identity 命令和 hostname 关键字 例如 : hostname(config)# crypto isakmp identity hostname 使用 crypto isakmp identity 命令和 auto 关键字将标识配置为根据连接类型自动确定 例如 : hostname(config)# crypto isakmp identity auto 注意 如果使用 crypto isakmp identity auto 命令, 必须确保客户端证书中的 DN 属性顺序为 CN OU O C St L 1-32

39 第 2 章 L2TP over IPsec 本章介绍如何在 ASA 上配置 L2TP over IPsec/IKEv1 本章包含以下主题: 关于 L2TP over IPsec/IKEv1 VPN( 第 2-1 页 ) L2TP over IPsec 的许可要求 ( 第 2-2 页 ) 规定和限制 ( 第 2-4 页 ) 使用 CLI 配置 L2TP over IPsec( 第 2-5 页 ) L2TP over IPsec 功能历史记录 ( 第 2-9 页 ) 关于 L2TP over IPsec/IKEv1 VPN 第 2 层隧道协议 (L2TP) 是允许远程客户端使用公共 IP 网络安全地与企业专用网络服务器通信的 VPN 隧道协议 L2TP 使用 PPP over UDP( 端口 1701) 来通过隧道传送数据 L2TP 协议基于客户端 / 服务器模式 此功能在 L2TP 网络服务器 (LNS) 和 L2TP 访问集中器 (LAC) 之间分配 LNS 通常在路由器等网络网关上运行, 而 LAC 可以是拨号网络接入服务器 (NAS) 或有一个捆绑的 L2TP 客户端的终端设备 ( 如 Microsoft Windows Apple iphone 或 Android) 在远程访问场景中, 使用 IPsec/IKEv1 配置 L2TP 的主要优势在于远程用户可以通过公共 IP 网络访问 VPN, 而无需使用网关或专线, 实际上就可以利用 POTS 从任何位置实现远程访问 另一个优势是无需思科 VPN 客户端软件等任何其他客户端软件 备注 L2TP over IPsec TP 仅支持 IKEv1, 不支持 IKEv2 使用 IPsec/IKEv1 的 L2TP 配置支持使用预共享密钥或 RSA 签名方法的证书, 也支持使用动态 ( 相对于静态 ) 加密映射 此任务摘要假设已经完成 IKEv1 以及预共享密钥或 RSA 签名配置 有关配置预共享密钥 RSA 和动态加密映射的步骤, 请参阅一般操作配置指南中第 41 章 数字证书 备注 在 ASA 上, 使用 IPsec 的 L2TP 允许 LNS 与 Windows Mac OS X Android 和思科 IOS 等操作系统中集成的本地 VPN 客户端进行互操作 ASA 上仅支持使用 IPsec 的 L2TP, 不支持单独使用本地 L2TP Windows 客户端支持的最小 IPsec 安全关联寿命是 300 秒 如果 ASA 上的寿命设置低于 300 秒, Windows 客户端会忽略此设置并将其替换为 300 秒的寿命 2-1

40 L2TP over IPsec 的许可要求 第 2 章 L2TP over IPsec IPsec 传输和隧道模式 默认情况下,ASA 使用 IPsec 隧道模式 - 整个原始 IP 数据报都将加密并且将成为新 IP 数据包的负载 此模式允许路由器等网络设备用作 IPsec 代理 也就是说, 路由器代表主机执行加密 源路由器加密数据包并将其沿 IPsec 隧道转发 目标路由器解密原始 IP 数据报并将其转发到目标系统 隧道模式的主要优势是不需要修改终端系统即可获得 IPsec 的优势 隧道模式还可以防止流量分析 ; 利用隧道模式, 攻击者只能确定隧道终端, 而无法确定通过隧道传送的数据包的真正源和目标, 即使其与隧道终点一样也无法确定 但是,Windows L2TP/IPsec 客户端使用 IPsec 传输模式 - 只加密 IP 负载, 而原始 IP 报头保留原封不动 此模式的优势是每个数据包只需增加几个字节并且允许公共网络上的设备查看数据包的最终源和目标 下图说明了 IPsec 隧道和传输模式之间的差异 图 2-1 隧道和传输模式下的 IPsec IP HDR Data Tunnel mode Encrypted New IP HDR IPSec HDR IP HDR Data IP HDR Data Transport mode IP HDR IPSec HDR Data Encrypted 要使 Windows L2TP 和 IPsec 客户端连接到 ASA, 必须使用 crypto ipsec transform-set trans_name mode transport 命令为转换集配置 IPsec 传输模式 此命令用于配置程序 通过此传输功能, 可以根据 IP 报头中的信息在中间网络上启用特殊处理 ( 例如 QoS) 然而, 第 4 层报头将被加密, 这就限制了对数据包的检查 遗憾的是, 如果 IP 报头以明文传输, 传输模式就会允许攻击者执行某些流量分析 L2TP over IPsec 的许可要求 备注 此功能不适用于无负载加密型号 使用 IKEv2 的 IPsec 远程访问 VPN 需要 AnyConnect Plus 或 Apex 许可证, 可单独购买 购买 AnyConnect 许可证时, 请参阅以下最大值 使用 IKEv1 的 IPsec 远程访问 VPN 和使用 IKEv1 或 IKEv2 的 IPsec 站点到站点 VPN 使用基本许可证随附的其他 VPN 许可证 所有类型的最大组合 VPN 会话数量不能超过此表中所示的最大会话数 2-2

41 第 2 章 L2TP over IPsec 配置 L2TP over IPsec 的必备条件 建模许可证要求 ASA 5506-X 使用 IKEv2 的 IPsec 远程访问 VPN:50 个会话 5506H-X 5506W-X 使用 IKEv1 的 IPsec 远程访问 VPN 和使用 IKEv1 或 IKEv2 的 IPsec 站点到站点 VPN: ASA 5508-X ASA 5512-X ASA 5515-X ASA 5516-X ASA 5525-X ASA 5545-X ASA 5555-X ASA 5585-X, 带 SSP-10 ASA 5585-X, 带 SSP-20 SSP-40 和 SSP-60 ASASM ASAv5 ASAv10 ASAv30 基本许可证 :10 个会话 增强型安全许可证 :50 个会话 100 个会话 250 个会话 250 个会话 300 个会话 750 个会话 2500 个会话 5000 个会话 5000 个会话 10,000 个会话 10,000 个会话 250 个会话 250 个会话 750 个会话 配置 L2TP over IPsec 的必备条件 配置 L2TP over IPsec 有以下必备条件 : 组策略 - 您可以为 L2TP/IPSec 连接配置默认组策略 (DfltGrpPolicy) 或用户定义的组策略 不论是哪种情况, 必须将组策略配置为使用 L2TP/IPsec 隧道协议 如果没有为用户定义的组策略配置 L2TP/IPsec 隧道协议, 请为 L2TP/IPsec 隧道协议配置 DfltGrpPolicy 并允许用户定义的组策略继承此属性 连接配置文件 - 如果您执行的是 预共享密钥 身份验证, 您需要配置默认连接配置文件 ( 隧道组 )DefaultRAGroup 如果执行的是基于证书的身份验证, 您可以使用用户定义的连接配置文件, 可以根据证书标识符选择该配置文件 需要在对等体之间建立 IP 连接 要测试连接 请尝试从您的终端 ping ASA 的 IP 地址并尝试从 ASA ping 您的终端的 IP 地址 确保连接路径上的任何位置都未阻止 UDP 端口 1701 如果 Windows 7 终端设备使用指定 SHA 签名类型的证书进行身份验证, 签名类型必须与 ASA 的签名类型 ( 即 SHA1 或 SHA2) 匹配 2-3

42 规定和限制 第 2 章 L2TP over IPsec 规定和限制 本节包括此功能的规定和限制 情景模式规定 在单情景模式中受支持, 不支持多情景模式 防火墙模式规定 仅在路由防火墙模式中受支持, 不支持透明模式 故障切换规定 状态故障切换不支持 L2TP over IPsec 会话 IPv6 规定 对于 L2TP over IPsec, 没有本机 IPv6 隧道设置支持 身份验证规定 ASA 在本地数据库上只支持 PPP 身份验证 PAP 和 Microsoft CHAP 版本 1 和 2 EAP 和 CHAP 由代理身份验证服务器执行 因此, 如果远程用户属于用 authentication eap-proxy 或 authentication chap 命令配置的隧道组, 而 ASA 被配置为使用本地数据库, 则该用户将无法连接 支持的 PPP 身份验证类型 在 ASA 上,L2TP over IPsec 连接只支持 PPP 身份验证类型, 如下所示 : 表 2-1 AAA 服务器支持和 PPP 身份验证类型 AAA 服务器类型本地 RADIUS TACACS+ LDAP NT Kerberos SDI 支持的 PPP 身份验证类型 PAP MSCHAPv1 MSCHAPv2 PAP CHAP MSCHAPv1 MSCHAPv2 EAP-Proxy PAP CHAP MSCHAPv1 PAP PAP PAP SDI 表 2-1 PPP 身份验证类型特征 关键字 身份验证类型 特征 chap CHAP4 客户端响应服务器质询, 返回使用明文用户名的加密 ( 质询以及密码 ) 此协议比 PAP 更安全, 但不加密数据 eap-proxy EAP 启用 EAP, 它允许安全设备代理面向外部 RADIUS 身份验证服务器的 PPP 身份验证过程 2-4

43 第 2 章 L2TP over IPsec 使用 CLI 配置 L2TP over IPsec 表 2-1 PPP 身份验证类型特征 关键字身份验证类型特征 ms-chap-v1 ms-chap-v2 Microsoft CHAP 版本 1 Microsoft CHAP 版本 2 与 CHAP 类似, 但更安全, 因为服务器仅存储和比较加密密码, 而不是像 CHAP 中那样存储和比较明文密码 此协议还通过 MPPE 生成用于数据加密的密钥 pap PAP 在身份验证期间传递明文用户名和密码, 因此并不安全 使用 CLI 配置 L2TP over IPsec 您必须配置 IKEv1 (ISAKMP) 策略设置来允许本地 VPN 客户端使用 L2TP over IPsec 协议与 ASA 进行 VPN 连接 IKEv1 阶段 1 - 使用 SHA1 散列方法的 3DES 加密 IPSec 阶段 2 - 使用 MD5 或 SHA 散列方法的 3DES 或 AES 加密 PPP 身份验证 - PAP MS-CHAPv1 或 MSCHAPv2( 首选 ) 预共享密钥 ( 仅适用于 iphone) 步骤 1 步骤 2 步骤 3 步骤 4 步骤 5 使用特定 ESP 加密类型和身份验证类型创建转换集 crypto ipsec ike_version transform-set transform_name ESP_Encryption_Type ESP_Authentication_Type crypto ipsec ikev1 transform-set my-transform-set-ikev1 esp-des esp-sha-hmac 指示 IPsec 使用传输模式而不是隧道模式 crypto ipsec ike_version transform-set trans_name mode transport crypto ipsec ikev1 transform-set my-transform-set-ikev1 mode transport 将 L2TP/IPsec 指定为 vpn 隧道协议 vpn-tunnel-protocol tunneling_protocol hostname(config)# group-policy DfltGrpPolicy attributes hostname(config-group-policy)# vpn-tunnel-protocol l2tp-ipsec ( 可选 ) 指示自适应安全设备向组策略客户端发送 DNS 服务器 IP 地址 dns value [none IP_primary [IP_secondary] hostname(config)# group-policy DfltGrpPolicy attributes hostname(config-group-policy)# dns value ( 可选 ) 指示自适应安全设备向组策略客户端发送 WINS 服务器 IP 地址 wins-server value [none IP_primary [IP_secondary]] hostname(config)# group-policy DfltGrpPolicy attributes hostname (config-group-policy)# wins-server value

44 使用 CLI 配置 L2TP over IPsec 第 2 章 L2TP over IPsec 步骤 6 步骤 7 ( 可选 ) 创建 IP 地址池 ip local pool pool_name starting_address-ending_address mask subnet_mask hostname(config)# ip local pool sales_addresses mask ( 可选 ) 将 IP 地址池与连接配置文件 ( 隧道组 ) 关联 address-pool pool_name hostname(config)# tunnel-group DefaultRAGroup general-attributes hostname(config-tunnel-general)# address-pool sales_addresses 步骤 8 创建连接配置文件 ( 隧道组 ) tunnel-group name type remote-access 步骤 9 步骤 10 步骤 11 步骤 12 步骤 13 hostname(config)# tunnel-group sales-tunnel type remote-access 将组策略的名称与连接配置文件 ( 隧道组 ) 关联 default-group-policy name hostname(config)# tunnel-group DefaultRAGroup general-attributes hostname(config-tunnel-general)# default-group-policy DfltGrpPolicy 为连接配置文件 ( 隧道组 ) 指定对尝试 L2TP over IPsec 连接的用户进行身份验证的方法 如果目前不是使用 ASA 执行本地身份验证而您想要回退到本地身份验证, 请在命令末尾添加 LOCAL authentication-server-group server_group [local] hostname(config)# tunnel-group DefaultRAGroup general-attributes hostname(config-tunnel-general)# authentication-server-group sales_server LOCAL 为连接配置文件 ( 隧道组 ) 指定对尝试 L2TP over IPsec 连接的用户进行身份验证的方法 如果目前不是使用 ASA 执行本地身份验证而您想要回退到本地身份验证, 请在命令末尾添加 LOCAL authentication auth_type hostname(config)# tunnel-group name ppp-attributes hostname(config-ppp)# authentication ms-chap-v1 为您的连接配置文件 ( 隧道组 ) 设置预共享密钥 tunnel-group tunnel group name ipsec-attributes hostname(config)# tunnel-group DefaultRAGroup ipsec-attributes hostname(config-tunnel-ipsec)# ikev1 pre-shared-key cisco123 ( 可选 ) 为连接配置文件 ( 隧道组 ) 生成 L2TP 会话的 AAA 记帐开始和停止记录 accounting-server-group aaa_server_group hostname(config)# tunnel-group sales_tunnel general-attributes hostname(config-tunnel-general)# accounting-server-group sales_aaa_server 步骤 14 配置 hello 消息之间的间隔 ( 单位 : 秒 ) 范围是 10 到 300 秒 默认间隔为 60 秒 l2tp tunnel hello seconds hostname(config)# l2tp tunnel hello

45 第 2 章 L2TP over IPsec 使用 CLI 配置 L2TP over IPsec 步骤 15 步骤 16 步骤 17 步骤 18 ( 可选 ) 启用 NAT 遍历, 从而使 ESP 数据包可以通过一个或多个 NAT 设备 如果您预计 NAT 设备后面会有多个 L2TP 客户端尝试与自适应安全设备进行 L2TP over IPsec 连接, 则必须启用 NAT 遍历 要在全局启用 NAT 遍历, 请检查并确保在全局配置模式下启用 ISAKMP( 可以使用 crypto isakmp enable 命令启用 ), 然后使用 crypto isakmp nat-traversal 命令 crypto isakmp nat-traversal seconds hostname(config)# crypto isakmp enable hostname(config)# crypto isakmp nat-traversal 1500 ( 可选 ) 配置隧道组切换 隧道组切换的目的是在用户使用代理身份验证服务器进行身份验证时为用户提供更好的建立 VPN 连接的机会 隧道组与连接配置文件同义 strip-group strip-realm hostname(config)# tunnel-group DefaultRAGroup general-attributes hostname(config-tunnel-general)# strip-group hostname(config-tunnel-general)# strip-realm 此示例显示使用用户名 jdoe 和密码 j!doe1 创建用户 mschap 选项指定在您输入密码后, 会将密码转换为 Unicode, 并使用 MD4 进行散列处理 只有在使用本地用户数据库时才需要使用此步骤 username name password password mschap asa2(config)# username jdoe password j!doe1 mschap crypto isakmp policy 命令创建阶段 1 的 IKE 策略并为其分配一个编号 您可以为 IKE 策略配置几种不同的可配置参数 您还可以为该策略指定一个 Diffie-Hellman 群 需要 isakamp 策略才能让 ASA 完成 IKE 协商 有关 Windows 7 本地 VPN 客户端的配置示例, 请参阅创建响应 Windows 7 提议的 IKE 策略 ( 第 2-7 页 ) crypto ikev1 policy priority group Diffie-Hellman Group hostname(config)# crypto ikev1 policy 5 hostname(config-ikev1-policy)# group 5 创建响应 Windows 7 提议的 IKE 策略 Windows 7 L2TP/IPsec 客户端发送多个 IKE 策略提议来与 ASA 建立 VPN 连接 请定义以下任意一个 IKE 策略, 以便从 Windows 7 VPN 本地客户端建立连接 请按照为 ASA 配置 L2TP over IPsec 的程序进行操作 如要为 Windows 7 本地 VPN 客户端配置 IKE 策略, 需在本任务中增加其他步骤 2-7

46 使用 CLI 配置 L2TP over IPsec 第 2 章 L2TP over IPsec 步骤 1 步骤 2 步骤 3 显示属性和所有现有 IKE 策略的数量 show run crypto ikev1 hostname(config)# show run crypto ikev1 配置 IKE 策略 number 参数指定您配置的 IKE 策略的编号 此编号已列于 show run crypto ikev1 命令的输出中 crypto ikev1 policy number hostname(config)# crypto ikev1 policy number hostname(config-ikev1-policy)# 设置 ASA 用于为每个 IPSec 对等体使用预共享密钥确定身份的身份验证方法 authentication hostname(config-ikev1-policy)# authentication pre-share 步骤 4 选择保护两个 IPSec 对等体之间传输的数据的对称加密方法 对于 Windows 7, 请选择 3des aes; 对于 128 位 AES, 也可选择 aes-256 encryption type hostname(config-ikev1-policy)# encryption {3des aes aes-256} 步骤 5 选择确保数据完整性的散列算法 对于 Windows 7, 请为 SHA-1 算法指定 sha hash 步骤 6 hostname(config-ikev1-policy)# hash sha 选择 Diffie-Hellman 群标识符 您可以为 aes aes-256 或 3des 加密类型指定 5 只能为 3des 加密类型指定 2 group hostname(config-ikev1-policy)# group 5 步骤 7 指定 SA 寿命 ( 以秒为单位 ) 对于 Windows 7, 请指定 秒 ( 即 24 小时 ) lifetime hostname(config-ikev1-policy)# lifetime L2TP over IPsec 的配置示例 以下示例显示了确保 ASA 与任意操作系统上的本地 VPN 客户端兼容的配置文件命令 ip local pool sales_addresses group-policy sales_policy internal group-policy sales_policy attributes wins-server value dns-server value vpn-tunnel-protocol l2tp-ipsec 2-8

47 第 2 章 L2TP over IPsec L2TP over IPsec 功能历史记录 tunnel-group DefaultRAGroup general-attributes default-group-policy sales_policy address-pool sales_addresses tunnel-group DefaultRAGroup ipsec-attributes pre-shared-key * tunnel-group DefaultRAGroup ppp-attributes no authentication pap authentication chap authentication ms-chap-v1 authentication ms-chap-v2 crypto ipsec ikev1 transform-set my-transform-set-ikev1 esp-des esp-sha-hmac crypto ipsec ikev1 transform-set my-transform-set-ikev1 mode transport crypto dynamic-map dyno 10 set ikev1 transform-set trans crypto map vpn 20 ipsec-isakmp dynamic dyno crypto map vpn interface outside crypto ikev1 enable outside crypto ikev1 policy 10 authentication pre-share encryption 3des hash sha group 2 lifetime L2TP over IPsec 功能历史记录 功能名称 版本 功能信息 L2TP over IPsec 7.2(1) L2TP over IPsec 在单一平台上提供部署和管理 L2TP VPN 解决方案以及 IPsec VPN 和防火墙服务的功能 在远程访问场景中, 配置 L2TP over IPsec 的主要优势在于远程用户可以通过公共 IP 网络访问 VPN, 而无需使用网关或专线, 实际上就可以利用 POTS 从任何位置实现远程访问 另一个优势是 VPN 访问的唯一客户端要求是使用带 Microsoft 拨号网络 (DUN) 的 Windows 不需要思科 VPN 客户端软件等任何其他客户端软件 引入或修改了以下命令 :authentication eap-proxy authentication ms-chap-v1 authentication ms-chap-v2 authentication pap l2tp tunnel hello vpn-tunnel-protocol l2tp-ipsec 2-9

48 L2TP over IPsec 功能历史记录 第 2 章 L2TP over IPsec 2-10

49 第 3 章 常规 VPN 参数 虚拟专用网络的 ASA 实施包含不能简单归类的有用功能 本章将介绍其中一些功能 其中包括以下各节 : 配置 IPsec 以绕过 ACL( 第 3-1 页 ) 允许接口内流量 (Hairpinning)( 第 3-2 页 ) 设置最大活动 IPsec 或 SSL VPN 会话数 ( 第 3-3 页 ) 使用客户端更新确保可接受的 IPsec 客户端修订级别 ( 第 3-3 页 ) 对公共 IP 连接实施 NAT 分配的 IP( 第 3-5 页 ) 配置负载均衡 ( 第 3-10 页 ) 配置 VPN 会话限制 ( 第 3-14 页 ) 配置加密核心池 ( 第 3-16 页 ) 关于 ISE 策略实施 ( 第 3-19 页 ) 配置高级 SSL 设置 ( 第 3-22 页 ) 配置 IPsec 以绕过 ACL 如要在不检查源和目标接口的 ACL 的情况下允许来自 IPsec 隧道的所有数据包, 请在全局配置模式下输入 sysopt connection permit-vpn 命令 如果使用位于 ASA 之后单独的 VPN 集中器并且想要最大限度提高 ASA 性能, 则可能需要绕过用于 IPsec 流量的接口 ACL 通常, 需要使用 access-list 命令创建允许 IPsec 数据包的 ACL, 并将其应用于源接口 使用 ACL 可以指定想要允许其通过 ASA 的确切流量 以下示例在不检查 ACL 的情况下允许 IPsec 流量通过 ASA: hostname(config)# sysopt connection permit-vpn 备注 配置了 no sysopt connection permit-vpn 时, 尽管在外部接口上有访问组 ( 调用 deny ip any any ACL), 仍会允许来自客户端的解密直通流量 如果尝试使用 no sysopt permit-vpn 命令结合外部接口上的访问控制列表 (ACL) 来控制通过站点到站点或远程访问 VPN 对受保护网络进行的访问, 则无法成功进行控制 在这种情况下, 启用管理访问内部接口时, 不应用 ACL, 用户仍然可以使用 SSH 连接到 ASA 流向内部网络中主机的流量会被 ACL 正确地阻止, 但流向内部接口的解密直通流量不会被阻止 3-1

50 允许接口内流量 (Hairpinning) 第 3 章 常规 VPN 参数 ssh 和 http 命令具有比 ACL 更高的优先级 如要拒绝从 VPN 会话流向设备的 SSH Telnet 或 ICMP 流量, 应使用 ssh telnet 和 icmp 命令 允许接口内流量 (Hairpinning) ASA 提供一项功能, 允许受 IPsec 保护的流量出入同一个接口, 从而使得 VPN 客户端可以向其他 VPN 用户发送这些流量 该功能也称为 hairpinning, 可以将其视为通过 VPN 集线器 (ASA) 连接的 VPN 轮辐 ( 客户端 ) Hairpinning 还可以将传入 VPN 流量通过与未加密流量相同的接口重新向外传出去 例如, 对于没有分割隧道但需要同时访问 VPN 和浏览 Web 的 VPN 客户端来说, 此功能非常有用 下图显示了 VPN 客户端 1 发送安全 IPsec 流量至 VPN 客户端 2, 同时还将未加密流量发送至公共 Web 服务器 图 3-1 使用 Hairpinning 的接口内功能的 VPN 客户端 Public web server Security appliance Client VPN laptop Client VPN laptop 1 Unencrypted traffic Ipsec/SSL encrypted traffic 如要配置此功能, 请在全局配置模式下使用 same-security-traffic 命令及其 intra-interface 参数 该命令的语法为 same-security-traffic permit {inter-interface intra-interface} 以下示例显示如何启用接口内流量 : hostname(config)# same-security-traffic permit intra-interface hostname(config)# 备注 如果使用 same-security-traffic 命令和 inter-interface 参数, 则可允许安全级别相同的接口之间进行通信 该功能不是特定于 IPsec 连接的功能 有关详细信息, 请参阅本指南的 配置接口参数 一章 如要使用 Hairpinning, 必须按照接口内流量的 NAT 注意事项中所述, 对 ASA 接口应用适当的 NAT 规则 3-2

51 第 3 章 常规 VPN 参数 设置最大活动 IPsec 或 SSL VPN 会话数 接口内流量的 NAT 注意事项 要使 ASA 能够将未加密的流量通过接口回送, 必须为该接口启用 NAT, 以便用公共可路由地址替换专用 IP 地址 ( 除非已在本地 IP 地址池中使用公共 IP 地址 ) 以下示例对来自客户端 IP 池的流量应用接口 PAT 规则 : hostname(config)# ip local pool clientpool hostname(config)# object network vpn_nat hostname(config-network-object)# subnet hostname(config-network-object)# nat (outside,outside) interface 然而, 当 ASA 将加密 VPN 流量通过此相同接口回送时,NAT 是可选的 无论是否使用 NAT, VPN 到 VPN Hairpinning 均可正常工作 要对所有传出流量应用 NAT, 请仅实施以上命令 要使 VPN 到 VPN 流量豁免 NAT, 请添加为 VPN 到 VPN 流量实施 NAT 豁免的命令 ( 添加到以上示例命令中 ), 例如 : hostname(config)# nat (outside,outside) source static vpn_nat vpn_nat destination static vpn_nat vpn_nat 有关 NAT 规则的详细信息, 请参阅本指南的 应用 NAT 一章 设置最大活动 IPsec 或 SSL VPN 会话数 如要将 VPN 会话数限制为低于 ASA 允许的值, 请在全局配置模式下输入 vpn-sessiondb 命令 : vpn-sessiondb {max-anyconnect-premium-or-essentials-limit <number> max-other-vpn-limit <number>} max-anyconnect-premium-or-essentials-limit 关键字指定 AnyConnect 会话的最大数量, 取值范围为 1 至许可证允许的最大会话数 max-other-vpn-limit 关键字指定除 AnyConnect 客户端会话之外的其他 VPN 会话的最大数量, 取值范围为 1 至许可证允许的最大会话数 这包括思科 VPN 客户端 (IPsec IKEv1) LAN 到 LAN VPN 和无客户端 SSL VPN 会话 该限制会影响计算得出的 VPN 负载均衡的负载百分比 以下示例显示如何设置值为 450 的最大 Anyconnect VPN 会话数限制 : hostname(config)# vpn-sessiondb max-anyconnect-premium-or-essentials-limit 450 hostname(config)# 使用客户端更新确保可接受的 IPsec 客户端修订级别 备注 本节中的信息仅适用于 IPsec 连接 客户端更新功能使得处于中央位置的管理员能够自动通知 VPN 客户端用户, 是时候更新 VPN 客户端软件和 VPN 3002 硬件客户端映像 远程用户可能正在使用已过时的 VPN 软件或硬件客户端版本 您可以随时使用 client-update 命令来启用更新客户端修订版本的功能 ; 指定更新适用的客户端类型和修订版本号 ; 提供可以从中获得更新的 URL 或 IP 地址 ; 对于 Windows 客户端, 可以选择性地通知用户应更新其 VPN 客户端版本 对于 Windows 客户端, 您可以为用户提供一种完成该更新的机制 对于 VPN 3002 硬件客户端用户, 将在没有通知的情况下自动进行更新 该命令仅适用于 IPsec 远程访问隧道组类型 3-3

52 使用客户端更新确保可接受的 IPsec 客户端修订级别 第 3 章 常规 VPN 参数 如要执行客户端更新, 请在常规配置模式或 tunnel-group ipsec-attributes 配置模式下输入 client-update 命令 如果客户端已经在运行修订号列表中包含的软件版本, 则无需更新其软件 如果客户端未运行列表中包含的软件版本, 则应进行更新 以下程序说明如何执行客户端更新 : 步骤 1 在全局配置模式下, 输入此命令以启用客户端更新 : hostname(config)# client-update enable hostname(config)# 步骤 2 在全局配置模式下, 指定要对所有特定类型客户端应用的客户端更新参数 也就是说, 指定客户端类型 可从中获取更新映像的 URL 或 IP 地址, 以及该客户端的可接受的修订版本号 最多可以指定四个修订版本号, 以逗号分隔 如果用户的客户端修订版本号与某个指定的修订版本号匹配, 则不需要更新客户端 该命令为整个 ASA 中所有指定类型的客户端指定客户端更新值 请使用此语法 : hostname(config)# client-update type type url url-string rev-nums rev-numbers hostname(config)# 可用的客户端类型为 win9x( 包括 Windows 95 Windows 98 和 Windows ME 平台 ) winnt( 包括 Windows NT 4.0 Windows 2000 和 Windows XP 平台 ) windows( 包括所有基于 Windows 的平台 ), 以及 vpn3002(vpn 3002 硬件客户端 ) 如果客户端已经在运行修订号列表中包含的软件版本, 则无需更新其软件 如果客户端未运行列表中包含的软件版本, 则应进行更新 最多可以指定这些客户端更新条目中的三个条目 关键字 windows 涵盖了所有允许的 Windows 平台 如果指定了 windows, 则不要指定单个 Windows 客户端类型 备注对于所有的 Windows 客户端, 必须使用协议 或 作为 URL 的前缀 而对于 VPN 3002 硬件客户端, 则必须指定协议 tftp:// 以下示例为远程访问隧道组配置客户端更新参数 该示例指定了修订版本号 以及用于检索更新的 URL hostname(config)# client-update type windows url rev-nums hostname(config)# 或者, 也可以只为单个隧道组配置客户端更新, 而不是为特定类型的所有客户端配置更新 ( 请参阅步骤 3 ) VPN 3002 客户端更新无需用户干预, 并且用户不会收到通知消息 以下示例仅适用于 VPN 3002 硬件客户端 该命令在 tunnel-group ipsec-attributes 配置模式下输入, 为 IPsec 远程访问隧道组 salesgrp 配置客户端更新参数 此示例指定修订版本号 4.7, 并使用 TFTP 协议从 IP 地址为 的站点检索更新的软件 : hostname(config)# tunnel-group salesgrp type ipsec-ra hostname(config)# tunnel-group salesgrp ipsec-attributes hostname(config-tunnel-ipsec)# client-update type vpn3002 url tftp: rev-nums 4.7 hostname(config-tunnel-ipsec)# 备注在 URL 末尾包含应用的名称可以让浏览器自动启动该应用 ; 例如 : 3-4

53 第 3 章 常规 VPN 参数 对公共 IP 连接实施 NAT 分配的 IP 步骤 3 步骤 4 为特定的 ipsec-ra 隧道组定义一组客户端更新参数 在 tunnel-group ipsec-attributes 模式下, 指定隧道组名称及其类型 可从中获取更新映像的 URL 或 IP 地址, 以及修订版本号 如果用户的客户端修订版本号与某个指定的修订版本号匹配, 则不需要更新客户端 例如, 对于 Windows 客户端, 请输入此命令 : hostname(config)# tunnel-group remotegrp type ipsec-ra hostname(config)# tunnel-group remotegrp ipsec-attributes hostname(config-tunnel-ipsec)# client-update type windows url rev-nums hostname(config-tunnel-ipsec)# ( 可选 ) 向具有过时 Windows 客户端的活动用户发送通知, 说明其客户端需要更新 对于这些用户, 系统将显示一个弹出窗口, 让他们可以启动浏览器, 并从您在 URL 中指定的站点下载经新的软件 此消息中唯一可配置的部分是 URL ( 请参阅步骤 2 或 3 ) 非活动用户将在下次登录时收到通知消息 您可以向所有隧道组上的所有活动客户端发送此通知, 也可以将其发送到特定隧道组上的客户端 例如, 要通知所有隧道组上的所有活动客户端, 则在特权 EXEC 模式下输入以下命令 : hostname# client-update all hostname# 如果用户的客户端修订版本号与某个指定的修订版本号匹配, 则不需要更新客户端, 并且不会向该用户发送通知消息 VPN 3002 客户端更新无需用户干预, 并且用户不会收到通知消息 备注 如果将客户端更新类型指定为 windows( 指定所有基于 Windows 的平台 ), 而之后又想对相同实体输入客户端更新类型 win9x 或 winnt, 则必须先使用此命令的 no 形式删除客户端类型 windows, 然后使用新的客户端更新命令来指定新的客户端类型 对公共 IP 连接实施 NAT 分配的 IP 在极少数情况下, 可能需要在内部网络中使用 VPN 对等体的真实 IP 地址而非分配的本地 IP 地址 通常在使用 VPN 的情况下, 会给对等体分配一个本地 IP 地址来访问内部网络 但是, 在有些情况下, 例如当内部服务器和网络安全基于对等体的真实 IP 地址时, 可能就需要将本地 IP 地址重新转换为对等体的真实公共地址 思科 ASA 55xx 引入了一种方法, 可以将 VPN 客户端在内部 / 受保护网络中分配的 IP 地址转换为其公共 ( 源 )IP 地址 该功能支持以下场景 : 内部网络中的目标服务器 / 服务和网络安全策略要求使用 VPN 客户端的公共 / 源 IP 而非其在内部企业网络中分配的 IP 进行通信 可以为每个隧道组在一个接口上启用此功能 当 VPN 会话建立或断开连接时, 将动态添加和删除对象 NAT 规则 限制 因为路由问题, 除非您知道您需要此功能, 否则我们不建议使用此功能 仅支持旧版 (IKEv1) 和 AnyConnect 客户端 流向公共 IP 地址的返回流量必须路由回 ASA, 以便应用 NAT 策略和 VPN 策略 仅支持 IPv4 的已分配地址和公共地址 不支持 NAT/PAT 设备之后的多个对等体 不支持负载均衡 ( 因为路由问题 ) 不支持漫游 3-5

54 了解负载均衡 第 3 章 常规 VPN 参数 步骤 1 在全局配置模式下, 输入 tunnel general 步骤 2 使用此语法来启用地址转换 : hostname(config-tunnel-general)# nat-assigned-to-public-ip interface 此命令动态安装将已分配 IP 地址转换为源的公共 IP 地址的 NAT 策略 interface 用于确定要应用 NAT 的接口 步骤 3 使用此语法来禁用地址转换 : hostname(config-tunnel-general)# no nat-assigned-to-public-ip 显示 VPN NAT 策略 地址转换使用基础对象 NAT 机制 ; 因此,VPN NAT 策略会如同手动配置的对象 NAT 策略一样显示 此示例将 用作分配的 IP, 将 用作对等体的公共 IP: hostname# show nat Auto NAT Policies (Section 2) 1 (outside) to (inside) source static _vpn_nat_ translate_hits = 315, untranslate_hits = 315 prompt# show nat detail Auto NAT Policies (Section 2) 1 (outside) to (inside) source static _vpn_nat_ translate_hits = 315, untranslate_hits = 315 Source - Origin: /32, Translated: /32 Outside 是 AnyConnect 客户端连接至的接口, 而 inside 是特定于新隧道组的接口 备注因为 VPN NAT 策略是动态的且不会添加到配置中, 所以在 show run 对象和 show run nat 报告中, VPN NAT 对象和 NAT 策略会隐藏 了解负载均衡 如果您的远程访问配置中使用同一个网络中连接的两台或更多 ASA 或者 VPN 集中器, 则可以将这些设备配置为共担会话负载 此功能称为负载均衡 如要实施负载均衡, 请将同一个专用 LAN 到 LAN 网络 专用子网和公共子网中的两台或更多设备逻辑分组为虚拟集群 虚拟集群中的所有设备都可以承载会话负载 负载均衡可以将会话流量定向至集群中负载最低的设备, 在所有设备之间分配负载 这样可以高效地利用系统资源, 提供更高的性能和高可用性 虚拟集群中的一台设备 ( 虚拟集群主用设备 ) 会将传入流量定向至其他设备 ( 称为备用设备 ) 虚拟集群主用设备会监控集群中的所有设备 跟踪其忙碌程度, 然后相应地分配会话负载 虚拟集群主用设备这一角色没有与某台物理设备绑定 ; 它可以在设备之间切换 例如, 如果当前的虚拟集群主用设备发生故障, 该集群中的一台备用设备会接管该角色, 立即成为新的虚拟集群主用设备 3-6

55 第 3 章 常规 VPN 参数 了解负载均衡 对于外部客户端, 虚拟集群显示为单一虚拟集群 IP 地址 此 IP 地址不与特定物理设备绑定 此地址属于当前的虚拟集群主用设备, 这使其成为虚拟地址 尝试建立连接的 VPN 客户端会先与此虚拟集群 IP 地址连接 随后, 虚拟集群主用设备会将集群中负载最低的可用主机的公共 IP 地址发送回客户端 在第二个事务 ( 对用户透明 ) 中, 客户端会直接连接至该主机 这样, 虚拟集群主用设备就能在资源之间均匀 高效地定向流量 备注 思科 VPN 客户端或思科 3002 硬件客户端之外的所有客户端应如常直接连接至 ASA; 它们不使用虚拟集群 IP 地址 如果集群中的一台设备发生故障, 终止的会话可以立即重新连接到虚拟集群 IP 地址 随后, 虚拟集群主用设备会将这些连接定向至集群中的其他活动设备 如果虚拟集群主用设备自身发生故障, 集群中的一台备用设备会作为新的虚拟会话主用设备立即自动接管 即便集群中的多台设备发生故障, 只要集群中任一台设备仍然正常运行并可供使用, 用户就可以继续与该集群连接 比较负载均衡与故障切换 负载均衡与故障切换都是高可用性功能, 但其工作方式不同, 并且具有不同的要求 在某些情况下, 可以同时使用负载均衡和故障切换 以下几节介绍这些功能之间的差异 负载均衡负载均衡是在虚拟集群中的设备之间合理分配远程访问 VPN 流量的机制 它基于简单的流量分配, 而不考虑吞吐量或其他因素 负载均衡集群由两台或更多的设备组成, 一台设备是虚拟主用设备, 其他设备为备用设备 这些设备不需要是完全相同的类型, 也不需要具有相同的软件版本和配置 虚拟集群中的所有活动设备都可以承载会话负载 负载均衡可以将流量定向至集群中负载最低的设备, 在所有设备之间分配负载 这样可以高效地利用系统资源, 提供更高的性能和高可用性 故障切换故障切换配置需要两台一致的 ASA, 并且它们通过专用故障切换链路和状态故障切换链路 ( 后者可选 ) 相互连接 主用接口和设备的运行状况会受到监控, 以便确定满足特定故障切换条件的时刻 如果这些条件得到满足, 则会进行故障切换 故障切换同时支持 VPN 和防火墙配置 ASA 支持两种故障切换配置 : 主用 / 主用故障切换和主用 / 备用故障切换 使用主用 / 主用故障切换时, 两台设备都可以传送网络流量 这不是真正的负载均衡, 尽管看似具有相同的效果 发生故障切换时, 剩下的那台主用设备会根据配置的参数接管合并流量的传送 因此, 配置主用 / 主用故障切换时, 必须确保两台设备的合并流量在每台设备的容量之内 使用主用 / 备用故障切换时, 只有一台设备会传送流量, 而另一台设备会在备用状态下等待, 不会传送流量 主用 / 备用故障切换允许使用第二台 ASA 来接管故障设备的功能 主用设备发生故障时会变为备用状态, 而备用设备会变为主用状态 变为主用状态的设备会采用故障设备的 IP 地址 ( 或者透明防火墙配置中的管理 IP 地址 ) 和 MAC 地址, 并开始传送流量 此时处于备用状态的设备会接管该主用设备的备用 IP 地址 如果主用设备发生故障, 则由备用设备接管, 而且不会给客户端 VPN 隧道带来任何干扰 3-7

56 了解负载均衡 第 3 章 常规 VPN 参数 关于负载均衡 启用负载均衡包括以下操作 : 建立集群的公用虚拟集群 IP 地址 UDP 端口 ( 如需要 ) 和 IPsec 共享密钥, 从而配置负载均衡集群 可以为集群中的每台设备相同地配置这些值 在设备上启用负载均衡并定义设备特定属性, 从而配置加入的设备 这些值因设备而异 备注 VPN 负载均衡需要有效的 3DES/AES 许可证 ASA 会在启用负载均衡前检查是否存在此加密许可证 如果没有检测到有效的 3DES 或 AES 许可证,ASA 会阻止启用负载均衡, 也会阻止负载均衡系统进行 3DES 的内部配置, 除非许可证允许此使用 必备条件 默认情况下会禁用负载均衡 必须显式启用负载均衡 必须先配置公共 ( 外部 ) 和专用 ( 内部 ) 接口, 并事先配置虚拟集群 IP 地址所引用的接口 可以使用 interface 和 nameif 命令为这些接口配置不同的名称 本节中的后续引用使用名称 outside 和 inside 加入集群的所有设备必须共用相同的集群特定值 :IP 地址 加密设置 加密密钥和端口 符合条件的平台 负载均衡集群可以包含 ASA 型号 ASA 5512-X( 使用增强型安全许可证 ) 以及 5515-X 型号和更高型号 还可以在集群中包含思科 VPN 3000 系列集中器 虽然混合配置是可行的, 但如果集群是同构的, 管理通常更为简单 符合条件的客户端负载均衡仅对使用以下客户端发起的远程会话有效 : Cisco AnyConnect VPN 客户端 (2.0 版本及更高版本 ) 思科 VPN 客户端 (3.0 版本及更高版本 ) 思科 ASA 5505 ASA( 用作简易 VPN 客户端时 ) 思科 VPN 3002 硬件客户端 (3.5 版本或更高版本 ) 思科 PIX 501/506E, 用作简易 VPN 客户端时 支持 IKE 重定向的思科 IOS EZVPN 客户端设备 (IOS 831/871) 无客户端 SSL VPN( 不是客户端 ) 负载均衡可用于 IPsec 客户端和 SSL VPN 客户端以及无客户端会话 包括 LAN 到 LAN 在内的所有其他 VPN 连接类型 (L2TP PPTP L2TP/IPsec) 可以连接到在其上启用了负载均衡的 ASA, 但不能加入负载均衡 VPN 负载均衡算法 主用设备会维护一份按 IP 地址升序排序的备用集群成员列表 每个备用集群成员的负载会计算为整数百分比 ( 活动会话数 ) AnyConnect 非活动会话不会计入负载均衡的 SSL VPN 负载 主用设备将 IPsec 和 SSL VPN 隧道重定向至负载最低的设备, 直到其百分比值比其余设备高出 1% 当所有备用集群成员的百分比值都比主用设备高出 1% 时, 主用设备会将负载重定向至自身 3-8

57 第 3 章 常规 VPN 参数 了解负载均衡 例如, 如果您有一个主用和两个备用集群成员, 则以下循环适用 : 注意 所有节点的百分比值都从 0% 开始, 而且所有百分比值都会四舍五入 1. 如果所有成员的负载都比主用设备高出 1%, 则主用设备会接受连接 2. 如果主用设备没有接受连接, 则哪台备用设备负载百分比值最低就由哪台备用设备接受会话 3. 如果所有成员的负载百分比值相同, 则由会话数最少的备用设备获得会话 4. 如果所有成员的负载百分比值和会话数都相同, 则由 IP 地址最少的设备获得会话 VPN 负载均衡集群配置 负载均衡集群可由相同版本 混合版本的 ASA 以及 VPN 3000 集中器组成, 也可由这些设备混合组成, 并受到以下限制 : 由相同版本的 ASA 组成或全部由 VPN 3000 集中器组成的负载均衡集群可以为混合的 IPsec AnyConnect 和无客户端 SSL VPN 会话进行负载均衡 既包含相同版本的 ASA 又包含 VPN 3000 集中器的负载均衡集群可以为混合的 IPsec AnyConnect 和无客户端 SSL VPN 的客户端会话与无客户端会话进行负载均衡 包含混合版本 ASA 或相同版本 ASA 以及 VPN 3000 集中器或二者的负载均衡集群只能支持 IPsec 会话 不过, 在这样的配置中,ASA 可能无法达到其全部的 IPsec 容量 场景 1: 无 SSL VPN 连接的混合集群对该状况进行了说明 从 7.1(1) 版本起, 在确定集群中每台设备所承载的负载时,IPsec 和 SSL VPN 会话的计数或权重相等 这与 ASA 7.0(x) 版本软件和 VPN 3000 集中器的负载均衡计算不同 这两种平台所使用的加权算法在某些硬件平台上会以不同方式计算 IPsec 的会话负载与 SSL VPN 的会话负载 集群的虚拟主用设备会将会话请求分配给集群的成员 ASA 会同等地对待所有会话 (SSL VPN 或 IPsec 会话 ), 并相应地分配它们 您可以将允许的 IPsec 和 SSL VPN 会话数配置为您的配置和许可证允许的最大数量 有关如何设置这些限制的说明, 请参阅配置 VPN 会话限制 我们已测试过负载均衡集群中的最多十个节点 更大的集群可能也可以正常工作, 但是我们不正式支持此类拓扑 典型的混合集群场景示例 如果采用混合配置 - 也就是说, 如果负载均衡集群包含运行混合版本 ASA 软件的设备或者至少一台运行 ASA 7.1(1) 版本或更高版本的 ASA 以及 VPN 3000 集中器 - 则当初始的集群主用设备发生故障而另一台设备作为主用设备接管时, 加权算法之间的差异会成为问题 以下场景说明了如何在运行 ASA 7.1(1) 版本和 ASA 7.0(x) 版本软件的混合 ASA 以及 VPN 3000 系列集中器组成的集群中使用 VPN 负载均衡 场景 1: 无 SSL VPN 连接的混合集群 在此场景中, 集群由 ASA 和 VPN 3000 集中器混合组成 部分 ASA 集群对等体运行 ASA 7.0(x) 版本软件, 部分对等体运行 7.1(1) 版本软件 7.1(1) 版本之前的版本和 VPN 3000 对等体没有任何 SSL VPN 连接,7.1(1) 版本集群对等体只有基本 SSL VPN 许可证, 该许可证允许两个 SSL VPN 会话, 但没有 SSL VPN 连接 在这种情况下, 所有连接均为 IPsec 连接, 负载均衡可以正常工作 两个 SSL VPN 许可证对于用户充分利用最大 IPsec 会话限制的影响极小, 仅在 VPN 3000 集中器是集群主用设备时才会有较大的影响 通常, 在混合集群中,ASA 上的 SSL VPN 许可证数量越少, 对于 ASA 7.1(1) 设备能否在只有 IPsec 会话的场景中达到其 IPsec 会话限制的影响就越小 3-9

58 配置负载均衡 第 3 章 常规 VPN 参数 场景 2: 处理 SSL VPN 连接的混合集群 例如, 假设运行 ASA 7.1(1) 版本软件的 ASA 是初始的集群主用设备, 然后该设备发生故障 集群中的另一台设备作为主用设备自动接管, 并应用其自身的负载均衡算法来确定集群内的处理器负载 运行 ASA 7.1(1) 版本软件的集群主用设备不能以该软件提供的方式之外的任何其他方式确定会话负载的权重 因此, 它不能正确地向运行早期版本软件的 ASA 设备以及 VPN 3000 集中器分配合并的 IPsec 和 SSL VPN 会话负载 反之, 用作集群主用设备的 VPN 3000 集中器也不能向 ASA 7.1(1) 版本的 ASA 正确分配负载 以下场景对此困境进行了说明 此场景与上一场景类似, 在上一场景中, 集群由混合的 ASA 和 VPN 3000 集中器组成 部分 ASA 集群对等体运行 ASA 7.0(x) 版本软件, 部分对等体运行 7.1(1) 版本软件 然而, 在此情况下, 集群却可以处理 SSL VPN 连接以及 IPsec 连接 如果运行低于 ASA 7.1(1) 版本的软件的设备是集群主用设备, 则主用设备会应用在 7.1(1) 版本之前生效的协议和逻辑 也就是说, 会话可能会被定向至已超过其会话限制的负载均衡对等体 在这种情况下, 用户的访问会被拒绝 如果集群主用设备是运行 ASA 7.0(x) 版本软件的设备, 旧版会话加权算法只会应用于集群中 7.1(1) 之前版本的对等体 在这种情况下, 用户的访问都不会被拒绝 因为 7.1(1) 之前版本的对等体使用会话加权算法, 其负载较低 然而, 因为您无法保证 7.1(1) 版本的对等体始终是集群主用设备, 所以将会出现问题 如果集群主用设备发生故障, 另一对等体会承担主用设备的角色 新的主用设备可能是任意符合条件的对等体 因为结果不可预测, 我们建议您避免配置这种类型的集群 配置负载均衡 如要使用负载均衡, 请为加入集群的每台设备配置以下要素 : 公共和专用接口 VPN 负载均衡集群属性 备注 所有加入集群的设备都必须采用相同的集群配置, 但集群内的设备优先级除外 备注 如果使用主用 / 主用状态故障切换或 VPN 负载均衡, 则不支持本地 CA 功能 本地 CA 不能从属于另一 CA; 它只能用作根 CA 为负载均衡配置公共和专用接口 要为负载均衡集群设备配置公共 ( 外部 ) 和专用 ( 内部 ) 接口, 请执行以下步骤 : 步骤 1 步骤 2 在 vpn-load-balancing 配置模式下输入带有 lbpublic 关键字的 interface 命令, 在 ASA 上配置公共接口 该命令为此设备的负载均衡功能指定公共接口的名称或 IP 地址 : hostname(config)# vpn load-balancing hostname(config-load-balancing)# interface lbpublic outside hostname(config-load-balancing)# 在 vpn-load-balancing 配置模式下输入带有 lbprivate 关键字的 interface 命令, 在 ASA 上配置专用接口 该命令为此设备的负载均衡功能指定专用接口的名称或 IP 地址 : hostname(config-load-balancing)# interface lbprivate inside hostname(config-load-balancing)# 3-10

59 第 3 章 常规 VPN 参数 配置负载均衡 步骤 3 设置要在集群内分配给此设备的优先级 范围是从 1 到 10 该优先级表示此设备在启动时或现有主用设备发生故障时成为虚拟集群主用设备的可能性 设置的优先级越高 ( 例如 10), 此设备成为虚拟集群主用设备的可能性就越高 hostname(config-load-balancing)# priority number hostname(config-load-balancing)# 例如, 如要在集群内为此设备分配值为 6 的优先级, 请输入以下命令 : hostname(config-load-balancing)# priority 6 hostname(config-load-balancing)# 步骤 4 如果要对此设备应用网络地址转换, 请输入 nat 命令和此设备的 NAT 分配地址 可以定义 IPv4 和 IPv6 地址, 也可以指定此设备的主机名 hostname(config-load-balancing)# nat ipv4_address ipv_address hostname(config-load-balancing)# 例如, 如要为此设备分配 NAT 地址 和 2001:DB8::1, 请输入以下命令 : hostname(config-load-balancing)# nat :DB8::1 hostname(config-load-balancing)# 配置负载均衡集群属性 如要为集群中的每台设备配置负载均衡集群属性, 请执行以下步骤 : 步骤 1 在全局配置模式下输入 vpn load-balancing 命令, 设置 VPN 负载均衡 : hostname(config)# vpn load-balancing hostname(config-load-balancing)# 步骤 2 此命令将进入 vpn-load-balancing 配置模式, 可以在其中配置其余负载均衡属性 配置此设备所属集群的 IP 地址或完全限定域名 该命令指定代表整个虚拟集群的单一 IP 地址或 FQDN 选择虚拟集群中所有 ASA 共用的公共子网地址范围内的 IP 地址 可以指定 IPv4 或 IPv6 地址 hostname(config-load-balancing)# cluster ip address ip_address hostname(config-load-balancing)# 例如, 如要将集群 IP 地址设置为 IPv6 地址 2001:DB8::1, 请输入以下命令 : hostname(config-load-balancing)# cluster ip address 2001:DB8::1 hostname(config-load-balancing)# 步骤 3 配置集群端口 该命令指定此设备要加入的虚拟集群的 UDP 端口 默认值为 9023 如果其他应用在使用此端口, 请输入要用于负载均衡的 UDP 目标端口号 hostname(config-load-balancing)# cluster port port_number hostname(config-load-balancing)# 例如, 如要将集群端口设置为 4444, 请输入以下命令 : hostname(config-load-balancing)# cluster port 4444 hostname(config-load-balancing)# 3-11

60 配置负载均衡 第 3 章 常规 VPN 参数 步骤 4 ( 可选 ) 为集群启用 IPsec 加密 默认设置为无加密 该命令可以启用或禁用 IPsec 加密 如果配置此复选属性, 必须先指定和验证共享密钥 虚拟集群中的 ASA 通过使用 IPsec 的 LAN 到 LAN 隧道进行通信 如要确保加密设备之间通信的所有负载均衡信息, 请启用此属性 hostname(config-load-balancing)# cluster encryption hostname(config-load-balancing)# 注意 使用加密时, 必须事先配置负载均衡内部接口 如果该接口未在负载均衡内部接口上启用, 则会在尝试配置集群加密时收到错误消息 如果在配置集群加密时启用了负载均衡内部接口, 但在配置设备加入虚拟集群之前禁用了该接口, 则会在输入 participate 命令时 ( 如在 ASDM 中, 则为选中 Participate in Load Balancing Cluster 复选框时 ) 收到错误消息, 并且不会对集群启用加密 如要使用集群加密, 必须在指定内部接口的情况下, 使用 crypto isakmp enable 命令在内部接口上启用 ISAKMP 步骤 5 如果启用集群加密, 还必须输入 cluster key 命令指定 IPsec 共享密钥 在启用 IPsec 加密后, 该命令指定 IPsec 对等体之间的共享密钥 在框中输入的值会显示为连续的星号字符 hostname(config-load-balancing)# cluster key shared_secret hostname(config-load-balancing)# 例如, 如要将共享密钥设置为 , 请输入以下命令 : hostname(config-load-balancing)# cluster key hostname(config-load-balancing)# 步骤 6 输入 participate 命令, 让此设备加入集群 : hostname(config-load-balancing)# participate hostname(config-load-balancing)# 启用使用完全限定域名的重定向 如要在 vpn load-balancing 模式下启用或禁用使用完全限定域名的重定向, 请在全局配置模式下使用 redirect-fqdn enable 命令 默认情况下禁用此行为 默认情况下,ASA 在负载均衡重定向中只将 IP 地址发送给客户端 如果使用的证书基于 DNS 名称, 证书将在重定向至备用设备时变得无效 作为 VPN 集群主用设备, 该 ASA 在将 VPN 客户端连接重定向至一个集群设备 ( 集群中的另一 ASA) 时, 可以通过反向 DNS 查找, 发送此集群设备的完全限定域名 (FQDN), 而不是其外部 IP 地址 集群中的负载均衡设备上的所有外部和内部网络接口都必须位于相同 IP 网络中 如要使用 FQDN 而不是 IP 地址为 SSL 或 IPsec/IKEv2 连接进行 VPN 负载均衡, 请执行以下配置步骤 : 步骤 1 使用 redirect-fqdn enable 命令为负载均衡启用 FQDN: redirect-fqdn {enable disable} no redirect-fqdn {enable disable} 3-12

61 第 3 章 常规 VPN 参数 配置负载均衡 hostname(config)# vpn load-balancing hostname(config-load-balancing)# redirect-fqdn enable hostname(config-load-balancing)# 步骤 2 步骤 3 将每个 ASA 外部接口的条目添加到 DNS 服务器中 ( 如果其中尚无这些条目 ) 每个 ASA 外部 IP 地址都应该有一个与其关联的 DNS 条目用于查找 对于反向查找, 也必须启用这些 DNS 条目 使用 dns domain-lookup inside 命令或具有通向 DNS 服务器的路由的任一接口, 在 ASA 上启用 DNS 查找 步骤 4 在 ASA 上定义 DNS 服务器 IP 地址 ; 例如 :dns name-server (DNS 服务器的 IP 地址 ) 以下 VPN 负载均衡命令序列示例包含一条启用完全限定域名重定向的接口命令, 将集群的公共接口指定为 test, 将集群的专用接口指定为 foo hostname(config)# interface GigabitEthernet 0/1 hostname(config-if)# ip address hostname(config)# nameif test hostname(config)# interface GigabitEthernet 0/2 hostname(config-if)# ip address hostname(config)# nameif foo hostname(config)# vpn load-balancing hostname(config-load-balancing)# nat hostname(config-load-balancing)# priority 9 hostname(config-load-balancing)# interface lbpublic test hostname(config-load-balancing)# interface lbprivate foo hostname(config-load-balancing)# cluster ip address hostname(config-load-balancing)# cluster key hostname(config-load-balancing)# cluster encryption hostname(config-load-balancing)# cluster port 9023 hostname(config-load-balancing)# redirect-fqdn enable hostname(config-load-balancing)# participate 有关负载均衡的常见问题 IP 地址池耗尽 问 :ASA 是否会将 IP 地址池耗尽视为其 VPN 负载均衡方法的一部分? A. 不会 如果远程访问 VPN 会话被定向至已耗尽其 IP 地址池的设备, 则会话不会建立 负载均衡算法基于负载, 会计算为每个备用集群成员提供的整数百分比 ( 活动会话数和最大会话数 ) 唯一 IP 地址池 问 : 如要实施 VPN 负载均衡, 不同 ASA 上的 AnyConnect 客户端或 IPsec 客户端的 IP 地址池必须是唯一的吗? A. 是的 IP 地址池对于每台设备必须是唯一的 在相同设备上使用负载均衡和故障切换 问 : 一台设备可以同时使用负载均衡和故障切换吗? A. 可以 在此配置中, 客户端连接至集群的 IP 地址, 然后被重定向至集群中负载最低的 ASA 如果该设备发生故障, 备用设备会立即接管, 不会对 VPN 隧道产生任何影响 3-13

62 配置 VPN 会话限制 第 3 章 常规 VPN 参数 查看负载均衡 多个接口上的负载均衡 问 : 如果我们在多个接口上启用 SSL VPN, 是否可以为所有的这些接口实施负载平衡? A. 只能定义一个接口作为公共接口加入集群 这个想法是为了均衡 CPU 负载, 多个接口会在相同 CPU 上融合, 因此多个接口上的负载均衡这个概念没有意义 负载均衡集群的最大并行会话数 问 : 请考虑有两台 ASA 5525-X 的部署, 每台设备均有一个 100 位用户的 SSL VPN 许可证 在负载均衡集群中, 最大用户总数是允许 200 个并行会话还是仅允许 100 个并行会话? 如果我们随后添加第三台设备, 该设备有一个 100 位用户的许可证, 我们此时能够支持 300 个并行会话吗? A. 使用 VPN 负载均衡的情况下, 所有设备均处于活动状态, 因此集群可以支持的最大会话数为集群中每台设备的会话数量的总和, 在这种情况下为 300 负载均衡集群主用设备从集群中的每台 ASA 接收定期消息, 其中包含活动 AnyConnect 和无客户端会话的数量, 以及基于配置限制或许可证限制的最大允许会话数 如果集群中的 ASA 显示 100% 的容量已满, 则集群主用设备无法向其重定向更多的连接 尽管 ASA 可能显示为容量已满, 但有些用户可能处于非活动 / 等待继续状态, 造成了许可证的浪费 作为应急方案, 每台 ASA 都提供会话总数减去非活动状态会话数之后的数量, 而不是会话总数量 ( 请参阅 命令参考 中的 -sessiondb summary 命令 ) 也就是说, 非活动会话不会报告至集群主用设备 即便 ASA 的容量已满 ( 有部分非活动会话 ), 集群主用设备仍会视需要向其重定向连接 ASA 收到新的连接时, 处于非活动状态最长时间的会话会被注销, 从而允许新的连接使用其许可证 以下示例显示了 100 个 SSL 会话 ( 仅活动会话 ) 和 2% 的 SSL 负载 这些数值不包含非活动会话 也就是说, 非活动会话不会计入负载均衡的负载 hostname# load-balancing Status : enabled Role : Master Failover : Active Encryption : enabled Cluster IP : Peers : 1 Load % Sessions Public IP Role Pri Model IPsec SSL IPsec SSL Master 7 ASA Backup 9 ASA 配置 VPN 会话限制 您可以运行的 IPsec 和 SSL VPN 会话数量与您的平台和 ASA 许可证支持的数量相同 如要查看 ASA 的许可信息 ( 包括最大会话数 ), 请在全局配置模式下输入 show version 命令 以下示例显示该命令和该命令输出中的许可信息 : hostname(config)# show version Cisco Adaptive Security Appliance Software Version 8.4(1) Device Manager Version 6.4(1) 3-14

63 第 3 章 常规 VPN 参数 配置 VPN 会话限制 Compiled on Sun 02-Jan-11 03:45 by builders System image file is "disk0:/cdisk.bin" Config file at boot was "startup-config" asa4 up 9 days 3 hours Hardware: ASA5510, 256 MB RAM, CPU Pentium 4 Celeron 1600 MHz Internal ATA Compact Flash, 256MB BIOS Flash 0xfff00000, 1024KB Encryption hardware device : Cisco ASA-55x0 on-board accelerator (revision 0x0) Boot microcode : CN1000-MC-BOOT-2.00 SSL/IKE microcode : CNLite-MC-SSLm-PLUS-2.03 IPsec microcode : CNlite-MC-IPSECm-MAIN-2.06 Number of accelerators: 1 0: Ext: Ethernet0/0 : address is 001e.f75e.8b84, irq 9 1: Ext: Ethernet0/1 : address is 001e.f75e.8b85, irq 9 2: Ext: Ethernet0/2 : address is 001e.f75e.8b86, irq 9 3: Ext: Ethernet0/3 : address is 001e.f75e.8b87, irq 9 4: Ext: Management0/0 : address is 001e.f75e.8b83, irq 11 5: Int: Internal-Data0/0 : address is , irq 11 6: Int: Internal-Control0/0 : address is , irq 5 Licensed features for this platform: Maximum Physical Interfaces : Unlimited perpetual Maximum VLANs : 100 perpetual Inside Hosts : Unlimited perpetual Failover : Active/Active perpetual VPN-DES : Enabled perpetual VPN-3DES-AES : Enabled perpetual Security Contexts : 2 perpetual GTP/GPRS : Disabled perpetual AnyConnect Premium Peers : 250 perpetual AnyConnect Essentials : Disabled perpetual Other VPN Peers : 250 perpetual Total VPN Peers : 250 perpetual Shared License : Disabled perpetual AnyConnect for Mobile : Disabled perpetual AnyConnect for Cisco VPN Phone : Disabled perpetual Advanced Endpoint Assessment : Enabled perpetual UC Phone Proxy Sessions : 2 perpetual Total UC Proxy Sessions : 2 perpetual Botnet Traffic Filter : Disabled perpetual Intercompany Media Engine : Disabled perpetual This platform has an ASA 5510 Security Plus license. hostname# 如要将 AnyConnect VPN 会话 (IPsec/IKEv2 或 SSL) 数限制为低于 ASA 允许的值, 请在全局配置模式下使用 vpn-sessiondb max-anyconnect-premium-or-essentials-limit 命令 如要删除会话限制, 请使用此命令的 no 版本 例如, 如果 ASA 许可证允许 500 个 SSL VPN 会话, 而您想要将 AnyConnect VPN 会话数限制为 250 个, 请输入以下命令 : hostname(config)# vpn-sessiondb max-anyconnect-premium-or-essentials-limit 250 hostname(config)# 如要删除会话限制, 请使用此命令的 no 版本 : hostname(config)# no vpn-sessiondb max-anyconnect-premium-or-essentials-limit 250 hostname(config)# 3-15

64 协商时使用身份证书 第 3 章 常规 VPN 参数 如要将思科 VPN 客户端 (IPsec IKEv1) LAN 到 LAN VPN 和无客户端 SSL VPN 会话数限制为低于 ASA 允许的值, 请在全局配置模式下输入 vpn-sessiondb max-other-vpn-limit 命令 : 例如, 如果 ASA 许可证允许 750 个 IPsec 会话, 而您想要将 IPsec 会话数限制为 500 个, 请输入以下命令 : hostname(config)# vpn-sessiondb max-other-vpn-limit 500 hostname(config)# 如要删除会话限制, 请使用此命令的 no 版本 : hostname(config)# no vpn-sessiondb max-other-vpn-limit 500 hostname(config)# 协商时使用身份证书 ASA 与 AnyConnect 客户端协商 IKEv2 隧道时, 需要使用身份证书 对于 IKEv2 远程访问信任点配置, 请使用以下命令 crypto ikev2 remote-access trustpoint <name> [line<number>] 使用此命令可以让 AnyConnect 客户端支持最终用户的组选择 可以同时配置两个信任点 : 两个 RSA 两个 ECDSA 或各一个 ASA 扫描已配置的信任点列表并选择客户端支持的第一个信任点 如果首选 ECDSA, 则应先配置 ECDSA 信任点, 再配置 RSA 信任点 行号选项指定您想要插入信任点的行号 通常, 此选项用于在不删除和重新添加另一行的情况下, 在顶部插入信任点 如果未指定行,ASA 将在列表末尾添加信任点 如果尝试添加已存在的信任点, 将收到一条错误消息 如果使用 no crypto ikev2 remote-access trustpoint 命令而不指定要删除哪个信任点名称, 则会删除所有信任点配置 配置加密核心池 可以在对称多处理 (SMP) 平台上更改加密核心的分配, 以提高 AnyConnect TLS/DTLS 流量的吞吐量性能 这些更改可以加速 SSL VPN 数据路径, 并在 AnyConnect 智能隧道和端口转发方面提供客户可见的性能提升 以下步骤说明如何在单情景或多情景模式下配置加密核心池 : 备注 多情景模式仅适用于站点到站点的 IKEv2 和 IKEv1, 而不适用于 AnyConnect 无客户端 SSL VPN 旧版思科 VPN 客户端 Apple 本机 VPN 客户端 Microsoft 本机 VPN 客户端或 IKEv1 IPsec 的 ctcp 限制 加密核心再平衡适用于以下平台 : 5585-X 5545-X 5555-X ASASM 3-16

65 第 3 章 常规 VPN 参数 查看活动 VPN 会话 步骤 1 指定如何分配密码加速器处理器 : balanced - 平均分配加密硬件资源 ipsec - 将加密硬件资源优先分配给 IPsec/ 加密语音 (SRTP) ssl - 将加密硬件资源优先分配给 SSL hostname(config)# crypto engine? hostname(config)# crypto engine accelerator-bias? 查看活动 VPN 会话 按 IP 地址类型查看活动 AnyConnect 会话 如要使用命令行界面查看活动 AnyConnect 会话, 请在特权 EXEC 模式下输入 show vpn-sessiondb anyconnect filter p-ipversion 或 show vpn-sessiondb anyconnect filter a-ipversion 命令 显示按终端的公共 IPv4 或 IPv6 地址过滤的活动 AnyConnect 会话 公共地址是由企业分配给终端的地址 show vpn-sessiondb anyconnect filter p-ipversion {v4 v6} 显示按终端的已分配 IPv4 或 IPv6 地址过滤的活动 AnyConnect 会话 已分配地址是由 ASA 分配给 AnyConnect 安全移动客户端的地址 示例 show vpn-sessiondb anyconnect filter a-ipversion {v4 v6} 示例 3-1 Output from show vpn-sessiondb anyconnect filter p-ipversion [v4 v6] command hostname(config)# show vpn-sessiondb anyconnect filter p-ipversion v4 Session Type: AnyConnect Username : user1 Index : 40 Assigned IP : Public IP : Protocol : AnyConnect-Parent SSL-Tunnel License : AnyConnect Premium Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)RC4 Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA1 Bytes Tx : Bytes Rx : 8085 Group Policy : GroupPolicy_SSLACCLIENT Tunnel Group : SSLACCLIENT Login Time : 15:17:12 UTC Mon Oct Duration : 0h:00m:09s Inactivity : 0h:00m:00s NAC Result : Unknown VLAN Mapping : N/A VLAN : none 3-17

66 查看活动 VPN 会话 第 3 章 常规 VPN 参数 示例 3-2 Output from show vpn-sessiondb anyconnect filter a-ipversion [v4 v6] command hostname(config)# show vpn-sessiondb anyconnect filter a-ipversion v6 Session Type: AnyConnect Username : user1 Index : 45 Assigned IP : Public IP : 2001:DB8:8:1:90eb:3fe5:9eea:fb29 Assigned IPv6: 2001:DB8:9:1::24 Protocol : AnyConnect-Parent SSL-Tunnel License : AnyConnect Premium Encryption : AnyConnect-Parent: (1)none SSL-Tunnel: (1)RC4 Hashing : AnyConnect-Parent: (1)none SSL-Tunnel: (1)SHA1 Bytes Tx : Bytes Rx : Group Policy : GroupPolicy_SSL_IPv6 Tunnel Group : SSL_IPv6 Login Time : 17:42:42 UTC Mon Oct Duration : 0h:00m:33s Inactivity : 0h:00m:00s NAC Result : Unknown VLAN Mapping : N/A VLAN : none 按 IP 地址类型查看活动的无客户端 SSL VPN 会话 如要使用命令行界面查看活动的无客户端 SSL VPN 会话, 请在特权 EXEC 模式下输入 show vpn-sessiondb webvpn filter ipversion 命令 公共地址是由企业分配给终端的地址 show vpn-sessiondb webvpn filter ipversion {v4 v6} 示例 示例 3-3 Output from show vpn-sessiondb webvpn filter ipversion [v4 v6] command hostname# sh vpn-sessiondb webvpn filter ipversion v4 Session Type: WebVPN Username : user1 Index : 63 Public IP : Protocol : Clientless License : AnyConnect Premium Encryption : Clientless: (1)RC4 Hashing : Clientless: (1)SHA1 Bytes Tx : Bytes Rx : Group Policy : SSLv6 Tunnel Group : SSL_IPv6 Login Time : 18:07:48 UTC Mon Oct Duration : 0h:00m:16s Inactivity : 0h:00m:00s NAC Result : Unknown VLAN Mapping : N/A VLAN : none 3-18

67 第 3 章 常规 VPN 参数 关于 ISE 策略实施 按 IP 地址类型查看活动的 LAN 到 LAN VPN 会话 如要使用命令行界面查看活动的无客户端 SSL VPN 会话, 请在特权 EXEC 模式下输入 show vpn-sessiondb l2l filter ipversion 命令 该命令显示按连接的公共 IPv4 或 IPv6 地址过滤的活动 LAN 到 LAN VPN 会话 公共地址是由企业分配给终端的地址 show vpn-sessiondb l2l filter ipversion {v4 v6} 关于 ISE 策略实施 思科身份服务引擎 (ISE) 是一个安全策略管理和控制平台 可自动化并简化有线连接 无线连接和 VPN 连接的接入控制和安全合规性管理 思科 ISE 主要用于与 Cisco TrustSec 结合提供安全接入和访客接入 支持自带设备计划和执行使用策略 ISE 授权变更 (CoA) 功能提供一种机制, 以在建立身份验证 授权和记帐 (AAA) 会话后更改其属性 当 AAA 中的用户或用户组的策略发生更改时, 可以将 CoA 数据包从 ISE 直接发送到 ASA, 以重新初始化身份验证并应用新策略 不再需要内联安全状态实施点 (IPEP) 来为与 ASA 建立的每个 VPN 会话应用访问控制列表 (ACL) 在以下 VPN 客户端上支持 ISE 策略实施 : IPSec AnyConnect L2TP/IPSec 系统流程如下 : 1. 最终用户请求 VPN 连接 2. ASA 向 ISE 对用户进行身份验证, 并且接收提供有限网络访问的用户 ACL 3. 系统向 ISE 发送记帐启动消息以注册会话 4. 直接在 NAC 代理和 ISE 之间进行安全状态评估 此过程对 ASA 透明 5. ISE 通过 CoA 策略推送 向 ASA 发送策略更新 这可以确定提供更高网络访问权限的新用户 ACL 备注 在连接的生存期内, 可能会通过后续 CoA 更新进行对 ASA 透明的其他策略评估 配置 RADIUS 服务器组 如要将外部 RADIUS 服务器用于身份验证 授权或记帐, 每个 AAA 协议必须先创建至少一个 RADIUS 服务器组, 然后向每个服务器组添加一台或多台服务器 可以按名称标识 AAA 服务器组 步骤 1 确定服务器组名称和协议 输入 aaa-server protocol 命令时, 会进入 AAA 服务器组配置模式 aaa-server server_tag protocol radius 3-19

68 关于 ISE 策略实施 第 3 章 常规 VPN 参数 hostname(config)# aaa-server servergroup1 protocol radius hostname(config-aaa-server-group)# 步骤 2 将可下载的 ACL 与来自 RADIUS 数据包的思科 AV 对中收到的 ACL 合并 默认设置为 no merge dacl, 指定可下载的 ACL 不与思科 AV 对 ACL 合并 如果同时收到 AV 对和可下载的 ACL, 将优先使用 AV 对 before-avpair 选项指定可下载的 ACL 条目应放置在思科 AV 对条目之前 after-avpair 选项指定可下载的 ACL 条目应放置在思科 AV 对条目之后 此选项仅适用于 VPN 连接 对于 VPN 用户,ACL 的形式可以是思科 AV 对 ACL 可下载 ACL 和在 ASA 上配置的 ACL 此选项确定是否合并可下载的 ACL 与 AV 对 ACL, 不适用于在 ASA 上配置的任何 ACL merge-dacl {before-avpair after-avpair} hostname(config)# aaa-server servergroup1 protocol radius hostname(config-aaa-server-group)# merge-dacl before-avpair 步骤 3 指定在尝试下一服务器前, 向组中的 RADIUS 服务器发送的最大请求数 number 参数的取值范围为 1 至 5 默认值为 3 如果配置了使用本地数据库的回退方法 ( 仅用于管理访问 ), 并且组中的所有服务器都未响应, 则该服务器组会被视为无响应, 系统将会尝试回退方法 该服务器组仍然标记为 10 分钟 ( 默认值 ) 内无响应, 因此该时段内其他的 AAA 请求不会尝试联系该服务器组, 而是会立即使用回退方法 如要将无响应时段从默认值改为其他值, 请参阅下一步中的 reactivation-mode 命令 如果没有回退方法,ASA 会继续重试该组中的服务器 max-failed-attempts number hostname(config-aaa-server-group)# max-failed-attempts 2 步骤 4 指定用于重新激活组中的已失败服务器的方法 ( 重新激活策略 ) depletion 关键字仅在组中的所有服务器均处于非活动状态后, 才重新激活已失败的服务器 deadtime minutes 关键字 - 参数对指定介于 0 至 1440( 以分钟为单位 ) 之间的时长, 该时长是禁用组中的最后一台服务器到随后重新启用所有服务器之间会经过的一段时间 默认值为 10 分钟 timed 关键字在 30 秒的停止运行时间之后, 重新激活已失败的服务器 reactivation-mode {depletion [deadtime minutes] timed} hostname(config-aaa-server-group)# reactivation-mode deadtime 20 步骤 5 向组中的所有服务器发送记帐消息 如要恢复仅向活动服务器发送消息的默认设置, 请输入 accounting-mode single 命令 accounting-mode simultaneous hostname(config-aaa-server-group)# accounting-mode simultaneous 步骤 6 确定服务器及其所属的 AAA 服务器组 输入 aaa-server host 命令时, 将会进入 AAA 服务器主机配置模式 aaa-server server_group [interface_name] host server_ip hostname(config)# aaa-server servergroup1 outside host

69 第 3 章 常规 VPN 参数 关于 ISE 策略实施 步骤 7 为 AAA 服务器组启用 RADIUS 动态授权 (CoA) 服务 定义后会注册相应的 RADIUS 服务器组以用于 CoA 通知, 且 ASA 会侦听用于从 ISE 获取 CoA 策略更新的端口 CoA 侦听 port-number 的有效范围为 1 至 如果该命令的 no 形式中指定的端口号或接口与当前配置中的行不匹配, 将会显示一条错误消息 dynamic-authorization {port port-number} hostname(config-aaa-server-group)# dynamic-authorization port 1700 步骤 8 为 RADIUS 服务器组启用仅授权模式 这表示当此服务器组用于授权时,RADIUS 访问请求消息将会构建为 仅授权 请求, 而不是现在可用的已配置的密码方法 仅授权请求包含带有仅授权值 (17) 的服务类型属性以及访问请求内的消息身份验证器 支持仅授权模式则无需在访问请求中包含 RADIUS 公用密码 因此, 不需要在 aaa-server-host 模式下使用 radius-common-pw CLI 配置公用密码 为服务器组配置仅授权模式, 而公用密码是主机特定的 因此, 一旦配置了仅授权模式, 为单个 AAA 服务器配置的公用密码会被忽略 authorize-only hostname(config-aaa-server-group)# authorize-only 步骤 9 关闭与特定隧道组的连接的主机扫描处理 此设置目前适用于无客户端和 L3 连接 该命令已被修改为可以将此设置仅应用于 AnyConnect 连接 without-csd {anyconnect} hostname(config-tunnel-webvpn)# without-csd anyconnect 步骤 10 启用 RADIUS 临时记帐更新消息的生成 目前, 仅当 VPN 隧道连接添加至无客户端 VPN 会话时, 才会生成这些消息 发生此情况时, 将生成记帐更新, 以便将新分配的 IP 地址通知给 RADIUS 服务器 已向该命令添加了关键字, 以便将该命令配置为支持当前功能, 或者可以为所有被配置为向指定服务器组发送记帐消息的会话生成定期临时记帐更新 periodic - 此可选关键字允许为每个被配置为向有关服务器组发送记帐记录的 VPN 会话定期生成和传输记帐记录 interval - 该数值代表定期记帐更新的间隔时长 ( 以小时为单位 ) 有效范围是 1 至 120, 默认值为 24 interim-accounting-update {periodic interval} hostname(config-aaa-server-group)# interim-accounting-update periodic 12 示例配置 以下示例显示如何添加包含一台服务器的 RADIUS 组 : hostname(config)# aaa-server AuthOutbound protocol radius hostname(config-aaa-server-group)# exit hostname(config)# aaa-server AuthOutbound (inside) host hostname(config-aaa-server-host)# key RadUauthKey hostname(config-aaa-server-host)# exit 3-21

70 关于 ISE 策略实施 第 3 章 常规 VPN 参数 以下示例显示如何为仅授权 动态授权 (CoA) 更新和每小时定期记帐配置 ISE 服务器对象 : hostname(config)# aaa-server ise protocol radius hostname(config-aaa-server-group)# authorize-only hostname(config-aaa-server-group)# interim-accounting-update periodic 1 hostname(config-aaa-server-group)# dynamic-authorization hostname(config-aaa-server-group)# exit hostname(config-aaa-server-group)# authorize-only hostname(config)# aaa-server ise (inside) host hostname(config-aaa-server-host)# key sharedsecret hostname(config-aaa-server-host)# exit 以下示例显示如何为采用 ISE 的密码身份验证配置隧道组 : hostname(config)# tunnel-group aaa-coa general-attributes hostname(config-tunnel-general)# address-pool vpn hostname(config-tunnel-general)# authentication-server-group ise hostname(config-tunnel-general)# accounting-server-group ise hostname(config-tunnel-general)# exit 以下示例显示如何为采用 ISE 的本地证书验证和授权配置隧道组 : hostname(config)# tunnel-group aaa-coa general-attributes hostname(config-tunnel-general)# address-pool vpn hostname(config-tunnel-general)# authentication certificate hostname(config-tunnel-general)# authorization-server-group ise hostname(config-tunnel-general)# accounting-server-group ise hostname(config-tunnel-general)# exit 有关如何启用 CoA 的详细信息, 请参阅 CLI configuration guide 中的 配置用于 AAA 的 RADIUS 服务器 一章 故障排除 以下命令可用于调试 如要跟踪 CoA 活动, 请输入以下命令 : debug radius dynamic-authorization 如要跟踪重定向 URL 功能, 请输入以下命令 : debug aaa url-redirect 如要查看 URL 重定向功能对应的 NP 分类规则, 请输入以下命令 : show asp table classify domain url-redirect 配置高级 SSL 设置 ASA 使用安全套接字层 (SSL) 协议和传输层安全性 (TLS) 为 ASDM 无客户端 SSL VPN VPN 和基于浏览器的会话提供安全消息传输支持 ASA 支持用于基于 SSL 的 VPN 和管理连接的 SSLv3 TLSv1 TLv1.1 和 TLSv1.2 备注 对于版本 9.4(1), 所有 SSLv3 关键字都已从 ASA 配置中删除, 而且 SSLv3 支持也已从 ASA 中删除 如果您启用了 SSLv3, 带 SSLv3 选项的命令将出现引导时间错误 ASA 随后将恢复为默认使用 TLSv1 3-22

71 第 3 章 常规 VPN 参数 关于 ISE 策略实施 Citrix Mobile Receiver 可能不支持 TLS 1.1/1.2 协议 ; 有关兼容性, 请参阅 TLSv1.2 增加了对以下密码的支持 : ECDHE-ECDSA-AES256-GCM-SHA384 ECDHE-RSA-AES256-GCM-SHA384 DHE-RSA-AES256-GCM-SHA384 AES256-GCM-SHA384 ECDHE-ECDSA-AES256-SHA384 ECDHE-RSA-AES256-SHA384 ECDHE-ECDSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-GCM-SHA256 DHE-RSA-AES128-GCM-SHA256 RSA-AES128-GCM-SHA256 ECDHE-ECDSA-AES128-SHA256 ECDHE-RSA-AES128-SHA256 如要指定 ASA 协商 SSL/TLS 连接的最低协议版本, 请执行以下步骤 : 步骤 1 设置 ASA 将协商 SSL/TLS 连接的最低协议版本 ssl server-version [tlsv1 tlsv1.1 tlsv1.2] hostname(config)# ssl server-version tlsv1 步骤 2 tlsv1 关键字指定 ASA 可以接受 SSLv2 客户端呼叫并协商 TLSv1 或更高版本 tlsv1.1 关键字指定 ASA 可以接受 SSLv2 客户端呼叫并协商 TLSv1.1 或更高版本 tlsv1.2 关键字指定 ASA 可以接受 SSLv2 客户端呼叫并协商 TLSv1.2 或更高版本 指定 ASA 用作客户端时所使用的 SSL/TLS 协议版本 ssl client-version [tlsv1 tlsv1.1 tlsv1.2] hostname(config)# ssl client-version tlsv1 tlsv1 关键字指定 ASA 可以传输 TLSv1 客户端呼叫并协商 TLSv1( 或更高版本 ) tlsv1.1 关键字指定 ASA 可以传输 TLSv1.1 客户端呼叫并协商 TLSv1.1( 或更高版本 ) tlsv1.2 关键字指定 ASA 可以传输 TLSv1.2 客户端呼叫并协商 TLSv1.2( 或更高版本 ) 步骤 3 指定 SSL DTLS 和 TLS 协议的加密算法 ssl cipher version [level custom string ] hostname(config)# ssl cipher tlsv1.1 fips hostname(config)#ssl cipher tlsv1 custom "RC4-SHA:ALL" version 参数指定 SSL DTLS 或 TLS 协议版本 支持的版本包括 : default - 用于出站连接的密码集 dtlsv1 - 用于 DTLSv1 入站连接的密码 tlsv1 - 用于 TLSv1 入站连接的密码 3-23

72 关于 ISE 策略实施 第 3 章 常规 VPN 参数 步骤 4 tlsv1.1 - 用于 TLSv1.1 入站连接的密码 tlsv1.2 - 用于 TLSv1.2 入站连接的密码 level 参数指定密码的强度并表示已配置的最低级别密码 有效值 ( 按强度的升序排列 ) 如下 : all - 包括所有密码, 其中包括 NULL-SHA low - 包括除 NULL-SHA 以外的所有密码 medium( 这是所有协议版本的默认值 )- 包括除 NULL-SHA DES-CBC-SHA 和 RC4-MD5 以外的所有密码 fips - 包括所有符合 FIPS 的密码 ( 不包括 NULL-SHA DES-CBC-SHA RC4-MD5 RC4-SHA 和 DES-CBC3-SHA) high( 仅适用于 TLSv1.2 )- 仅包括使用 SHA-2 密码的 AES-256 custom string 关键字 - 参数对让您可以使用 OpenSSL 密码定义字符串对密码套件进行全面控制 有关详细信息, 请参阅 建议的设置为 medium 使用 high 可能会限制连接 如果仅配置了几个密码, 使用 custom 可能会限制功能 限制默认自定义值会限制出站连接, 包括集群 ASA 将支持的密码的优先级顺序指定为 : 有关详细详情, 请参阅 命令参考 此命令取代了从版本 9.3(2) 开始弃用的 ssl encryption 命令 允许一个接口上有多个信任点 ssl trust-point name [interface [vpnlb-ip] domain domain-name] hostname(config)# ssl trust-point www-cert domain name 参数指定信任点的名称 interface 参数指定在其上配置信任点的接口的名称 vpnlb-ip 关键字仅适用于接口, 并将此信任点与该接口上的 VPN 负载均衡集群 IP 地址关联 domain domain-name 关键字 - 参数对指定与访问该接口所用的特定域名相关联的信任点 最多可为每个接口配置 16 个信任点 如果不指定接口或域, 则此命令将为所有未配置信任点的接口创建回退信任点 如果输入 ssl trustpoint? 命令, 则会显示可用的已配置信任点 如果输入 ssl trust-point name? 命令 ( 例如,ssl trust-point mysslcert?), 则显示信任点 SSL 证书关联的可用已配置接口 使用此命令时请遵守以下准则 : trustpoint 的值必须是 crypto ca trustpoint name 命令中配置的 CA 信任点的名称 interface 的值必须是之前配置的接口的 nameif 名称 删除信任点也会删除引用该信任点的任何 ssl trust-point 条目 您可以为每个接口指定一个 ssl trust-point 条目, 还可以指定一个不指定接口的条目 可以将同一信任点重复用于多个条目 一个配置了 domain 关键字的信任点可应用于多个接口 ( 取决于连接方式 ) 每个 domain-name 值只能有一个 ssl trust-point 如果在输入此命令后显示以下错误 : error:0b080074:x509 certificate routines:x509_check_private_key:key values mismatch@x509_cmp.c:339 表示用户已配置新证书来替换先前配置的证书 无需任何操作 3-24

73 第 3 章 常规 VPN 参数 关于 ISE 策略实施 证书按以下顺序选择 : 如果连接与 domain 关键字的值匹配, 则首选该证书 (ssl trust-point name domain domain-name 命令 ) 如果与负载均衡地址建立连接, 则选择 vpnlb-ip 证书 (ssl trust-point name interface vpnlb-ip 命令 ) 为接口配置的证书 (ssl trust-point name interface 命令 ) 未与接口关联的默认证书 (ssl trust-point name 命令 ) ASA 的自签名 自生成证书 步骤 5 指定将与 TLS 所使用的 DHE-RSA 密码一起使用的 DH 群 ssl dh-group [group1 group2 group5 group14 group24] hostname(config)# ssl dh-group group5 步骤 6 group1 关键字配置 DH 群 1(768 位模数 ) group2 关键字配置 DH 群 2(1024 位模数 ) group5 关键字配置 DH 群 5(1536 位模数 ) group14 关键字配置 DH 群 14(2048 位模数,224 位素数阶子组 ) group24 关键字配置 DH 群 24(2048 位模数, 256 位素数阶子组 ) 群 1 和 2 与 Java 7 及更低版本兼容 群 5 14 和 24 与 Java 7 不兼容 所有群均与 Java 8 兼容 群 14 和 24 符合 FIPS 默认值为 ssl dh-group group2 指定将与 TLS 所使用的 ECDHE-ECDSA 密码一起使用的群 ssl ecdh-group [group19 group20 group21] hostname(config)# ssl ecdh-group group20 group19 关键字配置群 19(256 位 EC) group20 关键字配置群 20(384 位 EC) group21 关键字配置群 21(521 位 EC) 默认值为 ssl ecdh-group group19 备注 ECDSA 和 DHE 密码具有最高优先级 3-25

74 关于 ISE 策略实施 第 3 章 常规 VPN 参数 3-26

75 第 4 章 连接配置文件 组策略和用户 本章介绍如何配置 VPN 连接配置文件 ( 以前称为 隧道组 ) 组策略和用户 本章包含以下各节 连接配置文件 组策略和用户概述 ( 第 4-1 页 ) 配置连接配置文件 ( 第 4-5 页 ) 组策略 ( 第 4-34 页 ) 配置用户属性 ( 第 4-80 页 ) 总之, 首先要配置连接配置文件来为连接设置值 然后, 配置组策略 这些组策略将用户作为总体为其设置值 然后再配置用户, 可以从组继承值并逐一为个别用户配置某些值 本章将介绍配置这些实体的方式和原因 连接配置文件 组策略和用户概述 组和用户是管理虚拟专用网络 (VPN) 的安全性以及配置 ASA 方面的核心概念 它们指定用于确定对 VPN 的用户访问及使用的属性 组是被视为单个实体的用户集合 用户从组策略获取其属性 连接配置文件标识特定连接的组策略 如果没有向用户分配特定组策略, 则应用连接的默认组策略 备注可使用 tunnel-group 命令来配置连接配置文件 在本章中, 术语 连接配置文件 和 隧道组 经常交替使用 连接配置文件和组策略可以简化系统管理 为精简配置任务,ASA 提供默认 LAN 到 LAN 连接配置文件 默认远程访问连接配置文件 默认 SSL/IKEv2 VPN 连接配置文件和默认组策略 (DfltGrpPolicy) 默认连接配置文件和组策略提供对许多用户可能都相同的设置 添加用户时, 可以指定其从组策略 继承 参数 这样就可以快速为大量用户配置 VPN 访问 如果您决定向所有 VPN 用户授予相同权限, 则无需配置特定连接配置文件或组策略, 但是 VPN 很少以该方式工作 例如, 您可能会允许财务组访问专用网络的一部分, 允许客户支持组访问另一部分, 并允许 MIS 组访问其他部分 此外, 您可能还要允许 MIS 中的特定用户访问其他 MIS 用户无法访问的系统 连接配置文件和组策略提供安全执行此任务的灵活性 备注 ASA 还包括对象组的概念, 对象组是网络列表的超集 通过对象组, 可以定义对端口及网络的 VPN 访问 对象组与 ACL 相关, 而非与组策略和连接配置文件相关 有关使用对象组的详细信息, 请参阅一般操作配置指南中的第 20 章 对象 4-1

76 连接配置文件 第 4 章 连接配置文件 组策略和用户 安全设备可以应用各种来源的属性值 它根据以下层次结构应用这些属性值 : 1. 动态访问策略 (DAP) 记录 2. 用户名 3. 组策略 4. 连接配置文件的组策略 5. 默认组策略因此, 属性的 DAP 值比为用户 组策略或连接配置文件配置的 DAP 值具有更高的优先级 当您启用或禁用 DAP 记录的某个属性时,ASA 会应用并实施该值 例如, 在 dap webvpn 配置模式下禁用 HTTP 代理时,ASA 不会进一步查找值 当您对 http-proxy 命令改用 no 值时,DAP 记录中就没有该属性, 因此安全设备会下移到用户名中的 AAA 属性, 并且如有必要, 再下移到组策略查找要应用的值 ASA 无客户端 SSL VPN 配置仅分别支持一个 http-proxy 命令和一个 https-proxy 命令 建议使用 ASDM 来配置 DAP 连接配置文件 连接配置文件由一组用于确定隧道连接策略的记录组成 这些记录标识对隧道用户进行身份验证的服务器, 以及连接信息发送到的记帐服务器 ( 如果有 ) 它们还标识连接的默认组策略, 并且包含特定于协议的连接参数 连接配置文件包含少量与创建隧道本身有关的属性 连接配置文件还包含一个指针, 指向用于定义面向用户的属性的组策略 ASA 提供以下默认连接配置文件 : 用于 LAN 到 LAN 连接的 DefaultL2Lgroup 用于远程访问连接的 DefaultRAgroup 以及用于 SSL VPN( 基于浏览器 ) 连接的 DefaultWEBVPNGroup 可以修改这些默认连接配置文件, 但是无法将其删除 您还可以创建一个或多个特定于您的环境的连接配置文件 连接配置文件对于 ASA 而言为本地配置文件, 并且无法在外部服务器上进行配置 连接配置文件指定以下属性 : 常规连接配置文件连接参数 ( 第 4-2 页 ) IPsec 隧道组连接参数 ( 第 4-3 页 ) SSL VPN 会话的连接配置文件连接参数 ( 第 4-4 页 ) 常规连接配置文件连接参数 常规参数对于所有 VPN 连接都通用 常规参数包括 : 连接配置文件名称 - 在添加或编辑连接配置文件时指定连接配置文件名称 请注意以下事项 : 对于使用预共享密钥进行身份验证的客户端, 连接配置文件名称与客户端传递给 ASA 的组名相同 使用证书进行身份验证的客户端将此名称作为证书的一部分来传递, 而 ASA 从证书提取名称 连接类型 - 连接类型包括 IKEv1 远程访问 IPsec LAN 到 LAN 和 Anyconnect (SSL/IKEv2) 连接配置文件只能有一种连接类型 身份验证 授权和记帐服务器 - 这些参数标识 ASA 用于以下目的的服务器组或列表 : 用户身份验证 获取有关用户经授权访问的服务的信息 存储记帐记录 4-2

77 第 4 章 连接配置文件 组策略和用户 连接配置文件 服务器组可由一个或多个服务器组成 连接的默认组策略 - 组策略是一组面向用户的属性 默认组策略是 ASA 在对隧道用户进行身份验证或授权时将其属性用作默认值的组策略 客户端地址分配方法 - 此方法包括 ASA 分配给客户端的一个或多个 DHCP 服务器或地址池的值 覆盖帐户已禁用指示 - 通过此参数可覆盖从 AAA 服务器收到的 account-disabled 指示器 密码管理 - 通过此参数可向用户发出当前密码即将在指定天数 ( 默认设置为 14 天 ) 内到期的警告, 然后为用户提供机会更改密码 剥除组和剥除领域 - 这些参数向 ASA 指示处理其接收的用户名的方式 这些参数仅适用于收到的 user@realm 形式的用户名 定界符附加到用户名的管理域 (user@abc) 如果剥除领域, 则 ASA 使用用户名和组 ( 如果有 ) 进行身份验证 如果剥除组, 则 ASA 使用用户名和领域 ( 如果有 ) 进行身份验证 输入 strip-realm 命令将在身份验证期间从用户名中删除领域限定符, 而输入 strip-group 命令则删除组限定符 如果同时删除两个限定符, 身份验证将仅基于用户名 否则, 身份验证将基于完整的 username@realm 或 username<delimiter> group 字符串 如果服务器无法解析定界符, 则必须指定 strip-realm 此外,( 仅适用于 L2TP/IPsec 客户端 ) 当指定 strip-group 命令时,ASA 通过从 VPN 客户端提供的用户名获取组名来为用户连接选择连接配置文件 ( 隧道组 ) 要求授权 - 通过此参数可要求在授权后用户才能连接, 或者关闭该要求 授权 DN 属性 - 此参数指定执行授权时要使用的可分辨名称属性 IPsec 隧道组连接参数 IPsec 参数包括 : 客户端身份验证方法 : 预共享密钥和 / 或证书 对于基于预共享密钥的 IKE 连接, 这是与连接策略关联的字母数字密钥本身 ( 长度最多为 128 个字符 ) 对等 ID 验证要求 - 此参数指定是否要求使用对等体的证书来验证对等体的身份 如果指定证书或证书加密钥作为身份验证方法, 则最终用户必须提供有效证书才能进行身份验证 扩展混合身份验证方法 :XAUTH 和混合 XAUTH 当需要使用数字证书进行 ASA 身份验证并使用其他传统方法 ( 例如 RADIUS TACACS+ 或 SecurID) 进行远程 VPN 用户身份验证时, 请使用 isakmp ikev1-user-authentication 命令来实施混合 XAUTH 身份验证 ISAKMP (IKE) 保持连接设置 通过此功能可使 ASA 监控远程对等体的持续在网状态并向该对等体报告其自己的在网状态 如果对等体变为无响应, 则 ASA 会删除该连接 启用 IKE 保持连接可防止在 IKE 对等体失去连接时连接挂起 IKE 保持连接有各种形式 为使此功能正常工作,ASA 及其远程对等体必须支持共同的形式 此功能适用于以下对等体 : Cisco AnyConnect VPN 客户端 思科 IOS 软件 Cisco Secure PIX Firewall 4-3

78 连接配置文件 第 4 章 连接配置文件 组策略和用户 非思科 VPN 客户端不支持 IKE 保持连接 如果配置的是一组混合对等体, 并且其中一些对等体支持 IKE 保持连接而其他对等体不支持 IKE 保持连接, 请对整个组启用 IKE 保持连接 该功能不会影响不支持此功能的对等体 如果禁用 IKE 保持连接, 则具有无响应对等体的连接会保持活动状态直到其超时为止, 因此建议缩短空闲超时 如要更改空闲超时, 请参阅配置组策略 ( 第 4-37 页 ) 注意 如要减少连接成本, 请在该组包含通过 ISDN 线路进行连接的任何客户端的情况下禁用 IKE 保持连接 ISDN 连接通常会在空闲情况下断开连接, 但是 IKE 保持连接机制可防止连接空闲, 从而避免断开连接 如果禁用 IKE 保持连接, 则客户端仅在其 IKE 或 IPsec 密钥到期时才会断开连接 失败的流量不会如同在启用 IKE 保持连接时一样, 使用对等体超时配置文件值断开隧道连接 注意 如果 LAN 到 LAN 配置使用的是 IKE 主模式, 请确保两个对等体的 IKE 保持连接配置相同 两个对等项均必须启用 IKE 保持连接, 或者均必须禁用 IKE 保持连接 如果使用数字证书来配置身份验证, 则可以指定是发送整条证书链 ( 向对等体发送身份证书和所有签发证书 ) 还是仅发送签发证书 ( 包括根证书和任何从属 CA 证书 ) 可以通知使用过时版本的 Windows 客户端软件的用户需要更新其客户端, 并可为其提供机制来获取已更新的客户端版本 可以为所有连接配置文件或为特定连接配置文件配置和更改客户端更新 如果使用数字证书来配置身份验证, 则可以指定用于标识要发送到 IKE 对等体的证书的信任点的名称 SSL VPN 会话的连接配置文件连接参数 下表提供了特定于 SSL VPN(AnyConnect 客户端和无客户端 ) 连接的连接配置文件属性的列表 除了这些属性之外, 还要配置对于所有 VPN 连接通用的常规连接配置文件属性 有关配置连接配置文件的分步信息, 请参阅配置无客户端 SSL VPN 会话的连接配置文件 ( 第 4-17 页 ) 备注 在早期版本中, 连接配置文件 称为 隧道组 连接配置文件需要使用 tunnel-group 命令进行配置 本章经常交替使用这两个术语 表 4-1 SSL VPN 的连接配置文件属性 命令 authentication customization nbns-server group-alias 功能 设置身份验证方法 :AAA 或证书 确定要应用的以前定义的自定义配置名称 自定义配置用于确定用户在登录时看到的窗口的外观 可在配置无客户端 SSL VPN 的过程中配置自定义参数 确定要用于 CIFS 名称解析的 NetBIOS 名称服务服务器 (nbns-server) 的名称 指定可供服务器引用连接配置文件的一个或多个备用名称 在登录时, 用户从下拉菜单中选择组名 4-4

79 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 表 4-1 SSL VPN 的连接配置文件属性 ( 续 ) 命令 group-url dns-group hic-fail-group-policy override-svc-download radius-reject-message 功能 确定一个或多个组 URL 如果配置此属性, 则访问指定 URL 的用户在登录时无需选择组 标识 DNS 服务器组, 该服务器组指定要用于连接配置文件的 DNS 服务器的 DNS 服务器名称 域名 名称服务器 重试次数和超时值 如果使用思科安全桌面管理器将 Group-Based Policy 属性设置为 Use Failure Group-Policy 或 Use Success Group-Policy, if criteria match, 则指定 VPN 功能策略 覆盖为给远程用户下载 AnyConnect VPN 客户端而配置的下载组策略或用户名属性 身份验证被拒绝时, 启用在登录屏幕上显示 RADIUS 拒绝消息 配置连接配置文件 本节介绍单情景模式或多情景模式下连接配置文件的内容和配置 : 备注 多情景模式仅适用于站点到站点的 IKEv2 和 IKEv1, 而不适用于 AnyConnect 无客户端 SSL VPN 旧版思科 VPN 客户端 Apple 本机 VPN 客户端 Microsoft 本机 VPN 客户端或 IKEv1 IPsec 的 ctcp 最大连接配置文件数 ( 第 4-5 页 ) 默认 IPsec 远程访问连接配置文件配置 ( 第 4-6 页 ) 指定远程访问连接配置文件的名称和类型 ( 第 4-7 页 ) 配置远程访问连接配置文件 ( 第 4-6 页 ) 配置 LAN 到 LAN 连接配置文件 ( 第 4-14 页 ) 配置无客户端 SSL VPN 会话的连接配置文件 ( 第 4-17 页 ) 为基于标准的 IKEv2 客户端配置隧道组 ( 第 4-25 页 ) 自定义无客户端 SSL VPN 会话用户的登录窗口 ( 第 4-24 页 ) 配置连接配置文件以对 AnyConnect 客户端进行 RADIUS/SDI 消息支持 ( 第 4-32 页 ) 可以修改默认连接配置文件, 并且可以将新连接配置文件配置为三种隧道组类型的任意一种 如果未在连接配置文件中显式配置某个属性, 则该属性从默认连接配置文件获取其值 默认连接配置文件类型为远程访问 后续参数取决于选择的隧道类型 如要查看所有连接配置文件 ( 包括默认连接配置文件 ) 的当前配置和默认配置, 请输入 show running-config all tunnel-group 命令 最大连接配置文件数 ASA 可以支持的连接配置文件 ( 隧道组 ) 的最大数量是一个平台的最大并发 VPN 会话数 + 5 的函数 尝试添加超过限制的其他隧道组会引发以下消息 : ERROR: The limit of 30 configured tunnel groups has been reached 4-5

80 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 默认 IPsec 远程访问连接配置文件配置 默认远程访问连接配置文件的内容如下 : tunnel-group DefaultRAGroup type remote-access tunnel-group DefaultRAGroup general-attributes no address-pool no ipv6-address-pool authentication-server-group LOCAL accounting-server-group RADIUS default-group-policy DfltGrpPolicy no dhcp-server no strip-realm no password-management no override-account-disable no strip-group no authorization-required authorization-dn-attributes CN OU tunnel-group DefaultRAGroup webvpn-attributes hic-fail-group-policy DfltGrpPolicy customization DfltCustomization authentication aaa no override-svc-download no radius-reject-message dns-group DefaultDNS tunnel-group DefaultRAGroup ipsec-attributes no pre-shared-key peer-id-validate req no chain no trust-point isakmp keepalive threshold 1500 retry 2 no radius-sdi-xauth isakmp ikev1-user-authentication xauth tunnel-group DefaultRAGroup ppp-attributes no authentication pap authentication chap authentication ms-chap-v1 no authentication ms-chap-v2 no authentication eap-proxy IPsec 隧道组常规属性 常规属性跨多个隧道组类型通用 IPsec 远程访问和无客户端 SSL VPN 隧道共享大多数相同的常规属性 IPsec LAN 到 LAN 隧道使用其中一部分属性 有关所有命令的完整说明, 请参阅 思科 ASA 系列命令参考 本节按顺序介绍如何配置远程访问连接配置文件和 LAN 到 LAN 连接配置文件 配置远程访问连接配置文件 在以下远程客户端与中心站点 ASA 之间建立连接时, 请使用远程访问连接配置文件 : AnyConnect 安全移动客户端 ( 通过 SSL 或 IPsec/IKEv2 连接 ) 无客户端 SSL VPN( 基于浏览器, 通过 SSL 连接 ) 思科 ASA 5500 简易 VPN 硬件客户端 ( 通过 IPsec/IKEv1 连接 ) 我们还提供名为 DfltGrpPolicy 的默认组策略 4-6

81 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 如要配置远程访问连接配置文件, 请先配置隧道组常规属性, 然后配置远程访问属性 请参阅以下各节 : 指定远程访问连接配置文件的名称和类型 ( 第 4-7 页 ). 配置远程访问连接配置文件常规属性 ( 第 4-7 页 ). 配置双重身份验证 ( 第 4-10 页 ) 配置远程访问连接配置文件 IPsec IKEv1 属性 ( 第 4-12 页 ). 配置 IPsec 远程访问连接配置文件 PPP 属性 ( 第 4-13 页 ) 指定远程访问连接配置文件的名称和类型 输入 tunnel-group 命令创建连接配置文件, 指定其名称和类型 对于远程访问隧道, 类型为 remote-access: hostname(config)# tunnel-group tunnel_group_name type remote-access hostname(config)# 例如, 如要创建名为 TunnelGroup1 的远程访问连接配置文件, 请输入以下命令 : hostname(config)# tunnel-group TunnelGroup1 type remote-access hostname(config)# 配置远程访问连接配置文件常规属性 如要配置或更改连接配置文件常规属性, 请在以下步骤中指定参数 : 步骤 1 步骤 2 如要配置常规属性, 请在单情景或多情景模式下输入 tunnel-group general-attributes 任务, 从而进入 tunnel-group general-attributes 配置模式 提示符会更改以表示模式发生更改 hostname(config)# tunnel-group tunnel_group_name general-attributes hostname(config-tunnel-general)# 指定要使用的身份验证服务器组 ( 如果有 ) 的名称 如果要在指定服务器组失败的情况下使用 LOCAL 数据库进行身份验证, 请附加关键字 LOCAL: hostname(config-tunnel-general)# authentication-server-group [(interface_name)] groupname [LOCAL] hostname(config-tunnel-general)# 身份验证服务器组的名称最长可为 16 个字符 可以通过在组名之后包含接口的名称来选择性配置特定于接口的身份验证 用于指定隧道终止位置的接口名称必须用括号括起来 以下命令为名为 test 的接口配置特定于接口的身份验证, 使用名为 servergroup1 的服务器进行身份验证 : hostname(config-tunnel-general)# authentication-server-group (test) servergroup1 hostname(config-tunnel-general)# 步骤 3 指定要使用的授权服务器组 ( 如果有 ) 的名称 配置该值时, 用户必须存在于要连接的授权数据库中 : hostname(config-tunnel-general)# authorization-server-group groupname hostname(config-tunnel-general)# 授权服务器组的名称最长可为 16 个字符 例如, 以下命令指定使用授权服务器组 FinGroup: hostname(config-tunnel-general)# authorization-server-group FinGroup hostname(config-tunnel-general)# 4-7

82 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 步骤 4 指定要使用的记帐服务器组 ( 如果有 ) 的名称 : hostname(config-tunnel-general)# accounting-server-group groupname hostname(config-tunnel-general)# 记帐服务器组的名称最长可为 16 个字符 例如, 以下命令指定使用名为 comptroller 的记帐服务器组 : hostname(config-tunnel-general)# accounting-server-group comptroller hostname(config-tunnel-general)# 步骤 5 指定默认组策略的名称 : hostname(config-tunnel-general)# default-group-policy policyname hostname(config-tunnel-general)# 组策略的名称最长可为 64 个字符 以下示例将 DfltGrpPolicy 设置为默认组策略的名称 : hostname(config-tunnel-general)# default-group-policy DfltGrpPolicy hostname(config-tunnel-general)# 步骤 6 指定 DHCP 服务器 ( 最多 10 台服务器 ) 的名称或 IP 地址, 以及 DHCP 地址池 ( 最多 6 个池 ) 的名称 默认设置为无 DHCP 服务器且无地址池 dhcp-server 命令可用于将 ASA 配置为在尝试获取 VPN 客户端的 IP 地址时向指定的 DHCP 服务器发送其他选项 有关详细信息, 请参阅 思科 ASA 系列命令参考 指南中的 dhcp-server 命令 hostname(config-tunnel-general)# dhcp-server server1 [...server10] hostname(config-tunnel-general)# address-pool [(interface name)] address_pool1 [...address_pool6] hostname(config-tunnel-general)# 注意 如果指定接口名称, 则必须用括号将其括起来 步骤 7 可在全局配置模式下使用 ip local pool 命令来配置地址池 如果使用网络准入控制, 请指定 NAC 身份验证服务器组的名称, 用于标识要用于网络准入控制状态验证的身份验证服务器组 将至少一个访问控制服务器配置为支持 NAC 使用 aaa-server 命令命名 ACS 组 然后, 使用 nac-authentication-server-group 命令 ( 对服务器组使用同一名称 ) 以下示例将 acs-group1 标识为要用于 NAC 状态验证的身份验证服务器组 : hostname(config-group-policy)# nac-authentication-server-group acs-group1 hostname(config-group-policy) 以下示例从默认远程访问组继承身份验证服务器组 : hostname(config-group-policy)# no nac-authentication-server-group hostname(config-group-policy) 注意 NAC 需要远程主机上安装思科信任代理 步骤 8 指定在将用户名传递到 AAA 服务器之前从中剥除组还是领域 默认设置为既不剥除组名也不剥除领域 : hostname(config-tunnel-general)# strip-group hostname(config-tunnel-general)# strip-realm hostname(config-tunnel-general)# 4-8

83 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 步骤 9 领域是管理域 如果剥除领域, 则 ASA 使用用户名和组 ( 如果有 ) 进行身份验证 如果剥除组, 则 ASA 使用用户名和领域 ( 如果有 ) 进行身份验证 输入 strip-realm 命令将在身份验证期间从用户名中删除领域限定符, 而使用 strip-group 命令则删除组限定符 如果同时删除两个限定符, 身份验证将仅基于用户名 否则, 身份验证将基于完整的 username@realm 或 username<delimiter> group 字符串 如果服务器无法解析定界符, 则必须指定 strip-realm 或者, 如果服务器是 RADIUS 使用 NT 的 RADIUS 或 LDAP 服务器, 则可以启用密码管理 注意 如果是使用 LDAP 目录服务器进行身份验证, 则通过 Sun Microsystems JAVA 系统目录服务器 ( 以前称为 Sun ONE 目录服务器 ) 和 Microsoft Active Directory 来支持密码管理 Sun - 在 ASA 上配置的用于访问 Sun 目录服务器的 DN 必须能够访问该服务器上的默认密码策略 建议使用目录管理员或具有目录管理员权限的用户作为 DN 也可以将 ACI 放入默认密码策略 Microsoft - 必须配置基于 SSL 的 LDAP 以对 Microsoft Active Directory 启用密码管理 此功能 ( 默认情况下禁用 ) 在当前密码即将到期时警告用户 默认设置为到期前 14 天开始警告用户 : hostname(config-tunnel-general)# password-management hostname(config-tunnel-general)# 如果服务器是 LDAP 服务器, 则可以指定在到期之前多少天 (0 到 180) 开始警告用户即将到期 : hostname(config-tunnel-general)# password-management [password-expire in days n] hostname(config-tunnel-general)# 注意 在 tunnel-group general-attributes 配置模式下输入的 password-management 命令取代了以前在 tunnel-group ipsec-attributes 模式下输入的已弃用的 radius-with-expiry 命令 配置 password-management 命令时,ASA 会在远程用户登录时通知其当前密码即将到期或已到期 然后,ASA 允许用户更改密码 如果当前密码未到期, 用户仍可使用该密码登录 如果尚未配置 RADIUS 或 LDAP 身份验证,ASA 将忽略此命令 请注意, 这不会更改距离密码到期的天数, 而是更改 ASA 在到期之前多少天开始警告用户密码即将到期 如果确实指定了 password-expire-in-days 关键字, 则还必须指定天数 指定此命令且天数设置为 0 会禁用此命令 ASA 不会通知用户密码即将到期, 但是用户可以在密码到期后更改密码 有关详情, 请参见配置 Microsoft Active Directory 设置以进行密码管理 ( 第 4-28 页 ) 注意 ASA 版本 7.1 及更高版本在使用 LDAP 或使用任何支持 MS-CHAPv2 的 RADIUS 连接进行身份验证时, 通常支持 AnyConnect VPN 客户端 思科 IPsec VPN 客户端 SSL VPN 完全隧道客户端和无客户端连接的密码管理 对于 Kerberos/AD(Windows 密码 ) 或 NT 4.0 域, 所有这些连接类型都不支持密码管理 某些支持 MS-CHAP 的 RADIUS 服务器当前不支持 MS-CHAPv2 password-management 命令需要使用 MS-CHAPv2, 因此请咨询您的供应商 RADIUS 服务器 ( 例如, 思科 ACS) 可能会将身份验证请求以代理方式发送到另一个身份验证服务器 但是,ASA 仅与 RADIUS 服务器通信 4-9

84 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 对于 LDAP, 市场上不同的 LDAP 服务器有专有的密码更改方法 目前,ASA 仅对 Microsoft Active Directory 和 Sun LDAP 服务器实施专有密码管理逻辑 本机 LDAP 需要 SSL 连接 在尝试执行 LDAP 密码管理之前, 必须先启用基于 SSL 的 LDAP 默认情况下,LDAP 使用端口 636 步骤 10 或者, 通过输入 override-account-disable 命令, 配置覆盖来自 AAA 服务器的 account-disabled 指示器的能力 : hostname(config-tunnel-general)# override-account-disable hostname(config-tunnel-general)# 注意 允许 override-account-disable 是一项潜在安全风险 步骤 11 指定在从证书派生用于授权查询的名称时要使用的一个或多个属性 此属性指定要将使用者 DN 字段的哪个部分用作授权的用户名 : hostname(config-tunnel-general)# authorization-dn-attributes {primary-attribute [secondary-attribute] use-entire-name} 例如, 以下命令指定使用 CN 属性作为授权的用户名 : hostname(config-tunnel-general)# authorization-dn-attributes CN hostname(config-tunnel-general)# 步骤 12 authorization-dn-attributes 包括 C( 国家 / 地区 ) CN( 公用名称 ) DNQ(DN 限定符 ) EA ( 邮件地址 ) GENQ( 世代限定符 ) GN( 名 ) I( 首字母 ) L( 区域 ) N( 名称 ) O ( 组织 ) OU( 组织单位 ) SER( 序列号 ) SN( 姓 ) SP( 省 / 自治区 / 直辖市 ) T( 职位 ) UID( 用户 ID) 和 UPN( 用户主体名称 ) 指定是否要求成功授权后才允许用户进行连接 默认设置为不要求授权 hostname(config-tunnel-general)# authorization-required hostname(config-tunnel-general)# 配置双重身份验证 双重身份验证是一项可选功能, 该功能要求用户在登录屏幕上输入其他身份验证凭证, 如第二个用户名和密码 指定以下命令来配置双重身份验证 步骤 1 指定辅助身份验证服务器组 此命令指定要用作辅助 AAA 服务器的 AAA 服务器组 注意此命令仅适用于 AnyConnect 客户端 VPN 连接 辅助服务器组无法指定 SDI 服务器组 默认情况下, 无需辅助身份验证 hostname(config-tunnel-general)# secondary-authentication-server-group [interface_name] {none LOCAL groupname [LOCAL]} [use-primary-name] 4-10

85 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 如果使用 none 关键字, 则无需辅助身份验证 groupname 值指定 AAA 服务器组名 LOCAL 指定使用内部服务器数据库, 在与 groupname 值配合使用时,LOCAL 指定回退 例如, 要将主身份验证服务器组设置为 sdi_group 并将辅助身份验证服务器组设置为 ldap_server, 请输入以下命令 : hostname(config-tunnel-general)# authentication-server-group hostname(config-tunnel-general)# secondary-authentication-server-group 注意 如果使用 use-primary-name 关键字, 则登录对话框仅请求一个用户名 此外, 如果用户名提取自数字证书, 则仅使用主要用户名进行身份验证 步骤 2 如果从证书获取次要用户名, 请输入 secondary-username-from-certificate: hostname(config-tunnel-general)# secondary-username-from-certificate C CN... use-script 要从证书提取以用作次要用户名的 DN 字段值与主要 username-from-certificate 命令相同 或者, 也可以指定 use-script 关键字, 该关键字指示 ASA 使用 ASDM 生成的脚本文件 例如, 如要指定 公用名称 作为主要用户名字段并指定 组织单位 作为次要用户名字段, 请输入以下命令 : hostname(config-tunnel-general)# tunnel-group test1 general-attributes hostname(config-tunnel-general)# username-from-certificate cn hostname(config-tunnel-general)# secondary-username-from-certificate ou 步骤 3 在 tunnel-group webvpn-attributes 模式下使用 secondary-pre-fill-username 命令来实现从客户端证书提取次要用户名以在身份验证中使用 使用关键字指定此命令适用于无客户端连接还是 SSL VPN (AnyConnect) 客户端连接, 以及是否要对最终用户隐藏提取的用户名 此功能默认为已禁用 无客户端和 SSL 客户端选项可同时存在, 但是必须在不同命令中对其进行配置 hostname(config-tunnel-general)# secondary-pre-fill-username-from-certificate {clientless ssl-client} [hide] 例如, 如要指定使用 pre-fill-username 对连接进行主身份验证和辅助身份验证, 请输入以下命令 : hostname(config-tunnel-general)# tunnel-group test1 general-attributes hostname(config-tunnel-general)# pre-fill-username ssl-client hostname(config-tunnel-general)# secondary-pre-fill-username ssl-client 步骤 4 指定要使用哪些身份验证服务器来获取适用于连接的授权属性 默认选择是主身份验证服务器 此命令仅对双重身份验证有意义 hostname(config-tunnel-general)# authentication-attr-from-server {primary secondary} 例如, 如要指定使用辅助身份验证服务器, 请输入以下命令 : hostname(config-tunnel-general)# tunnel-group test1 general-attributes hostname(config-tunnel-general)# authentication-attr-from-server secondary 步骤 5 指定要与会话关联的身份验证用户名 (primary 或 secondary) 默认值为 primary 在启用双重身份验证的情况下, 会话可能会对两个不同用户名进行身份验证 管理员必须将其中一个进行身份验证的用户名指定为会话用户名 会话用户名是为记帐 会话数据库 系统日志和调试输出提供的用户名 hostname(config-tunnel-general)# authenticated-session-username {primary secondary} 例如, 如要指定与会话关联的身份验证用户名必须来自辅助身份验证服务器, 请输入以下命令 : hostname(config-tunnel-general)# tunnel-group test1 general-attributes hostname(config-tunnel-general)# authenticated-session-username secondary 4-11

86 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 配置远程访问连接配置文件 IPsec IKEv1 属性 如要为远程访问连接配置文件配置 IPsec IKEv1 属性, 请执行以下步骤 以下说明假设您已经创建远程访问连接配置文件 远程访问连接配置文件比 LAN 到 LAN 连接配置文件具有更多属性 步骤 1 如要指定远程访问隧道组的 IPsec 属性, 请在单情景或多情景模式下输入以下命令进入 tunnel-group ipsec-attributes 模式 提示符会更改以表示模式发生更改 hostname(config)# tunnel-group tunnel-group-name ipsec-attributes hostname(config-tunnel-ipsec)# 此命令进入 tunnel-group ipsec-attributes 配置模式, 在此模式下可在单情景或多情景模式下配置 remote-access tunnel-group IPsec 属性 例如, 以下命令指定后面的 tunnel-group ipsec-attributes 模式命令与名为 TG1 的连接配置文件相关 请注意, 提示符会更改以表示目前处于 tunnel-group ipsec-attributes 模式 : hostname(config)# tunnel-group TG1 type remote-access hostname(config)# tunnel-group TG1 ipsec-attributes hostname(config-tunnel-ipsec)# 步骤 2 根据预共享密钥, 指定用于支持 IKEv1 连接的预共享密钥 例如, 以下命令为 IPsec IKEv1 远程访问连接配置文件指定预共享密钥 xyzx 来支持 IKEv1 连接 : hostname(config-tunnel-ipsec)# ikev1 pre-shared-key xyzx hostname(config-tunnel-ipsec)# 步骤 3 指定是否使用对等体的证书来验证对等体的身份 : hostname(config-tunnel-ipsec)# peer-id-validate option hostname(config-tunnel-ipsec)# 可能的 option 值为 req( 必需 ) cert( 如果受证书支持 ) 和 nocheck( 不检查 ) 默认值为 req 例如, 以下命令指定必需 peer-id 验证 : hostname(config-tunnel-ipsec)# peer-id-validate req hostname(config-tunnel-ipsec)# 步骤 4 指定是否启用证书链的发送 以下命令在传输中包含根证书和任何从属 CA 证书 : hostname(config-tunnel-ipsec)# chain hostname(config-tunnel-ipsec)# 此属性适用于所有 IPsec 隧道组类型 步骤 5 指定用于标识要发送到 IKE 对等体的证书的信任点的名称 : hostname(config-tunnel-ipsec)# ikev1 trust-point trust-point-name hostname(config-tunnel-ipsec)# 以下命令指定 mytrustpoint 作为要发送到 IKE 对等体的证书的名称 : hostname(config-ipsec)# ikev1 trust-point mytrustpoint 步骤 6 指定 ISAKMP 保持连接阈值和允许的重试次数 : hostname(config-tunnel-ipsec)# isakmp keepalive threshold <number> retry <number> hostname(config-tunnel-ipsec)# threshold 参数指定在开始保持连接监控之前允许对等体空闲的秒数 (10 至 3600) retry 参数是没有收到保持连接响应后的重试间隔 (2 至 10 秒 ) 默认情况下会启用 IKE 保持连接 如要禁用 ISAKMP 保持连接, 请输入 isakmp keepalive disable 4-12

87 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 例如, 以下命令将 IKE 保持连接阈值设置为 15 秒, 并将重试间隔设置为 10 秒 : hostname(config-tunnel-ipsec)# isakmp keepalive threshold 15 retry 10 hostname(config-tunnel-ipsec)# threshold 参数的默认值对于远程访问为 300, 对于 LAN 到 LAN 为 10, 而 retry 参数的默认值为 2 如要指定中心站点 ( 安全网关 ) 绝不应启动 ISAKMP 监控, 请输入以下命令 : hostname(config-tunnel-ipsec)# isakmp keepalive threshold infinite hostname(config-tunnel-ipsec)# 步骤 7 指定 ISAKMP 混合身份验证方法 (XAUTH 或混合 XAUTH) 当需要使用数字证书进行 ASA 身份验证并使用其他传统方法 ( 例如 RADIUS TACACS+ 或 SecurID) 进行远程 VPN 用户身份验证时, 请使用 isakmp ikev1-user-authentication 命令来实施混合 XAUTH 身份验证 混合 XAUTH 将 IKE 的阶段 1 分为以下两个步骤, 统称为混合身份验证 : a. ASA 使用标准公钥方法对远程 VPN 用户进行身份验证 这将建立进行单向身份验证的 IKE 安全关联 b. 然后,XAUTH 交换对远程 VPN 用户进行身份验证 此扩展身份验证可以使用其中一种受支持的传统身份验证方法 注意 必须配置身份验证服务器, 创建预共享密钥并配置信任点, 然后才能将身份验证类型设置为混合 可以将 isakmp ikev1-user-authentication 命令与可选的 interface 参数配合使用来指定特定接口 当省略 interface 参数时, 该命令适用于所有接口, 并且在未指定 per-interface 命令时备用 如果为连接配置文件中指定了两个 isakmp ikev1-user-authentication 命令, 并且一个使用 interface 参数而另一个不使用该参数, 则指定 interface 的命令对于该特定接口而言优先 例如, 以下命令为名为 example-group 的连接配置文件在内部接口上启用混合 XAUTH: hostname(config)# tunnel-group example-group type remote-access hostname(config)# tunnel-group example-group ipsec-attributes hostname(config-tunnel-ipsec)# isakmp ikev1-user-authentication (inside) hybrid hostname(config-tunnel-ipsec)# 配置 IPsec 远程访问连接配置文件 PPP 属性 如要为远程访问连接配置文件配置点对点协议属性, 请执行以下步骤 PPP 属性仅适用于 IPsec 远程访问连接配置文件 以下说明假设您已经创建 IPsec 远程访问连接配置文件 步骤 1 进入 tunnel-group ppp-attributes 配置模式, 在此模式下可通过输入以下命令来配置 remote-access tunnel-group PPP 属性 提示符会更改以表示模式发生更改 : hostname(config)# tunnel-group tunnel-group-name type remote-access hostname(config)# tunnel-group tunnel-group-name ppp-attributes hostname(config-tunnel-ppp)# 4-13

88 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 例如, 以下命令指定后面的 tunnel-group ppp-attributes 模式命令与名为 TG1 的连接配置文件相关 请注意, 提示符会更改以表示目前处于 tunnel-group ppp-attributes 模式 : hostname(config)# tunnel-group TG1 type remote-access hostname(config)# tunnel-group TG1 ppp-attributes hostname(config-tunnel-ppp)# 步骤 2 指定是否对 PPP 连接使用特定协议来启用身份验证 协议值可以是以下任何一项 : pap - 对 PPP 连接启用密码身份验证协议 chap - 对 PPP 连接启用质询握手身份验证协议 ms-chap-v1 或 ms-chap-v2 - 对 PPP 连接启用 Microsoft 质询握手身份验证协议版本 1 或版本 2 eap - 对 PPP 连接启用可扩展身份验证协议 默认情况下会启用 CHAP 和 MSCHAPv1 此命令的语法为 : hostname(config-tunnel-ppp)# authentication protocol hostname(config-tunnel-ppp)# 如要对特定协议禁用身份验证, 请使用该命令的 no 形式 : hostname(config-tunnel-ppp)# no authentication protocol hostname(config-tunnel-ppp)# 例如, 以下命令对 PPP 连接启用 PAP 协议 : hostname(config-tunnel-ppp)# authentication pap hostname(config-tunnel-ppp)# 以下命令对 PPP 连接启用 MS-CHAP 版本 2 协议 : hostname(config-tunnel-ppp)# authentication ms-chap-v2 hostname(config-tunnel-ppp)# 以下命令对 PPP 连接启用 EAP-PROXY 协议 : hostname(config-tunnel-ppp)# authentication pap hostname(config-tunnel-ppp)# 以下命令对 PPP 连接禁用 MS-CHAP 版本 1 协议 : hostname(config-tunnel-ppp)# no authentication ms-chap-v1 hostname(config-tunnel-ppp)# 配置 LAN 到 LAN 连接配置文件 IPsec LAN 到 LAN VPN 连接配置文件仅适用于 LAN 到 LAN IPsec 客户端连接 虽然您配置的许多参数与 IPsec 远程访问连接配置文件的参数相同, 但是 LAN 到 LAN 隧道的参数更少 以下各节介绍如何配置 LAN 到 LAN 连接配置文件 : 指定 LAN 到 LAN 连接配置文件的名称和类型 ( 第 4-15 页 ) 配置 LAN 到 LAN 连接配置文件常规属性 ( 第 4-15 页 ) 配置 LAN 到 LAN IPsec IKEv1 属性 ( 第 4-16 页 ) 4-14

89 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 默认 LAN 到 LAN 连接配置文件配置 默认 LAN 到 LAN 连接配置文件的内容如下 : tunnel-group DefaultL2LGroup type ipsec-l2l tunnel-group DefaultL2LGroup general-attributes no accounting-server-group default-group-policy DfltGrpPolicy tunnel-group DefaultL2LGroup ipsec-attributes no ikev1 pre-shared-key peer-id-validate req no chain no ikev1 trust-point isakmp keepalive threshold 10 retry 2 LAN 到 LAN 连接配置文件的参数比远程访问连接配置文件少, 并且其中大多数参数对于两个组相同 为便于配置连接, 此处将其单独列出 未显式配置的所有参数从默认连接配置文件继承其值 指定 LAN 到 LAN 连接配置文件的名称和类型 如要指定连接配置文件的名称和类型, 请输入 tunnel-group 命令, 如下所示 : hostname(config)# tunnel-group tunnel_group_name type tunnel_type 对于 LAN 到 LAN 隧道, 类型为 ipsec-l2l; 例如, 如要创建名为 docs 的 LAN 到 LAN 连接配置文件, 请输入以下命令 : hostname(config)# tunnel-group docs type ipsec-l2l hostname(config)# 配置 LAN 到 LAN 连接配置文件常规属性 如要配置连接配置文件常规属性, 请执行以下步骤 : 步骤 1 通过在单情景或多情景模式下指定 general-attributes 关键字来进入 tunnel-group general-attributes 模式 : hostname(config)# tunnel-group_tunnel-group-name general-attributes hostname(config-tunnel-general)# 提示符会更改以表示现在处于 config-general 模式, 在此模式下可配置隧道组常规属性 例如, 对于名为 docs 的连接配置文件, 请输入以下命令 : hostname(config)# tunnel-group_docs general-attributes hostname(config-tunnel-general)# 步骤 2 指定要使用的记帐服务器组 ( 如果有 ) 的名称 : hostname(config-tunnel-general)# accounting-server-group groupname hostname(config-tunnel-general)# 例如, 以下命令指定使用记帐服务器组 acctgserv1: hostname(config-tunnel-general)# accounting-server-group acctgserv1 hostname(config-tunnel-general)# 4-15

90 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 步骤 3 指定默认组策略的名称 : hostname(config-tunnel-general)# default-group-policy policyname hostname(config-tunnel-general)# 例如, 以下命令指定默认组策略的名称为 MyPolicy: hostname(config-tunnel-general)# default-group-policy MyPolicy hostname(config-tunnel-general)# 配置 LAN 到 LAN IPsec IKEv1 属性 如要配置 IPsec IKEv1 属性, 请执行以下步骤 : 步骤 1 如要配置隧道组 IPsec IKEv1 属性, 请在单情景或多情景模式下输入具有 IPsec-attributes 关键字的 tunnel-group 命令进入 tunnel-group ipsec-attributes 配置模式 hostname(config)# tunnel-group tunnel-group-name ipsec-attributes hostname(config-tunnel-ipsec)# 例如, 以下命令进入 config-ipsec 模式, 以便您为名为 TG1 的连接配置文件的配置参数 : hostname(config)# tunnel-group TG1 ipsec-attributes hostname(config-tunnel-ipsec)# 步骤 2 提示符会更改以表示现在处于 tunnel-group ipsec-attributes 配置模式 根据预共享密钥, 指定用于支持 IKEv1 连接的预共享密钥 hostname(config-tunnel-ipsec)# ikev1 pre-shared-key key hostname(config-tunnel-ipsec)# 例如, 以下命令为 LAN 到 LAN 连接配置文件指定预共享密钥 XYZX 来支持 IKEv1 连接 : hostname(config-tunnel-ipsec)# ikev1 pre-shared-key xyzx hostname(config-tunnel-general)# 步骤 3 指定是否使用对等体的证书来验证对等体的身份 : hostname(config-tunnel-ipsec)# peer-id-validate option hostname(config-tunnel-ipsec)# 可用选项为 req( 必需 ) cert( 如果受证书支持 ) 和 nocheck( 不检查 ) 默认值为 req 例如, 以下命令将 peer-id-validate 选项设置为 nocheck: hostname(config-tunnel-ipsec)# peer-id-validate nocheck hostname(config-tunnel-ipsec)# 步骤 4 指定是否启用证书链的发送 此操作在传输中包含根证书和任何从属 CA 证书 : hostname(config-tunnel-ipsec)# chain hostname(config-tunnel-ipsec)# 您可以将此属性应用到所有隧道组类型 步骤 5 指定用于标识要发送到 IKE 对等体的证书的信任点的名称 : hostname(config-tunnel-ipsec)# trust-point trust-point-name hostname(config-tunnel-ipsec)# 4-16

91 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 例如, 以下命令将信任点名称设置为 mytrustpoint: hostname(config-tunnel-ipsec)# trust-point mytrustpoint hostname(config-tunnel-ipsec)# 步骤 6 您可以将此属性应用到所有隧道组类型 指定 ISAKMP (IKE) 保持连接阈值和允许的重试次数 threshold 参数指定在开始保持连接监控之前允许对等体空闲的秒数 (10 至 3600) retry 参数是没有收到保持连接响应后的重试间隔 (2 至 10 秒 ) 默认情况下会启用 IKE 保持连接 如要禁用 IKE 保持连接, 请输入 no 形式的 isakmp 命令 : hostname(config)# isakmp keepalive threshold <number> retry <number> hostname(config-tunnel-ipsec)# 例如, 以下命令将 ISAKMP 保持连接阈值设置为 15 秒, 并将重试间隔设置为 10 秒 : hostname(config-tunnel-ipsec)# isakmp keepalive threshold 15 retry 10 hostname(config-tunnel-ipsec)# LAN 到 LAN 的 threshold 参数的默认值为 10,retry 参数的默认值为 2 如要指定中心站点 ( 安全网关 ) 绝不应启动 ISAKMP 监控, 请输入以下命令 : hostname(config-tunnel-ipsec)# isakmp keepalive threshold infinite hostname(config-tunnel-ipsec)# 步骤 7 指定 ISAKMP 混合身份验证方法 (XAUTH 或混合 XAUTH) 当需要使用数字证书进行 ASA 身份验证并使用其他传统方法 ( 例如 RADIUS TACACS+ 或 SecurID) 进行远程 VPN 用户身份验证时, 请使用 isakmp ikev1-user-authentication 命令来实施混合 XAUTH 身份验证 混合 XAUTH 将 IKE 的阶段 1 分为以下两个步骤, 统称为混合身份验证 : a. ASA 使用标准公钥方法对远程 VPN 用户进行身份验证 这将建立进行单向身份验证的 IKE 安全关联 b. 然后,XAUTH 交换对远程 VPN 用户进行身份验证 此扩展身份验证可以使用其中一种受支持的传统身份验证方法 注意 必须配置身份验证服务器, 创建预共享密钥并配置信任点, 然后才能将身份验证类型设置为混合 例如, 以下命令对名为 example-group 的连接配置文件启用混合 XAUTH: hostname(config)# tunnel-group example-group type remote-access hostname(config)# tunnel-group example-group ipsec-attributes hostname(config-tunnel-ipsec)# isakmp ikev1-user-authentication hybrid hostname(config-tunnel-ipsec)# 配置无客户端 SSL VPN 会话的连接配置文件 无客户端 SSL VPN 连接配置文件的隧道组常规属性与 IPsec 远程访问连接配置文件的隧道组常规属性相同, 但隧道组类型为 webvpn, 并且 strip-group 和 strip-realm 命令不适用 可单独定义特定于无客户端 SSL VPN 的属性 以下各节介绍如何配置无客户端 SSL VPN 连接配置文件 : 配置无客户端 SSL VPN 会话的常规隧道组属性 ( 第 4-18 页 ) 配置无客户端 SSL VPN 会话的隧道组属性 ( 第 4-20 页 ) 4-17

92 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 配置无客户端 SSL VPN 会话的常规隧道组属性 如要配置或更改连接配置文件常规属性, 请在以下步骤中指定参数 步骤 1 如要配置常规属性, 请输入 tunnel-group general-attributes 命令, 该命令在单情景或多情景模式下进入 tunnel-group general-attributes 配置模式 请注意, 提示符会更改 : hostname(config)# tunnel-group tunnel_group_name general-attributes hostname(config-tunnel-general)# 如要配置上一节中创建的 TunnelGroup3 的常规属性, 请输入以下命令 : hostname(config)# tunnel-group TunnelGroup3 general-attributes hostname(config-tunnel-general)# 步骤 2 指定要使用的身份验证服务器组 ( 如果有 ) 的名称 如果要在指定服务器组失败的情况下使用 LOCAL 数据库进行身份验证, 请附加关键字 LOCAL: hostname(config-tunnel-general)# authentication-server-group groupname [LOCAL] hostname(config-tunnel-general)# 例如, 如要配置名为 test 的身份验证服务器组, 并且要在身份验证服务器组失败的情况下回退到 LOCAL 服务器, 请输入以下命令 : hostname(config-tunnel-general)# authentication-server-group test LOCAL hostname(config-tunnel-general)# authentication-server-group 名称用于标识以前配置的身份验证服务器或服务器组 使用 aaa-server 命令配置身份验证服务器 组标记的最大长度为 16 个字符 也可以通过在组名之前包含括在括号中的接口名称来配置特定于接口的身份验证 默认情况下, 以下接口可用 : inside - 接口 GigabitEthernet0/1 的名称 outside - 接口 GigabitEthernet0/0 的名称 注意 ASA 的外部接口地址 ( 适用于 IPv4/IPv6) 不能与专用端地址空间重叠 您已配置 ( 使用 interface 命令 ) 的其他接口也可用 以下命令为名为 outside 的接口配置特定于接口的身份验证, 使用服务器 servergroup1 进行身份验证 : hostname(config-tunnel-general)# authentication-server-group (outside) servergroup1 hostname(config-tunnel-general)# 步骤 3 或者, 指定要使用的授权服务器组 ( 如果有 ) 的名称 如果未使用授权, 请转至步骤 6 配置该值时, 用户必须存在于要连接的授权数据库中 : hostname(config-tunnel-general)# authorization-server-group groupname hostname(config-tunnel-general)# 使用 aaa-server 命令配置授权服务器 组标记的最大长度为 16 个字符 例如, 以下命令指定使用授权服务器组 FinGroup: hostname(config-tunnel-general)# authorization-server-group FinGroup hostname(config-tunnel-general)# 步骤 4 指定是否要求成功授权后才允许用户进行连接 默认设置为不要求授权 hostname(config-tunnel-general)# authorization-required hostname(config-tunnel-general)# 4-18

93 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 步骤 5 指定在从证书派生用于授权查询的名称时要使用的一个或多个属性 此属性指定要将使用者 DN 字段的哪个部分用作授权的用户名 : hostname(config-tunnel-general)# authorization-dn-attributes {primary-attribute [secondary-attribute] use-entire-name} 例如, 以下命令指定使用 CN 属性作为授权的用户名 : hostname(config-tunnel-general)# authorization-dn-attributes CN hostname(config-tunnel-general)# 步骤 6 authorization-dn-attributes 包括 C( 国家 / 地区 ) CN( 公用名称 ) DNQ(DN 限定符 ) EA ( 邮件地址 ) GENQ( 世代限定符 ) GN( 名 ) I( 首字母 ) L( 区域 ) N( 名称 ) O ( 组织 ) OU( 组织单位 ) SER( 序列号 ) SN( 姓 ) SP( 省 / 自治区 / 直辖市 ) T( 职位 ) UID( 用户 ID) 和 UPN( 用户主体名称 ) 或者, 指定要使用的记帐服务器组 ( 如果有 ) 的名称 如果未使用记帐, 请转至步骤 7 使用 aaa-server 命令配置记帐服务器 组标记的最大长度为 16 个字符 : hostname(config-tunnel-general)# accounting-server-group groupname hostname(config-tunnel-general)# 例如, 以下命令指定使用记帐服务器组 comptroller: hostname(config-tunnel-general)# accounting-server-group comptroller hostname(config-tunnel-general)# 步骤 7 或者, 指定默认组策略的名称 默认值为 DfltGrpPolicy: hostname(config-tunnel-general)# default-group-policy policyname hostname(config-tunnel-general)# 以下示例将 MyDfltGrpPolicy 设置为默认组策略的名称 : hostname(config-tunnel-general)# default-group-policy MyDfltGrpPolicy hostname(config-tunnel-general)# 步骤 8 或者, 指定 DHCP 服务器 ( 最多 10 台服务器 ) 的名称或 IP 地址, 以及 DHCP 地址池 ( 最多 6 个池 ) 的名称 以空格分隔列表项 默认设置为无 DHCP 服务器且无地址池 hostname(config-tunnel-general)# dhcp-server server1 [...server10] hostname(config-tunnel-general)# address-pool [(interface name)] address_pool1 [...address_pool6] hostname(config-tunnel-general)# 注意 接口名称必须用括号括起来 步骤 9 可在全局配置模式下使用 ip local pool 命令来配置地址池 有关配置地址池的信息, 请参阅第 5 章 VPN 的 IP 地址 或者, 如果服务器是 RADIUS 使用 NT 的 RADIUS 或 LDAP 服务器, 则可以启用密码管理 注意 如果是使用 LDAP 目录服务器进行身份验证, 则通过 Sun Microsystems JAVA 系统目录服务器 ( 以前称为 Sun ONE 目录服务器 ) 和 Microsoft Active Directory 来支持密码管理 Sun - 在 ASA 上配置的用于访问 Sun 目录服务器的 DN 必须能够访问该服务器上的默认密码策略 建议使用目录管理员或具有目录管理员权限的用户作为 DN 也可以将 ACI 放入默认密码策略 Microsoft - 必须配置基于 SSL 的 LDAP 以对 Microsoft Active Directory 启用密码管理 4-19

94 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 此功能 ( 默认情况下启用 ) 在当前密码即将到期时警告用户 默认设置为到期前 14 天开始警告用户 : hostname(config-tunnel-general)# password-management hostname(config-tunnel-general)# 如果服务器是 LDAP 服务器, 则可以指定在到期之前多少天 (0 到 180) 开始警告用户即将到期 : hostname(config-tunnel-general)# password-management [password-expire in days n] hostname(config-tunnel-general)# 注意 在 tunnel-group general-attributes 配置模式下输入的 password-management 命令取代了以前在 tunnel-group ipsec-attributes 模式下输入的已弃用的 radius-with-expiry 命令 步骤 10 配置此命令时,ASA 会在远程用户登录时通知其当前密码即将到期或已到期 然后,ASA 允许用户更改密码 如果当前密码未到期, 用户仍可使用该密码登录 如果尚未配置 RADIUS 或 LDAP 身份验证,ASA 将忽略此命令 请注意, 这不会更改距离密码到期的天数, 而是更改 ASA 在到期之前多少天开始警告用户密码即将到期 如果确实指定了 password-expire-in-days 关键字, 则还必须指定天数 有关详情, 请参见配置 Microsoft Active Directory 设置以进行密码管理 ( 第 4-28 页 ) 指定此命令且天数设置为 0 会禁用此命令 ASA 不通知用户密码即将到期, 但是用户可以在密码到期后更改密码 或者, 通过输入 override-account-disable 命令, 配置覆盖来自 AAA 服务器的 account-disabled 指示器的能力 : hostname(config-tunnel-general)# override-account-disable hostname(config-tunnel-general)# 备注 允许覆盖 account-disabled 是一项潜在安全风险 配置无客户端 SSL VPN 会话的隧道组属性 如要配置特定于无客户端 SSL VPN 连接配置文件的参数, 请遵循本节中的步骤 无客户端 SSL VPN 以前称为 WebVPN, 并且您在 tunnel-group webvpn-attributes 模式下配置这些属性 步骤 1 如要指定无客户端 SSL VPN 隧道组的属性, 请输入以下命令进入 tunnel-group webvpn-attributes 模式 提示符会更改以表示模式发生更改 : hostname(config)# tunnel-group tunnel-group-name webvpn-attributes hostname(config-tunnel-ipsec)# 例如, 如要为名为 sales 的无客户端 SSL VPN 隧道组指定 webvpn-attributes, 请输入以下命令 : hostname(config)# tunnel-group sales webvpn-attributes hostname(config-tunnel-webvpn)# 4-20

95 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 步骤 2 如要指定要使用的身份验证方法 (AAA 和 / 或数字证书 ), 请输入 authentication 命令 可以按任意顺序指定 aaa 和 / 或证书 hostname(config-tunnel-webvpn)# authentication authentication_method hostname(config-tunnel-webvpn)# 例如, 以下命令同时允许 AAA 和证书身份验证 : hostname(config-tunnel-webvpn)# authentication aaa certificate hostname(config-tunnel-webvpn)# 应用自定义自定义配置用于确定用户在登录时看到的窗口的外观 可在配置无客户端 SSL VPN 的过程中配置自定义参数 如要应用以前定义的网页自定义来更改用户在登录时看到的网页外观, 请在 username webvpn 配置模式下输入 customization 命令 : hostname(config-username-webvpn)# customization {none value customization_name} hostname(config-username-webvpn)# 例如, 如要使用名为 blueborder 的自定义, 请输入以下命令 : hostname(config-username-webvpn)# customization value blueborder hostname(config-username-webvpn)# 在 webvpn 模式下输入 customization 命令可配置自定义本身 以下示例显示一个命令序列, 它首先建立名为 123 的自定义来定义密码提示 然后, 该示例定义名为 test 的无客户端 SSL VPN 隧道组, 并使用 customization 命令指定使用名为 123 的自定义 : hostname(config)# webvpn hostname(config-webvpn)# customization 123 hostname(config-webvpn-custom)# password-prompt Enter password hostname(config-webvpn)# exit hostname(config)# tunnel-group test type webvpn hostname(config)# tunnel-group test webvpn-attributes hostname(config-tunnel-webvpn)# customization value 123 hostname(config-tunnel-webvpn)# 步骤 3 ASA 查询 NetBIOS 名称服务器以将 NetBIOS 名称映射到 IP 地址 无客户端 SSL VPN 要求 NetBIOS 访问或共享远程系统上的文件 无客户端 SSL VPN 使用 NetBIOS 和 CIFS 协议来访问或共享远程系统上的文件 当尝试使用 Windows 计算机的计算机名称来与其建立文件共享连接时, 指定的文件服务器与标识网络上的资源的特定 NetBIOS 名称对应 如要使 NBNS 功能可运行, 必须配置至少一个 NetBIOS 服务器 ( 主机 ) 可以配置最多三个 NBNS 服务器来实现冗余 ASA 使用列表中的第一个服务器进行 NetBIOS/CIFS 域名解析 如果查询失败, 则使用下一个服务器 如要指定用于 CIFS 名称解析的 NBNS(NetBIOS 名称服务 ) 服务器的名称, 请使用 nbns-server 命令 可以输入最多三个服务器条目 您配置的第一台服务器为主服务器, 其他为备用服务器 ( 用于实现冗余 ) 您还可以指定这是否为主浏览器( 而不只是 WINS 服务器 ) 超时间隔和重试次数 WINS 服务器或主浏览器通常与 ASA 位于同一网络上, 或者可从该网络进行访问 必须先指定超时间隔再指定重试次数 : hostname(config-tunnel-webvpn)# nbns-server {host-name IP_address} [master] [timeout seconds] [retry number] hostname(config-tunnel-webvpn)# 4-21

96 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 例如, 如要将名为 nbnsprimary 的服务器配置为主服务器并将服务器 配置为辅助服务器, 每个服务器允许重试三次且超时为 5 秒, 请输入以下命令 : hostname(config)# name nbnsprimary hostname(config-tunnel-webvpn)# nbns-server nbnsprimary master timeout 5 retry 3 hostname(config-tunnel-webvpn)# nbns-server timeout 5 retry 3 hostname(config-tunnel-webvpn)# 步骤 4 超时间隔范围为 1 至 30 秒 ( 默认值为 2), 重试次数的范围可为 0 至 10( 默认值为 2) tunnel-group webvpn-attributes 配置模式下的 nbns-server 命令取代了 webvpn 模式下已弃用的 nbns-server 命令 如要指定组的备用名称, 请使用 group-alias 命令 指定组别名会创建可供用户引用隧道组的一个或多个备用名称 此处指定的组别名显示在用户登录页面上的下拉列表中 每个组可具有多个别名或没有别名, 在不同命令中分别进行指定 此功能在同一个组具有多个常见名称 ( 如 Devtest 和 QA ) 时有用 对于每个组别名, 请输入 group-alias 命令 默认情况下会启用每个别名 可以选择性显式启用或禁用每个别名 : hostname(config-tunnel-webvpn)# group-alias alias [enable disable] hostname(config-tunnel-webvpn)# 例如, 如要对名为 QA 的隧道组启用别名 QA 和 Devtest, 请输入以下命令 : hostname(config-tunnel-webvpn)# group-alias QA enable hostname(config-tunnel-webvpn)# group-alias Devtest enable hostname(config-tunnel-webvpn)# 注意 必须启用 webvpn tunnel-group-list 才会显示 ( 下拉 ) 组列表 步骤 5 如要指定组的传入 URL 或 IP 地址, 请使用 group-url 命令 指定组 URL 或 IP 地址后, 用户在登录时无需选择组 当用户登录时,ASA 在 tunnel-group-policy 表中查找用户的传入 URL 或地址 如果找到 URL 或地址并且连接配置文件中启用了 group-url, 则 ASA 将自动选择关联的连接配置文件, 并在登录窗口中仅向用户显示用户名和密码字段 这不仅简化了用户界面, 还增加了绝不会向用户显示组列表的优点 用户看到的登录窗口使用为该连接配置文件配置的自定义 如果禁用了 URL 或地址并配置了别名, 则还会显示组下拉列表, 并且用户必须进行选择 您可以为组配置多个 URL 或地址 ( 或不配置任何 URL 或地址 ) 每个 URL 或地址可以单独启用或禁用 您必须对指定的每个 URL 或地址使用单独的 group-url 命令 必须指定整个 URL 或地址, 包括 http 或 https 协议 不能将同一 URL 或地址与多个组关联 ASA 在接受连接配置文件的 URL 或地址之前会验证 URL 或地址的唯一性 对于每个组 URL 或地址, 请输入 group-url 命令 可以选择性显式启用 ( 默认 ) 或禁用每个 URL 或别名 : hostname(config-tunnel-webvpn)# group-url url [enable disable] hostname(config-tunnel-webvpn)# Url 指定此隧道组的 URL 或 IP 地址 例如, 如要对名为 RadiusServer 的隧道组启用组 URL 和 请输入以下命令 : hostname(config)# tunnel-group RadiusServer type webvpn hostname(config)# tunnel-group RadiusServer general-attributes hostname(config-tunnel-general)# authentication server-group RADIUS hostname(config-tunnel-general)# accounting-server-group RADIUS hostname(config-tunnel-general)# tunnel-group RadiusServer webvpn-attributes 4-22

97 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 hostname(config-tunnel-webvpn)# group-alias Cisco Remote Access enable hostname(config-tunnel-webvpn)# group-url enable hostname(config-tunnel-webvpn)# group-url enable hostname(config-tunnel-webvpn)# 步骤 6 有关更广泛的示例, 请参阅自定义无客户端 SSL VPN 会话用户的登录窗口 ( 第 4-24 页 ) 如要在某些用户输入其中一个 group-url 的情况下免除其逐个连接配置文件运行思科安全桌面, 请输入以下命令 : hostname(config-tunnel-webvpn)# without-csd hostname(config-tunnel-webvpn)# 注意 输入此命令会阻止检测这些会话的终端状况, 因此, 您可能需要调整动态访问策略 (DAP) 配置 步骤 7 如要指定用于无客户端 SSL VPN 会话的连接配置文件的 DNS 服务器组, 请使用 dns-group 命令 您指定的组必须是已在全局配置模式下配置的组 ( 使用 dns server-group 和 name-server 命令 ) 默认情况下, 连接配置文件使用 DNS 服务器组 DefaultDNS 但是, 必须先配置该组, 然后安全设备才能解析 DNS 请求 以下示例配置名为 corp_dns 的新 DNS 服务器组并为连接配置文件 telecommuters 指定该服务器组 : hostname(config)# dns server-group corp_dns hostname(config-dns-server-group)# domain-name cisco.com hostname(config-dns-server-group)# name-server hostname(config)# tunnel-group telecommuters webvpn-attributes hostname(config-tunnel-webvpn)# dns-group corp_dns hostname(config-tunnel-webvpn)# 步骤 8 ( 可选 ) 如要启用从客户端证书提取用户名用于身份验证和授权, 请在 tunnel-group webvpn-attributes 模式下使用 pre-fill-username 命令 没有默认值 hostname(config)# pre-fill-username {ssl-client clientless} pre-fill-username 命令支持将从 username-from-certificate 命令中 ( 在 tunnel-group general-attributes 模式下 ) 指定的证书字段中提取的用户名用作用户名 / 密码身份验证和授权的用户名 如要使用证书功能中的此预填充用户名, 必须配置这两个命令 注意 在版本 中, 用户名未预填充 ; 相反, 会忽略在用户名字段中发送的任何数据 以下示例命令在全局配置模式下输入, 用于创建名为 remotegrp 的 IPsec 远程访问隧道组, 启用从证书获取用户名, 并且指定用于 SSL VPN 客户端的身份验证或授权查询的名称必须派生自数字证书 : hostname(config)# tunnel-group remotegrp type ipsec_ra hostname(config)# tunnel-group remotegrp general-attributes hostname(config-tunnel-general)# username-from-certificate CN OU hostname(config)# tunnel-group remotegrp webvpn-attributes hostname(config-tunnel-webvpn)# pre-fill-username ssl-client hostname(config-tunnel-webvpn)# 步骤 9 ( 可选 ) 如要指定覆盖组策略还是用户名属性配置来下载 AnyConnect 或 SSL VPN 客户端, 请使用 override-svc-download 命令 此功能默认为已禁用 4-23

98 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 安全设备根据是否使用 vpn-tunnel-protocol 命令在组策略或用户名属性中启用了无客户端和 / 或 SSL VPN 来允许远程用户的无客户端连接或 AnyConnect 客户端连接 anyconnect ask 命令通过提示用户下载客户端或返回到 WebVPN 主页来进一步修改客户端用户体验 但是, 您可能希望在向特定隧道组下登录的无客户端用户显示无客户端 SSL VPN 主页之前, 这些用户在等待下载提示到期时不会遇到延迟 可以使用 override-svc-download 命令在连接配置文件级别防止这些用户遇到延迟 此命令导致立即向通过连接配置文件登录的用户显示无客户端 SSL VPN 主页, 而无论 vpn-tunnel-protocol 或 anyconnect ask 命令设置如何 在以下示例中, 您进入连接配置文件 engineering 的 tunnel-group webvpn attributes 配置模式, 并使该连接配置文件能够覆盖客户端下载提示的组策略和用户名属性设置 : hostname(config)# tunnel-group engineering webvpn-attributes hostname(config-tunnel-webvpn)# override-svc-download 步骤 10 ( 可选 ) 如要在拒绝身份验证后在登录屏幕上启用 RADIUS 拒绝消息的显示, 请使用 radius-eject-message 命令 以下示例对名为 engineering 的连接配置文件启用 RADIUS 拒绝消息的显示 : hostname(config)# tunnel-group engineering webvpn-attributes hostname(config-tunnel-webvpn)# radius-reject-message 自定义无客户端 SSL VPN 会话用户的登录窗口 可以通过使用自定义配置文件和连接配置文件的组合来为不同的组设置不同的登录窗口 例如, 假设您已创建名为 salesgui 的自定义配置文件, 则可为无客户端 SSL VPN 会话创建名为 sales 的使用该自定义配置文件的连接配置文件, 如下例所示 : 步骤 1 在 webvpn 模式下, 定义无客户端 SSL VPN 访问的自定义 ( 在本例中名为 salesgui), 并将默认徽标更改为 mycompanylogo.gif 必须已在先前将 mycompanylogo.gif 加载到 ASA 的闪存上并保存配置 有关详细信息, 请参阅第 12 章 无客户端 SSL VPN hostname# webvpn hostname (config-webvpn)# customization value salesgui hostname(config-webvpn-custom)# logo file disk0:\mycompanylogo.gif hostname(config-webvpn-custom)# 步骤 2 在全局配置模式下, 设置用户名并将其与刚定义的无客户端 SSL VPN 的自定义关联 : hostname# username seller attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# customization value salesgui hostname(config-username-webvpn)# exit hostname(config-username)# exit hostname# 步骤 3 在全局配置模式下, 为无客户端 SSL VPN 会话创建名为 sales 的隧道组 : hostname# tunnel-group sales type webvpn hostname(config-tunnel-webvpn)# 步骤 4 指定要对此连接配置文件使用 salesgui 自定义 : hostname# tunnel-group sales webvpn-attributes hostname(config-tunnel-webvpn)# customization salesgui 4-24

99 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 步骤 5 将组 URL 设置为用户输入到浏览器中以登录到 ASA 的地址 ; 例如, 如果 ASA 的 IP 地址为 , 请将组 URL 设置为 hostname(config-tunnel-webvpn)# group-url hostname(config-tunnel-webvpn)# 如果成功登录必需端口号, 请在冒号后包含端口号 ASA 将此 URL 映射到 sales 连接配置文件, 并将 salesgui 自定义配置文件应用于用户在登录到 时看到的登录屏幕 为基于标准的 IKEv2 客户端配置隧道组 基于标准的 IKEv2 属性支持 隧道组是包含隧道连接策略的一组记录 您可以配置隧道组来标识 AAA 服务器, 指定连接参数, 以及定义默认组策略 ASA 在内部存储隧道组 IPsec 远程访问的默认隧道组为 DefaultRAGroup 默认隧道组可以修改, 但不能删除 IKEv2 允许分别使用本地和远程身份验证 CLI 配置不对称身份验证方法 ( 即, 对发起方使用预共享密钥身份验证, 但对响应方使用证书身份验证或 EAP 身份验证 ) 因此, 通过 IKEv2 可使用不对称身份验证, 其中一端对一个凭证进行身份验证, 另一端使用其他凭证 ( 预共享密钥 证书或 EAP) 应该为 EAP 身份验证配置 DefaultRAGroup, 因为这些客户端连接无法映射到特定隧道组, 除非同时使用证书身份验证和证书 DN 匹配 ASA 支持以下 IKEv2 属性 : INTERNAL_IP4_ADDRESS/INTERNAL_IP6_ADDRESS - IPv4 或 IPv6 地址 注意 IKEv2 不支持双协议栈 ( 同时分配 IPv4 和 IPv6 地址 ) 如果同时请求 IPv4 和 IPv6 地址, 并且这两种地址都可以分配, 则只分配 IPv4 地址 INTERNAL_IP4_NETMASK - IPv4 网络掩码 INTERNAL_IP4_DNS/INTERNAL_IP6_DNS - 主要 / 辅助 DNS 地址 INTERNAL_IP4_NBNS - 主要 / 辅助 WINS 地址 INTERNAL_IP4_SUBNET/INTERNAL_IP6_SUBNET - 分割隧道列表 APPLICATION_VERSION - 忽略 出于安全原因, 为避免传递任何有关 ASA 的版本信息, 不会发送任何响应 但是, 客户端配置负载请求可能包括此属性, 并且该字符串将显示于 ASA 上的 vpn - sessiondb 命令输出和系统日志中 DAP 支持 如要按连接类型允许 DAP 策略配置, 可使用新的客户端类型 IPSec-IKEv2-Generic-RA 对此连接类型应用特定策略 4-25

100 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 远程访问客户端的隧道组选择 下表提供了远程访问客户端及其可用隧道组选项的列表 : 远程访问客户端 隧道组列表 组 URL 证书 DN 匹配 默认组 (DefaultRAGroup) 其他 AnyConnect VPN 客户端 是 是 是 是 N/A Windows L2TP/IPSec ( 主模式 IKEv1) 否否 是 ( 使用本地计算机证书时 ) 否 ( 使用 PSK 时 ) 基于标准的 IKEv2 否否 是 ( 使用本地计算机证书时 ) 否 ( 使用 EAP 身份验证时 ) 是 是 备注 必须使用 DefaultRAGroup 隧道组 N/A N/A 基于标准的 IKEv2 客户端的身份验证支持 下表提供了基于标准的 IKEv2 客户端及其支持的身份验证方法的列表 : 备注 身份验证方法的限制根据客户端上缺乏支持而定, 而非根据 ASA 上缺乏支持而定 所有 EAP 方法身份验证都由 ASA 在客户端与 EAP 服务器之间代理 EAP 方法的支持根据客户端和 EAP 服务器对 EAP 方法的支持而定 客户端类型 / 身份验证方法 EAP-TLS EAP-MSCHAPv2 EAP-MD5 仅证书 PSK Linux 上的 N/A ISE - 是 ISE - 是 StrongSwan ACS - 是 ACS - 是 是 是 Android 上的 StrongSwan Windows 7/8/8.1 ISE - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 N/A ISE - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 ISE - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 否是 N/A N/A 是 NA 4-26

101 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 Windows Phone ISE - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 ISE - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 Samsung Knox N/A ISE - 是 ios 8 ISE - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 ISE - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 Android 本机客户端 N/A ISE - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 N/A N/A N/A ISE - 是 ACS - 是 FreeRadius - 是 通过 FreeRadius 的 AD - 是 是 N/A N/A 是是 N/A 是是 为 EAP 身份检索配置 query-identity 选项 Microsoft Windows 7 IKEv2 客户端发送一个 IP 地址作为互联网密钥交换 (IKE) 身份, 它可阻止思科 ASA 服务器使用其有效地进行隧道组查找 必须使用 EAP 身份验证的 query-identity 选项配置 ASA, 才能允许 ASA 从该客户端检索有效的 EPA 身份 对于基于证书的身份验证,ASA 服务器和 Microsoft Windows 7 客户端证书必须如下配置 Extended Key Usage (EKU) 字段 : 对于客户端证书,EKU 字段 = 客户端身份验证证书 对于服务器证书,EKU 字段 = 服务器身份验证证书 可以从 Microsoft 证书服务器或其他 CA 服务器获取证书 对于 EAP 身份验证,Microsoft Windows 7 IKEv2 客户端需要先收到 EAP 身份请求, 然后才能接收任何其他 EAP 请求 请务必在 IKEv2 ASA 服务器上的隧道组配置文件中配置 query-identity 关键字, 以便向客户端发送 EAP 身份请求 备注 IKEv2 支持 DHCP 拦截, 以允许 Windows 分割隧道 此功能只适用于 IPv4 分割隧道属性 步骤 1 要将连接类型设置为 IPsec 远程访问, 请输入 tunnel-group 命令 语法为 tunnel-group name type type, 其中 name 是分配给隧道组的名称,type 是隧道的类型 : 在以下示例中,IKEv2 预共享密钥配置为 44kkaol59636jnfx: hostname(config-tunnel-ipsec)# ikev2 local-authentication pre-shared-key 44kkaol59636jnfx 4-27

102 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 注意 必须配置 ikev2 remote-authentication pre-shared-key 命令或 ikev2 remote-authentication certificate 命令来完成身份验证 步骤 2 要指定可扩展身份验证协议 (EAP) 作为通过基于标准的第三方 IKEv2 远程访问客户端支持用户身份验证的方法, 请使用 ikev2 remote-authentication eap [query-identity] 命令 注意 必须先使用证书配置本地身份验证, 并使用 ikev2 local-authentication {certificate trustpoint} 命令配置有效信任点, 然后才能对远程身份验证启用 EAP 否则, 会拒绝 EAP 身份验证请求 可以配置多个选项, 使客户端能够使用配置的任何 ( 但不是全部 ) 选项进行远程身份验证 对于 IKEv2 连接, 隧道组映射必须知道哪些身份验证方法允许远程身份验证 (PSK 证书和 EAP) 和本地身份验证 (PSK 和证书 ), 以及哪个信任点用于本地身份验证 当前, 使用从对等体或对等体证书字段值 ( 使用证书映射 ) 获取的 IKE ID 执行映射 如果这两个选项失效, 则传入的连接将映射到默认远程访问隧道组 DefaultRAGroup 仅当远程对等体通过证书进行身份验证时, 证书映射选项才适用 此映射允许映射到不同的隧道组 仅对证书身份验证使用规则或默认设置执行隧道组查找 对于 EAP 和 PSK 身份验证, 使用客户端上的 IKE ID( 与隧道组名称匹配 ) 或使用默认设置执行隧道组查找 对于 EAP 身份验证, 除非客户端允许独立配置 IKE ID 和用户名, 否则必须使用 DefaultRAGroup 隧道组 示例 以下示例显示遭到拒绝的身份验证的 EAP 请求 : ciscoasa(config-tunnel-ipsec)# ikev2 remote-authentication eap query-identity ciscoasa(config-tunnel-ipsec)# ikev2 remote-authentication certificate ciscoasa(config-tunnel-ipsec)# ikev2 local-authentication pre-shared-key ERROR: The local-authentication method is required to be certificate based if remote-authentication allows EAP ciscoasa(config-tunnel-ipsec)# ikev2 local-authentication certificate myidcert 步骤 3 保存更改 hostname(config)# write memory hostname(config)# 要验证隧道是否启动并正常运行, 请使用 show vpn-sessiondb summary 或 show crypto ipsec sa 命令 配置 Microsoft Active Directory 设置以进行密码管理 注意 如果是使用 LDAP 目录服务器进行身份验证, 则通过 Sun Microsystems JAVA 系统目录服务器 ( 以前称为 Sun ONE 目录服务器 ) 和 Microsoft Active Directory 来支持密码管理 Sun - 在 ASA 上配置的用于访问 Sun 目录服务器的 DN 必须能够访问该服务器上的默认密码策略 建议使用目录管理员或具有目录管理员权限的用户作为 DN 也可以将 ACI 放入默认密码策略 4-28

103 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 Microsoft - 必须配置基于 SSL 的 LDAP 以对 Microsoft Active Directory 启用密码管理 如要将密码管理与 Microsoft Active Directory 配合使用, 必须设置某些 Active Directory 参数以及在 ASA 上配置密码管理 本节介绍与各种密码管理操作关联的 Active Directory 设置 这些说明假设您已在 ASA 上启用密码管理并配置对应的密码管理属性 本节中的特定步骤引用 Windows 2000 下的 Active Directory 术语并包含以下主题 : 使用 Active Directory 强制用户在下次登录时更改密码 ( 第 4-29 页 ) 使用 Active Directory 指定最长密码期限 ( 第 4-29 页 ) 使用 Active Directory 覆盖 Account Disabled AAA 指示器 ( 第 4-30 页 ) 使用 Active Directory 实施密码复杂性 ( 第 4-31 页 ) 本节假设您使用 LDAP 目录服务器进行身份验证 使用 Active Directory 强制用户在下次登录时更改密码 如要强制用户在下次登录时更改用户密码, 请在 ASA 上的 tunnel-group general-attributes 配置模式下指定 password-management 命令, 并在 Active Directory 下执行以下步骤 : 步骤 1 依次选择 Start > Programs > Administrative Tools > Active Directory Users and Computers 步骤 2 右键点击并依次选择 Username > Properties > Account 步骤 3 选中 User must change password at next logon 复选框 下次此用户登录时,ASA 会显示以下提示 : New password required. Password change required. You must enter a new password with a minimum length n to continue. 您可以在 Active Directory 配置过程中设置最小必需密码长度 n(start > Programs > Administrative Tools > Domain Security Policy > Windows Settings > Security Settings > Account Policies > Password Policy) 选择 Minimum password length 使用 Active Directory 指定最长密码期限 如要增强安全性, 可以指定密码在经过一定天数后到期 如要指定用户密码的最长密码期限, 请在 ASA 上的 tunnel-group general-attributes 配置模式下指定 password-management 命令, 并在 Active Directory 下执行以下步骤 : 步骤 1 依次选择 Start > Programs > Administrative Tools > Domain Security Policy > Windows Settings > Security Settings > Account Policies > Password Policy 步骤 2 双击 Maximum password age 步骤 3 选中 Define this policy setting 复选框并指定要允许的最长密码期限 ( 以天为单位 ) 注意 以前在 tunnel-group remote-access 配置过程中为执行密码期限功能而配置的 radius-with-expiry 命令已弃用 取而代之的是 tunnel-group general-attributes 模式下输入的 password-management 命令 4-29

104 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 使用 Active Directory 覆盖 Account Disabled AAA 指示器 如要覆盖来自 AAA 服务器的 account-disabled 指示, 请在 ASA 上的 tunnel-group general-attributes 配置模式下使用 override-account-disable 命令, 并在 Active Directory 下执行以下步骤 备注 允许覆盖 account-disabled 是一项潜在安全风险 步骤 1 依次选择 Start > Programs > Administrative Tools > Active Directory Users and Computers 步骤 2 右键点击 Username > Properties > Account, 然后从菜单中选择 Disable Account 图 4-1 Active Directory - 覆盖已禁用帐户 即使 AAA 服务器提供 account-disabled 指示器, 用户也应该能够成功登录 4-30

105 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 使用 Active Directory 实施最小密码长度 如要实施密码的最小长度, 请在 ASA 上的 tunnel-group general-attributes 配置模式下指定 password-management 命令, 并在 Active Directory 下执行以下步骤 : 步骤 1 依次选择 Start > Programs > Administrative Tools > Domain Security Policy 步骤 2 依次选择 Windows Settings > Security Settings > Account Policies > Password Policy 步骤 3 双击 Minimum Password Length 系统将显示 Security Policy Setting 对话框 步骤 4 选中 Define this policy setting 复选框并指定密码必须包含的最小字符数 图 4-2 Active Directory - 最小密码长度 使用 Active Directory 实施密码复杂性 如要实施复杂密码 ( 例如, 要求密码包含大写和小写字母 数字及特殊字符 ), 请在 ASA 上的 tunnel-group general-attributes 配置模式下输入 password-management 命令, 并在 Active Directory 下执行以下步骤 : 步骤 1 步骤 2 依次选择 Start > Programs > Administrative Tools > Domain Security Policy 依次选择 Windows Settings > Security Settings > Account Policies > Password Policy 双击 Password must meet complexity requirements 以打开 Security Policy Setting 对话框 步骤 3 选中 Define this policy setting 复选框并选择 Enable 4-31

106 配置连接配置文件 第 4 章 连接配置文件 组策略和用户 图 4-3 Active Directory - 实施密码复杂性 仅当用户更改密码时, 实施密码复杂性才会生效 ; 例如, 在配置 Enforce password change at next login 或 Password expires in n days 之后 在登录时, 用户接收到要求输入新密码的提示, 并且系统将仅接受复杂密码 配置连接配置文件以对 AnyConnect 客户端进行 RADIUS/SDI 消息支持 本节介绍相应程序来确保使用 RSA SecureID 软件令牌的 AnyConnect VPN 客户端能够正确响应通过 RADIUS 服务器 ( 代理到 SDI 服务器 ) 传递到客户端的用户提示 本节包含以下主题 : AnyConnect 客户端和 RADIUS/SDI 服务器交互 为支持 RADIUS/SDI 消息配置安全设备 备注 如果已配置双重身份验证功能, 则仅在主身份验证服务器上支持 SDI 身份验证 AnyConnect 客户端和 RADIUS/SDI 服务器交互 当远程用户通过 AnyConnect VPN 客户端连接到 ASA 并尝试使用 RSA SecurID 令牌进行身份验证时,ASA 与 RADIUS 服务器进行通信, 后者反过来与 SDI 服务器就身份验证进行通信 在身份验证期间,RADIUS 服务器向 ASA 提供访问质询消息 这些质询消息中有包含来自 SDI 服务器的文本的应答消息 ASA 直接与 SDI 服务器进行通信时和通过 RADIUS 代理进行通信时的消息文本不同 因此, 为显示为 AnyConnect 客户端的本机 SDI 服务器,ASA 必须解释来自 RADIUS 服务器的消息 4-32

107 第 4 章 连接配置文件 组策略和用户 配置连接配置文件 此外, 由于 SDI 消息在 SDI 服务器上可配置,ASA 上的消息文本必须与 SDI 服务器上的消息文本匹配 ( 全部或部分 ) 否则, 向远程客户端用户显示的提示可能不适合身份验证过程中所需的操作 AnyConnect 客户端可能无法响应, 并且身份验证可能会失败 为支持 RADIUS/SDI 消息配置安全设备 ( 第 4-33 页 ) 介绍如何配置 ASA 以确保在客户端与 SDI 服务器之间成功进行身份验证 为支持 RADIUS/SDI 消息配置安全设备 如要配置 ASA 以解释特定于 SDI 的 RADIUS 应答消息并提示 AnyConnect 用户执行相应的操作, 请执行以下步骤 : 步骤 1 步骤 2 在 tunnel-group webvpn 配置模式下使用 proxy-auth sdi 命令将连接配置文件 ( 隧道组 ) 配置为通过模拟与 SDI 服务器直接通信的方式转发 RADIUS 应答消息 用户对 SDI 服务器进行身份验证时, 必须通过此连接配置文件进行连接 例如 : hostname(config)# tunnel-group sales webvpn attributes hostname(tunnel-group-webvpn)# proxy-auth sdi 在 tunnel-group webvpn 配置模式下使用 proxy-auth_map sdi 命令将 ASA 上的 RADIUS 应答消息文本配置为与 RADIUS 服务器发送的消息文本匹配 ( 全部或部分 ) ASA 使用的默认消息文本是思科安全访问控制服务器 (ACS) 使用的默认消息文本 如果使用的是思科安全 ACS, 并且其使用的是默认消息文本, 则无需配置 ASA 上的消息文本 否则, 请使用 proxy-auth_map sdi 命令确保消息文本匹配 表 4-2 显示了消息代码 默认 RADIUS 应答消息文本和各消息的功能 由于安全设备按照字符串在表中的显示顺序对其进行搜索, 必须确保用于消息文本的字符串不是其他字符串的一部分 例如, new PIN 是 new-pin-sup 和 next-ccode-and-reauth 的默认消息文本的子集 如果将 new-pin-sup 配置为 new PIN, 则在安全设备从 RADIUS 服务器接收到 new PIN with the next card code 时, 它会将该文本与 new-pin-sup 代码而非 next-ccode-and-reauth 代码匹配 表 4-2 SDI 操作代码 默认消息文本和消息功能 消息代码 默认的 RADIUS 回复消息文本 功能 next-code Enter Next PASSCODE 表示用户必须输入下一个令牌代码, 无需 PIN new-pin-sup 请牢记您的新 PIN 指示已提供新系统 PIN 并显示用户的此 PIN new-pin-meth 您是否要输入自己的 PIN 来自于用户要使用哪个新 PIN 方法创建新 PIN 的请求 new-pin-req 输入新的思科 表示用户生成的 PIN 和要求用户输入 PIN Alpha-Numerical PIN new-pin-reenter 重新输入 PIN: ASA 在内部用于确认用户提供的 PIN 客户端确认 PIN 而不提示用户 new-pin-sys-ok 接受新 PIN 表示已接受用户提供的 PIN next-ccode-andreauth ready-for-syspin 具有下一个卡代码的新 PIN 接受系统生成的 PIN 遵循 PIN 操作, 表示用户必须等待下一个令牌代码并输入新 PIN 和下一个令牌代码才能进行身份验证 ASA 在内部用于表示用户已准备好使用系统生成的 PIN 4-33

108 组策略 第 4 章 连接配置文件 组策略和用户 以下示例进入 aaa-server-host 模式并更改 RADIUS 应答消息 new-pin-sup 的文本 : hostname(config)# aaa-server radius_sales host hostname(config-aaa-server-host)# proxy-auth_map sdi new-pin-sup This is your new PIN 组策略 本节介绍组策略及其配置方式 组策略是在设备上以内部方式 ( 本地 ) 存储或在 RADIUS 服务器上以外部方式存储的 IPsec 连接的一组面向用户的属性 / 值对 连接配置文件使用组策略在建立隧道后设置用户连接的条款 通过组策略可将整组属性应用于用户或用户组, 而不必为每个用户单独指定每个属性 在全局配置模式下输入 group-policy 命令以向用户分配组策略或修改特定用户的组策略 ASA 包含默认组策略 除默认组策略 ( 可以修改但不能删除 ) 以外, 您还可以创建特定于您环境的一个或多个组策略 可以配置内部和外部组策略 内部组在 ASA 的内部数据库上进行配置 外部组在外部身份验证服务器 ( 如 RADIUS) 上进行配置 组策略包含以下属性 : 身份 服务器定义 客户端防火墙设置 隧道协议 IPsec 设置 硬件客户端设置 筛选条件 客户端配置设置 连接设置 默认组策略 ASA 提供默认组策略 您可以修改此默认组策略, 但是无法将其删除 名为 DfltGrpPolicy 的默认组策略始终存在于 ASA 上, 但是除非将 ASA 配置为使用此组策略, 否则其不会生效 当配置其他组策略时, 没有显式指定的任何属性都从默认组策略获取其值 如要查看默认组策略, 请输入以下命令 : hostname(config)# show running-config all group-policy DfltGrpPolicy hostname(config)# 如要配置默认组策略, 请输入以下命令 : hostname(config)# group-policy DfltGrpPolicy internal hostname(config)# 备注 默认组策略始终为 internal 尽管实际上命令语法为 hostname(config)# group-policy DfltGrpPolicy {internal external}, 但是无法将其类型更改为 external 4-34

109 第 4 章 连接配置文件 组策略和用户 组策略 如要更改默认组策略的任何属性, 请使用 group-policy attributes 命令进入 attributes 模式, 然后指定命令更改要修改的任意属性 : hostname(config)# group-policy DfltGrpPolicy attributes 备注 attributes 模式仅适用于内部组策略 ASA 提供的默认组策略 DfltGrpPolicy 如下 : hostname# show run all group-policy DfltGrpPolicy group-policy DfltGrpPolicy internal group-policy DfltGrpPolicy attributes banner none wins-server none dns-server value dhcp-network-scope none vpn-access-hours none vpn-simultaneous-logins 3 vpn-idle-timeout 30 vpn-idle-timeout alert-interval 1 vpn-session-timeout none vpn-session-timeout alert-interval 1 vpn-filter none vpn-tunnel-protocol ikev1 ikev2 l2tp-ipsec ssl-client ssl-clientless password-storage disable ip-comp disable re-xauth disable group-lock none pfs disable ipsec-udp disable ipsec-udp-port split-tunnel-policy tunnelall ipv6-split-tunnel-policy tunnelall split-tunnel-network-list none default-domain value cisco.com split-dns none split-tunnel-all-dns disable intercept-dhcp disable secure-unit-authentication disable user-authentication disable user-authentication-idle-timeout 30 ip-phone-bypass disable client-bypass-protocol disable gateway-fqdn none leap-bypass disable nem disable backup-servers keep-client-config msie-proxy server none msie-proxy method no-modify msie-proxy except-list none msie-proxy local-bypass disable msie-proxy pac-url none msie-proxy lockdown enable vlan none nac-settings none address-pools none ipv6-address-pools none smartcard-removal-disconnect enable scep-forwarding-url none client-firewall none client-access-rule none webvpn 4-35

110 组策略 第 4 章 连接配置文件 组策略和用户 url-list none filter none homepage none html-content-filter none port-forward name Application Access port-forward disable http-proxy disable sso-server none anyconnect ssl dtls enable anyconnect mtu 1406 anyconnect firewall-rule client-interface private none anyconnect firewall-rule client-interface public none anyconnect keep-installer installed anyconnect ssl keepalive 20 anyconnect ssl rekey time none anyconnect ssl rekey method none anyconnect dpd-interval client 30 anyconnect dpd-interval gateway 30 anyconnect ssl compression none anyconnect dtls compression lzs anyconnect modules none anyconnect profiles none anyconnect ask none customization none keep-alive-ignore 4 http-comp gzip download-max-size upload-max-size post-max-size user-storage none storage-objects value cookies,credentials storage-key none hidden-shares none smart-tunnel disable activex-relay enable unix-auth-uid unix-auth-gid file-entry enable file-browsing enable url-entry enable deny-message value Login was successful, but because certain criteria have not been met or due to some specific group policy, you do not have permission to use any of the VPN features. Contact your IT administrator for more information smart-tunnel auto-signon disable anyconnect ssl df-bit-ignore disable anyconnect routing-filtering-ignore disable smart-tunnel tunnel-policy tunnelall always-on-vpn profile-setting 您可以修改默认组策略, 也可以创建特定于您的环境的一个或多个组策略 4-36

111 第 4 章 连接配置文件 组策略和用户 组策略 配置组策略 组策略可以应用于任何类型的隧道 在每种情况下, 如果没有显式定义参数, 则组从默认组策略获取值 可以在单情景模式或多情景模式下执行这些配置任务 : 备注 多情景模式仅适用于站点到站点的 IKEv2 和 IKEv1, 而不适用于 AnyConnect 无客户端 SSL VPN 旧版思科 VPN 客户端 Apple 本机 VPN 客户端 Microsoft 本机 VPN 客户端或 IKEv1 IPsec 的 ctcp 配置外部组策略 外部组策略从指定的外部服务器获取其属性值 对于外部组策略, 必须标识 ASA 可查询参数的 AAA 服务器组, 并指定在从外部 AAA 服务器组检索属性时要使用的密码 如果使用的是外部身份验证服务器, 并且如果外部组策略属性与计划进行身份验证的用户存在于同一 RADIUS 服务器中, 则必须确保二者之间没有名称重复 备注 ASA 上的外部组名引用 RADIUS 服务器上的用户名 换句话说, 如果在 ASA 上配置外部组 X, 则 RADIUS 服务器将查询视为用户 X 的身份验证请求 因此, 外部组其实只是 RADIUS 服务器上对 ASA 具有特殊意义的用户帐户 如果外部组属性与计划进行身份验证的用户存在于同一 RADIUS 服务器中, 则二者之间不得有名称重复 ASA 在外部 LDAP 或 RADIUS 服务器上支持用户授权 将 ASA 配置为使用外部服务器之前, 必须使用正确的 ASA 授权属性来配置服务器, 并且从其中一部分属性向个人用户分配特定权限 按照附录 11 为 VPN 配置外部 AAA 服务器 中的说明配置外部服务器 如要配置外部组策略, 请执行以下步骤来指定组策略的名称和类型以及服务器组名和密码 : hostname(config)# group-policy group_policy_name type server-group server_group_name password server_password hostname(config)# 备注 对于外部组策略,RADIUS 是唯一支持的 AAA 服务器类型 例如, 以下命令创建名为 ExtGroup 的外部组策略 ( 该组策略从名为 ExtRAD 的外部 RADIUS 服务器获取其属性 ) 并指定在检索属性时要使用的的密码为 newpassword: hostname(config)# group-policy ExtGroup external server-group ExtRAD password newpassword hostname(config)# 备注 可以配置多个特定于供应商的属性 (VSA), 如附录 11 为 VPN 配置外部 AAA 服务器 中所述 如果 RADIUS 服务器配置为返回类属性 (#25), 则 ASA 使用该属性对组名进行身份验证 在 RADIUS 服务器上, 该属性必须格式化为 :OU=groupname; 其中 groupname 与 ASA 上配置的组名 ( 例如 OU=Finance) 相同 4-37

112 组策略 第 4 章 连接配置文件 组策略和用户 创建内部组策略 如要配置内部组策略, 请进入配置模式, 使用 group-policy 命令为组策略指定名称和 internal 类型 : hostname(config)# group-policy group_policy_name internal hostname(config)# 例如, 以下命令创建名为 GroupPolicy1 的内部组策略 : hostname(config)# group-policy GroupPolicy1 internal hostname(config)# 备注 创建组策略后, 无法更改其名称 通过附加关键字 from 并指定现有策略的名称, 可以复制原本已有的组策略的值来配置内部组策略的属性 : hostname(config)# group-policy group_policy_name internal from group_policy_name hostname(config-group-policy)# 例如, 以下命令通过复制 GroupPolicy1 的属性来创建名为 GroupPolicy2 的内部组策略 : hostname(config)# group-policy GroupPolicy2 internal from GroupPolicy1 hostname(config-group-policy)# 配置常规内部组策略属性 组策略名称 创建内部组策略时会选择组策略名称 一旦创建组策略, 便无法更改其名称 有关详情, 请参见创建内部组策略 ( 第 4-38 页 ) 配置组策略横幅消息 指定要显示的横幅或欢迎消息 ( 如果有 ) 默认无横幅 当远程客户端连接时, 在其之上会显示指定的消息 如要指定横幅, 请在 group-policy 配置模式下输入 banner 命令 横幅文本长度最多可以为 510 个字符 输入 \n 序列以插入回车符 备注 横幅中包含的回车符和换行符计作两个字符 如要删除横幅, 请输入此命令的 no 形式 请注意, 使用 no 版本的该命令会删除组策略的所有横幅 一个组策略可以从另一个组策略继承该值 如要防止继承值, 请输入 none 关键字而不要指定横幅字符串的值, 如下所示 : hostname(config-group-policy)# banner {value banner_string none} 以下示例显示如何为名为 FirstGroup 的组策略创建横幅 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# banner value Welcome to Cisco Systems ASA

113 第 4 章 连接配置文件 组策略和用户 组策略 指定远程访问连接的地址池 当远程访问客户端连接到 ASA 时,ASA 可以根据为连接指定的组策略来为客户端分配 IPv4 或 IPv6 地址 可以指定最多包含六个本地地址池的列表用于本地地址分配 地址池的指定顺序非常重要 ASA 按照这些地址池在此命令中出现的顺序分配这些地址池中的地址 向内部组策略分配 IPv4 地址池 必备条件创建 IPv4 地址池 请参阅第 5 章 VPN 的 IP 地址 详细步骤 步骤 1 命令 group-policy value attributes 目的进入组策略配置模式 步骤 2 hostname> en hostname# config t hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# address-pools value pool-name1 pool-name2 pool-name6 asa4(config-group-policy)# address-pools value ipv4-pool1 ipv4-pool2 ipv4-pool3 asa4(config-group-policy)# 步骤 3 ( 可选 ) no address-pools value pool-name1 pool-name2 pool-name6 hostname(config-group-policy)# no address-pools value ipv4-pool1 ipv4-pool2 ipv4-pool3 hostname(config-group-policy)# 步骤 4 ( 可选 ) address-pools none 向 FirstGroup 组策略分配名为 ipv4-pool1 ipv4-pool2 和 ipv4pool3 的地址池 允许为组策略指定最多 6 个地址池 使用 no address-pools value pool-name 命令从组策略配置中删除地址池, 并返回地址池设置来从其他源 ( 例如 DefltGroupPolicy) 继承地址池信息 address-pools none 命令禁止从其他策略源 ( 例如 DefltGrpPolicy) 继承此属性 : hostname(config-group-policy)# address-pools none hostname(config-group-policy)# 步骤 5 ( 可选 ) no address-pools none no address pools none 命令从组策略中删除 address-pools none 命令, 从而恢复默认值, 即允许继承 hostname(config-group-policy)# no address-pools none hostname(config-group-policy)# 4-39

114 组策略 第 4 章 连接配置文件 组策略和用户 向内部组策略分配 IPv6 地址池 必备条件 创建 IPv6 地址池 请参阅第 5 章 VPN 的 IP 地址 详细步骤 步骤 1 命令 group-policy value attributes 目的进入组策略配置模式 步骤 2 hostname> en hostname# config t hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# ipv6-address-pools value pool-name1 pool-name2 pool-name6 hostname(config-group-policy)# ipv6-address-pools value ipv6-pool1 ipv6-pool2 ipv6-pool3 hostname(config-group-policy)# 步骤 3 ( 可选 ) no ipv6-address-pools value pool-name1 pool-name2 pool-name6 向 FirstGroup 组策略分配名为 ipv6-pool 的地址池 可以向组策略分配最多六个 ipv6 地址池 此示例显示向 FirstGroup 组策略分配 ipv6-pool1 ipv6-pool2 和 ipv6-pool3 使用 no ipv6-address-pools value pool-name 命令从组策略配置中删除地址池, 并返回地址池设置来从其他源 ( 例如 DfltGroupPolicy) 继承地址池信息 hostname(config-group-policy)# no ipv6-address-pools value ipv6-pool1 ipv6-pool2 ipv6-pool3 hostname(config-group-policy)# 步骤 4 ( 可选 ) ipv6-address-pools none ipv6-address-pools none 命令禁止从其他策略源 ( 例如 DfltGrpPolicy) 继承此属性 : hostname(config-group-policy)# ipv6-address-pools none hostname(config-group-policy)# 步骤 5 ( 可选 ) no ipv6-address-pools none no ipv6-address pools none 命令从组策略中删除 ipv6-address-pools none 命令, 从而恢复默认值, 即允许继承 hostname(config-group-policy)# no ipv6-address-pools none hostname(config-group-policy)# 4-40

115 第 4 章 连接配置文件 组策略和用户 组策略 指定组策略的隧道协议 通过在 group-policy 配置模式下输入 vpn-tunnel-protocol {ikev1 ikev2 l2tp-ipsec ssl-client ssl-clientless} 命令来指定此组策略的 VPN 隧道类型 默认值是继承默认组策略的属性 如要从运行配置中删除属性, 请输入此命令的 no 形式 此命令的参数值如下 : ikev1 - 在两个对等体 ( 思科 VPN 客户端或其他安全网关 ) 之间协商 IPsec IKEv1 隧道 创建管理身份验证 加密 封装和密钥管理的安全关联 ikev2 - 在两个对等体 (AnyConnect 安全移动客户端或其他安全网关 ) 之间协商 IPsec IKEv2 隧道 创建管理身份验证 加密 封装和密钥管理的安全关联 l2tp-ipsec - 为 L2TP 连接协商 IPsec 隧道 ssl-client - 使用 TLS 或 DTLS 与 AnyConnect 安全移动客户端协商 SSL 隧道 ssl-clientless - 通过已启用 HTTPS 的 Web 浏览器向远程用户提供 VPN 服务, 并且无需客户端 输入此命令以配置一个或多个隧道模式 至少必须配置一个隧道模式供用户通过 VPN 隧道进行连接 以下示例显示如何为名为 FirstGroup 的组策略配置 IPsec IKEv1 隧道模式 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# vpn-tunnel-protocol ikev1 hostname(config-group-policy)# 为远程访问指定 VLAN 或对组策略应用统一访问控制规则 过滤器由规则组成, 这些规则根据诸如源地址 目标地址和协议之类的条件来确定允许还是拒绝隧道数据包通过 ASA 可以为组策略指定 IPv4 或 IPv6 统一访问控制列表, 或者允许其继承默认组策略中指定的 ACL 选择以下选项之一来为远程访问指定出口 VLAN ( 也称为 VLAN 映射 ), 或者指定 ACL 以过滤流量 : 在 group-policy 配置模式下输入以下命令来为分配到此组策略或分配到继承此组策略的组策略的远程访问 VPN 会话指定出口 VLAN: hostname(config-group-policy)# [no] vlan {vlan_id none} no vlan 从组策略中删除 vlan_id 组策略从默认组策略继承 vlan 值 none 从组策略中删除 vlan_id 并对此组策略禁用 VLAN 映射 组策略不会从默认组策略继承 vlan 值 vlan_id 是要分配给使用此组策略的远程访问 VPN 会话的 VLAN 的编号 ( 十进制格式 ) 必须按照一般操作配置指南中 配置 VLAN 子接口和 802.1Q 中继 中的说明在此 ASA 上配置 VLAN 注意出口 VLAN 功能适用于 HTTP 连接, 但不适用于 FTP 和 CIFS 在组策略模式下使用 vpn-filter 命令指定要应用于 VPN 会话的访问控制规则 (ACL) 的名称 可以使用 vpn-filter 命令指定 IPv4 或 IPv6 ACL 4-41

116 组策略 第 4 章 连接配置文件 组策略和用户 注意 在以前的版本中, 如果 vpn-filter 未指定 IPv6 条目, 则可以使用已弃用的 ipv6-vpn-filter 命令来指定 IPv6 ACL 截至 ASA 9.1(4), 已禁用 ipv6-vpn-filter, 必须使用 vpn-filter 命令指定 IPv6 ACL 条目 如果设置 ipv6-vpn-filter, 则将终止 VPN 连接 注意 您也可以在用户名模式下配置此属性, 在此情况下用户名下配置的值会取代组策略值 hostname(config-group-policy)# vpn-filter {value ACL name none} hostname(config-group-policy)# 可将 ACL 配置为允许或拒绝此组策略的各种类型的流量 然后, 输入 vpn-filter 命令以应用这些 ACL 如要删除 ACL, 包括通过输入 vpn-filter none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从其他组策略继承值 一个组策略可以从另一个组策略继承该值 如要防止继承值, 请输入 none 关键字而不要指定 ACL 名称 none 关键字表示没有 ACL 并设置空值, 从而禁止使用 ACL 以下示例显示如何为名为 FirstGroup 的组策略设置调用名为 acl_vpn 的 ACL 的过滤器 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# vpn-filter acl_vpn hostname(config-group-policy)# vpn-filter 命令应用于解密后流量 ( 在其退出隧道后 ) 和解密前流量 ( 在其进入隧道前 ) 不得将用于 vpn-filter 的 ACL 也用于接口访问组 当 vpn-filter 命令应用于监管远程访问 VPN 客户端连接的组策略时, 应使用客户端分配的 IP 地址 ( 位于 ACL 的 src_ip 位置中 ) 和本地网络 ( 位于 ACL 的 dest_ip 位置中 ) 配置 ACL 当 vpn-filter 命令应用于监管 LAN 到 LAN VPN 连接的组策略时, 应使用远程网络 ( 位于 ACL 的 src_ip 位置中 ) 和本地网络 ( 位于 ACL 的 dest_ip 位置中 ) 配置 ACL 构造与 vpn-filter 功能配合使用的 ACL 时应谨慎 构造 ACL 时考虑了解密后流量 但是,ACL 还应用于相反方向的流量 对于以隧道为目标的此加密前流量, 在构造 ACL 时 src_ip 和 dest_ip 位置交换 在以下示例中,vpn-filter 用于远程访问 VPN 客户端 此示例假设客户端分配的 IP 地址为 /24, 并且本地网络为 /24 以下 ACE 将允许远程访问 VPN 客户端通过 telnet 连接到本地网络 : hostname(config-group-policy)# access-list vpnfilt-ra permit eq 23 以下 ACE 将允许本地网络通过 telnet 连接到远程访问客户端 : hostname(config-group-policy)# access-list vpnfilt-ra permit eq 注意 ACE access-list vpnfilt-ra permit eq 23 允许本地网络在使用源端口 23 的情况下在任意 TCP 端口上发起与远程访问客户端的连接 ACE access-list vpnfilt-ra permit eq 允许远程访问客户端在使用源端口 23 的情况下在任意 TCP 端口上发起与本地网络的连接 4-42

117 第 4 章 连接配置文件 组策略和用户 组策略 在下一个示例中,vpn-filter 用于 LAN 到 LAN VPN 连接 此示例假设远程网络为 /24, 并且本地网络为 /24 以下 ACE 将允许远程网络通过 telnet 连接到本地网络 : hostname(config-group-policy)# access-list vpnfilt-l2l permit eq 23 以下 ACE 将允许本地网络通过 telnet 连接到远程网络 : hostname(config-group-policy)# access-list vpnfilt-l2l permit eq 注意 ACE access-list vpnfilt-l2l permit eq 23 允许本地网络在使用源端口 23 的情况下在任意 TCP 端口上发起与远程网络的连接 ACE access-list vpnfilt-l2l permit eq 允许远程网络在使用源端口 23 的情况下在任意 TCP 端口上发起与本地网络的连接 指定组策略的 NAC 策略 此命令选择要应用于此组策略的网络准入控制策略的名称 可以向每个组策略分配可选 NAC 策略 默认值为 --None-- 必备条件 创建 NAC 策略 请参阅网络准入控制 ( 第 7-1 页 ) 详细步骤 步骤 1 命令 group-policy value attributes 目的进入组策略配置模式 步骤 2 hostname> en hostname# config t hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# nac-settings value nac-policy-name hostname(config-group-policy)# nac-settings value nac-policy-1 hostname(config-group-policy)# 向 FirstGroup 组策略分配名为 nac-policy-1 的 NAC 策略 4-43

118 组策略 第 4 章 连接配置文件 组策略和用户 指定组策略的 VPN 访问时长 必备条件 创建时间范围 请参阅一般操作配置指南中的 配置时间范围 详细步骤 步骤 1 命令 group-policy value attributes 目的进入组策略配置模式 步骤 2 hostname> en hostname# config t hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# hostname(config-group-policy)# vpn-access-hours value {time-range-name none} hostname(config-group-policy)# vpn-access-hours value business-hours hostname(config-group-policy)# 可以通过在 group-policy 配置模式下使用 vpn-access-hours 命令将配置的时间范围策略与组策略关联来设置 VPN 访问时长 此命令向名为 FirstGroup 的组策略分配名为 business-hours 的 VPN 访问时间范围 组策略可以从默认或指定的组策略继承时间范围值 如要防止此继承, 请在此命令中输入 none 关键字而不是时间范围的名称 此关键字将 VPN 访问时长设置为空值, 即允许 no time-range 策略 为组策略指定 VPN 同时登录数 在 group-policy 配置模式下使用 vpn-simultaneous-logins 命令指定对任何用户允许的同时登录数 hostname(config-group-policy)# vpn-simultaneous-logins integer 默认值为 3 范围是介于 0 至 之间的整数 一个组策略可以从另一个组策略继承该值 输入 0 则禁用登录并阻止用户访问 以下示例显示如何为名为 FirstGroup 的组策略设置最大同时登录数 4: hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# vpn-simultaneous-logins 4 hostname(config-group-policy)# 注意 尽管同时登录数的上限非常大, 但允许多个用户同时登录可能会降低安全性并影响性能 即使已使用同一用户名建立 新 会话, 停滞的 AnyConnect 会话 IPsec 客户端会话或无客户端会话 ( 异常终止的会话 ) 仍然可能保留在会话数据库中 如果 vpn-simultaneous-logins 的值为 1, 并且同一用户在异常终止后再次登录, 则会从数据库中删除停滞的会话并建立新会话 但是, 如果现有会话仍然是活动连接并且同一用户再次登录 ( 可能从其他 PC), 则会注销且从数据库中删除第一个会话并建立新会话 如果同时登录数的值大于 1, 则当达到此最大数并尝试再次登录时, 会注销空闲时间最长的会话 如果所有当前会话的空闲时间同样长, 则会注销最早的会话 此操作会释放一个会话并允许新用户登录 4-44

119 第 4 章 连接配置文件 组策略和用户 组策略 将访问限于特定连接配置文件 在 group-policy 配置模式下使用 group-lock 命令指定是否限制远程用户仅通过连接配置文件进行访问 hostname(config-group-policy)# group-lock {value tunnel-grp-name none} hostname(config-group-policy)# no group-lock hostname(config-group-policy)# tunnel-grp-name 变量指定 ASA 要求用户连接的现有连接配置文件的名称 组锁定通过检查在 VPN 客户端中配置的组与用户分配的连接配置文件是否相同来限制用户 如果不一样,ASA 会阻止用户进行连接 如果不配置组锁定, 则 ASA 在不考虑分配的组的情况下对用户进行身份验证 默认情况下会禁用组锁定 如要从运行配置中删除 group-lock 属性, 请输入此命令的 no 形式 此选项允许从其他组策略继承值 如要禁用组锁定, 请输入带有 none 关键字的 group-lock 命令 none 关键字将 group-lock 设置为空值, 从而允许 no group-lock 限制 它还可防止从默认或指定的组策略继承 group-lock 值 在组策略中指定最长 VPN 连接时间 步骤 1 在 group-policy 配置模式或 username 配置模式下使用 vpn-session-timeout 命令配置 VPN 连接的最长时间 hostname(config-group-policy)# vpn-session-timeout {minutes none} hostname(config-group-policy)# 最短时间为 1 分钟, 最长时间为 分钟 没有默认值 此时间段结束时,ASA 将终止连接 一个组策略可以从另一个组策略继承该值 如要防止继承值, 请输入 none 关键字而不要使用此命令指定分钟数 指定 none 关键字将允许会话超时期不受限制并使用空值来设置会话超时, 即禁止会话超时 以下示例显示如何将名为 FirstGroup 的组策略的 VPN 会话超时设置为 180 分钟 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# vpn-session-timeout 180 hostname(config-group-policy)# 步骤 2 使用 vpn-session-timeout alert-interval {minutes none} 命令配置向用户显示 session-timeout 警报消息的时间 此警报消息告诉用户在其 VPN 会话自动断开连接之前剩余的分钟数 以下示例显示如何设置 vpn-session-timeout alert-interval, 以便在用户的 VPN 会话断开连接之前 20 分钟通知用户 可以指定的范围为 1 至 30 分钟 hostname(config-webvpn)# vpn-session-timeout alert-interval 20 none 参数表示用户将不会收到警报 使用该命令的 no 形式表示将从默认组策略继承 VPN 会话超时 alert-interval 属性 : no vpn-session-timeout alert-interval 4-45

120 组策略 第 4 章 连接配置文件 组策略和用户 指定组策略的 VPN 会话空闲超时 步骤 1 通过在 group-policy 配置模式或 username 配置模式下输入 vpn-idle-timeout 命令来配置用户超时期 : hostname(config-group-policy)# vpn-idle-timeout {minutes none} hostname(config-group-policy)# AnyConnect (SSL IPsec/IKEv2): 使用以下命令中的全局 WebVPN default-idle-timeout 值 ( 秒 ): hostname(config-webvpn)# default-idle-timeout 在 WebVPN default-idle-timeout 命令中, 此值的范围是 60 到 秒 ; 默认全局 WebVPN 空闲超时 ( 秒 )- 默认值为 1800 秒 (30 分钟 ) 备注 对于所有 AnyConnect 连接,ASA 需要一个非零的空闲超时值 对于 WebVPN 用户, 仅当在组策略 / 用户名属性中设置了 vpn-idle-timeout none 时, 才会实施 default-idle-timeout 值 站点到站点 (IKEv1 IKEv2) 和 IKEv1 远程访问 : 禁用超时并允许无限制的空闲超时期 以下示例展示如何将名为 FirstGroup 的组策略的 VPN 空闲超时设置为 15 分钟 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# vpn-idle-timeout 15 hostname(config-group-policy)# 步骤 2 使用 vpn-idle-timeout alert-interval {minutes none} 命令配置向用户显示 idle-timeout 警报消息的时间 此警报消息告诉用户在其 VPN 会话因不活动而断开连接之前剩余的分钟数 以下示例显示如何设置 vpn-idle-timeout alert-interval, 以便在用户的 VPN 会话因不活动而断开连接之前 20 分钟通知用户 可以指定的范围为 1 至 30 分钟 hostname(config-webvpn)# vpn-idle-timeout alert-interval 20 none 参数表示用户将不会收到警报 使用该命令的 no 形式表示将从默认组策略继承 VPN 空闲超时 alert-interval 属性 : no vpn-idle-timeout alert-interval 为组策略配置 WINS 和 DNS 服务器 可以指定主要和辅助 WINS 服务器和 DNS 服务器 每种情况下的默认值为 none 如要指定这些服务器, 请执行以下步骤 : 步骤 1 指定主要和辅助 WINS 服务器 : hostname(config-group-policy)# wins-server value {ip_address [ip_address] none} hostname(config-group-policy)# 指定的第一个 IP 地址是主要 WINS 服务器的 IP 地址 第二个 ( 可选 )IP 地址是辅助 WINS 服务器的 IP 地址 指定 none 关键字而非 IP 地址会将 WINS 服务器设置为空值, 这将禁止使用 WINS 服务器并防止从默认或指定的组策略继承值 每次输入 wins-server 命令后, 会覆盖现有设置 例如, 如果配置 WINS 服务器 x.x.x.x, 然后配置 WINS 服务器 y.y.y.y, 第二条命令将覆盖第一条, 并且 y.y.y.y 成为唯一 WINS 服务器 对于多台服务器情况也如此 如要添加 WINS 服务器而不覆盖以前配置的服务器, 请在输入此命令时包含所有 WINS 服务器的 IP 地址 4-46

121 第 4 章 连接配置文件 组策略和用户 组策略 以下示例显示如何为名为 FirstGroup 的组策略配置 IP 地址为 和 的 WINS 服务器 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# wins-server value hostname(config-group-policy)# 步骤 2 指定主要和辅助 DNS 服务器 : hostname(config-group-policy)# dns-server value {ip_address [ip_address] none} hostname(config-group-policy)# 指定的第一个 IP 地址是主要 DNS 服务器的 IP 地址 第二个 ( 可选 )IP 地址是辅助 DNS 服务器的 IP 地址 指定 none 关键字而非 IP 地址会将 DNS 服务器设置为空值, 这将禁止使用 DNS 服务器并防止从默认或指定的组策略继承值 可以指定最多四个 DNS 服务器地址 : 最多两个 IPv4 地址和两个 IPv6 地址 每次输入 dns-server 命令后, 会覆盖现有设置 例如, 如果配置 DNS 服务器 x.x.x.x, 然后配置 DNS 服务器 y.y.y.y, 第二条命令将覆盖第一条, 并且 y.y.y.y 成为唯一 DNS 服务器 对于多台服务器情况也如此 如要添加 DNS 服务器而不覆盖以前配置的服务器, 请在输入此命令时包含所有 DNS 服务器的 IP 地址 以下示例显示如何为名为 FirstGroup 的组策略配置 IP 地址为 :DB8::1 和 2001:DB8::2 的 DNS 服务器 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# dns-server value :DB8::1 2001:DB8::2 hostname(config-group-policy)# 步骤 3 如果在 DeafultDNS DNS server group 中未指定默认域名, 则必须指定默认域 使用域名和顶级域, 例如 example.com asa4(config)# group-policy FirstGroup attributes asa4(config-group-policy)# default-domain value example.com asa4(config-group-policy)# 步骤 4 配置 DHCP 网络范围 : hostname(config-group-policy)# dhcp-network-scope {ip_address none} hostname(config-group-policy)# DHCP 范围指定 ASA DHCP 服务器向此组策略的用户分配地址时应该使用的 IP 地址范围 ( 即子网 ) 以下示例显示如何为名为 FirstGroup 的组策略设置 IP 子网 ( 指定 至 的地址范围 ): hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# dhcp-network-scope 配置 AnyConnect 流量的分割隧道 分割隧道将一些 AnyConnect 网络流量定向通过 VPN 隧道 ( 加密 ), 将另一些网络流量定向到 VPN 隧道外部 ( 未加密或 明文 ) 通过如下方式配置分割隧道 : 创建分割隧道策略, 为该策略配置访问控制列表, 然后将分割隧道策略添加到组策略 当组策略发送到客户端时, 该客户端将使用分割隧道策略中的 ACL 来决定要将网络流量定向到的位置 4-47

122 组策略 第 4 章 连接配置文件 组策略和用户 设置分割隧道策略 创建访问列表时 : 可以在访问控制列表中同时指定 IPv4 和 IPv6 地址 如果使用标准 ACL, 则仅使用一个地址或网络 如果使用扩展 ACL, 则源网络是分割隧道网络 目标网络会被忽略 使用 any 或者使用地址 / 或 ::/0 配置的访问列表将不会发送到客户端 如要通过隧道发送所有流量, 请在创建分割隧道策略时指定 tunnelall 仅当分割隧道策略为 excludespecified 时, 才会将地址 / 或 ::/128 发送到客户端 此配置指示客户端不要通过隧道传送以任意本地子网为目标的流量 AnyConnect 将流量传递到在分割隧道策略中指定的所有站点和与 ASA 分配的 IP 地址属于同一子网的所有站点 例如, 如果 ASA 分配的 IP 地址为 且掩码为 , 则无论分割隧道策略如何, 终端设备都会传递所有目标为 /8 的流量 因此, 请为正确引用预期本地子网的分配的 IP 地址使用网络掩码 还可以指定域列表来定向分割隧道流量 客户端将流量定向到 split-dns 列表中的域, 进而定向到 VPN, 而所有其他流量则明文传送 必备条件 必须使用 ACL 和 ACE 创建访问列表 如果为 IPv4 网络创建一个分割隧道策略并为 IPv6 网络创建另一个分割隧道策略, 则在 split-tunnel-network-list 命令中指定的网络列表同时用于两种协议 因此, 该网络列表应同时包含 IPv4 和 IPv6 流量的访问控制项 (ACE) 通过指定分割隧道策略为 IPv4 流量设置通过隧道传送流量的规则 : hostname(config-group-policy)# split-tunnel-policy {tunnelall tunnelspecified excludespecified} hostname(config-group-policy)# no split-tunnel-policy 通过指定分割隧道策略为 IPv6 流量设置通过隧道传送流量的规则 : hostname(config-group-policy)# ipv6-split-tunnel-policy {tunnelall tunnelspecified excludespecified} hostname(config-group-policy)# no ipv6-split-tunnel-policy 策略选项包括 : tunnelspecified - 通过隧道在网络列表中指定的网络上传入或传出所有流量 发往所有其他地址的数据则明文传送, 并由远程用户的互联网运营商路由 对于 ASA V9.1.4 及更高版本, 在指定包含列表时, 还可以为包含范围内的子网指定排除列表 已排除的子网中的地址将不进行隧道传送, 而包含列表的其余地址将进行隧道传送 排除列表中的网络将不通过隧道发送 可以使用拒绝条目指定排除列表, 使用允许条目指定包含列表 注意 客户端将忽略排除列表中并非包含列表的子集的网络 excludespecified - 不在网络列表中指定的网络上通过隧道传入或传出流量 进出所有其他地址的流量通过隧道传送 在客户端上处于活动状态的 VPN 客户端配置文件必须启用本地 LAN 访问 tunnelall - 指定所有流量都通过隧道 此策略禁用分割隧道 远程用户能够访问企业网络, 但无法访问本地网络 这是默认选项 4-48

123 第 4 章 连接配置文件 组策略和用户 组策略 备注 分割隧道是一项流量管理功能而非安全功能 为实现最佳安全性, 建议不启用分割隧道 以下示例显示如何为 IPv4 和 IPv6 设置一个分割隧道策略, 仅通过隧道传送名为 FirstGroup 的组策略的指定网络 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# split-tunnel-policy tunnelspecified hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# ipv6-split-tunnel-policy tunnelspecified 指定分割隧道的网络列表 在分割隧道中, 网络列表确定通过隧道传送的网络流量 AnyConnect 根据网络列表 ( 是一个 ACL) 制定分割隧道决策 操作步骤 hostname(config-group-policy)# split-tunnel-network-list {value access-list_name none} hostname(config-group-policy)# no split-tunnel-network-list value [access-list_name] value access-list name - 标识枚举要通过隧道传送或不通过隧道传送的网络的 ACL ACL 可以是包含同时指定 IPv4 和 IPv6 地址的 ACE 的统一 ACL none - 表示分割隧道没有网络列表,ASA 通过隧道传送所有流量 指定 none 关键字会使用空值来设置分割隧道网络列表, 从而禁止分割隧道 它还可防止从默认或指定的组策略继承默认分割隧道网络列表 如要删除网络列表, 请输入此命令的 no 形式 如要删除所有分割隧道网络列表, 请输入不带参数的 no split-tunnel-network-list 命令 此命令删除所有已配置的网络列表, 包括空列表 ( 如果通过输入 none 关键字进行了创建 ) 当没有分割隧道网络列表时, 用户将继承默认或指定组策略中存在的任意网络列表 如要防止用户继承此类网络列表, 请输入 split-tunnel-network-list none 命令 示例 以下示例显示如何创建名为 FirstList 的网络列表, 并将其添加到名为 FirstGroup 的组策略 FistList 是一个排除列表和一个属于该排除列表一部分的包含列表 : hostname(config)# split-tunnel-policy tunnelspecified hostname(config)# access-list FirstList deny ip any hostname(config)# access-list FirstList permit ip any hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# split-tunnel-network-list value FirstList 以下示例显示如何创建名为 v6 的网络列表, 并将 v6 分割隧道策略添加到名为 GroupPolicy_ipv6-ikev2 的组策略 v6 是一个排除列表和一个属于该排除列表一部分的包含列表 : hostname(config)# access-list v6 extended permit ip fd90:5000::/32 any6 hostname(config)# access-list v6 extended deny ip fd90:5000:3000:2880::/64 any6 hostname(config)# group-policy GroupPolicy_ipv6-ikev2 internal hostname(config)# group-policy GroupPolicy_ipv6-ikev2 attributes hostname(config-group-policy)# vpn-tunnel-protocol ikev2 ssl-client hostname(config-group-policy)# ipv6-split-tunnel-policy tunnelspecified hostname(config-group-policy)# split-tunnel-network-list value v6 4-49

124 组策略 第 4 章 连接配置文件 组策略和用户 验证分割隧道配置 运行 show runn group-policy attributes 命令以验证配置 本示例显示管理员已同时设置 IPv4 和 IPv6 网络策略并对两种策略使用网络列表 ( 统一 ACL)FirstList hostname(config-group-policy)# show runn group-policy FirstGroup attributes group-policy FirstGroup attributes split-tunnel-policy tunnelspecified ipv6-split-tunnel-policy tunnelspecified split-tunnel-network-list value FirstList 配置分割隧道的域属性 定义默认域名 可以指定要通过分割隧道解析的默认域名或域列表, 我们称之为分割 DNS AnyConnect 3.1 对于 Windows 和 Mac OS X 平台支持真分割 DNS 功能 如果安全设备上的组策略启用分割 - 包含隧道, 并且如果其指定要通过隧道传送的 DNS 名称, 则 AnyConnect 隧道会将与这些名称匹配的任何 DNS 查询都通过隧道传送到专用 DNS 服务器 真分割 DNS 允许仅对与 ASA 推送到客户端的域匹配的 DNS 请求进行隧道访问 这些请求并非明文发送 另一方面, 如果 DNS 请求与 ASA 向下推送的域不匹配, 则 AnyConnect 会使客户端操作系统上的 DNS 解析器以明文提交主机名来进行 DNS 解析 请注意, 分割 DNS 支持标准和更新查询 ( 包括 A AAAA NS TXT MX SOA ANY SRV PTR 和 CNAME) 允许与任何隧道网络匹配的 PRT 查询通过隧道 对于 Mac OS X, 仅当满足以下条件之一时,AnyConnect 才能对特定 IP 协议使用真分割 DNS: 为组策略中的一种 IP 协议 ( 例如 IPv4) 配置分割 DNS 并为另一种 IP 协议 ( 例如 IPv6) 配置客户端绕行协议 ( 对后一种 IP 协议不配置地址池 ) 为两种 IP 协议均配置分割 DNS ASA 将默认域名传递到 AnyConnect 客户端 客户端将域名附加到省略域字段的 DNS 查询 此域名仅适用于通过隧道发送的数据包 当没有默认域名时, 用户继承默认组策略中的默认域名 如要为组策略的用户指定默认域名, 请在 group-policy 配置模式下输入 default-domain 命令 如要删除域名, 请输入此命令的 no 形式 hostname(config-group-policy)# default-domain {value domain-name none} hostname(config-group-policy)# no default-domain [domain-name] value domain-name 参数标识组的默认域名 如要指定没有默认域名, 请输入 none 关键字 此命令使用空值来设置默认域名, 这将禁止使用默认域名并防止从默认或指定的组策略继承默认域名 如要删除所有默认域名, 请输入不带参数的 no default-domain 命令 此命令删除所有已配置的默认域名, 包括空列表 ( 如果通过输入带有 none 关键字的 default-domain 命令进行了创建 ) no 形式允许继承域名 以下示例显示如何为名为 FirstGroup 的组策略设置默认域名 FirstDomain: hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# default-domain value FirstDomain 4-50

125 第 4 章 连接配置文件 组策略和用户 组策略 定义分割隧道的域列表 除默认域以外, 输入要通过分割隧道解析的域列表 在 group-policy 配置模式下输入 split-dns 命令 如要删除列表, 请输入此命令的 no 形式 当没有分割隧道域列表时, 用户将继承默认组策略中存在的任意域列表 如要防止用户继承此类分割隧道域列表, 请输入带有 none 关键字的 split-dns 命令 如要删除所有分割隧道域列表, 请输入不带参数的 no split-dns 命令 这会删除所有已配置的分割隧道域列表, 包括通过发出带 none 关键字的 split-dns 命令创建的空列表 参数 value domain-name 提供 ASA 通过分割隧道解析的域名 none 关键字表示没有任何分割 DNS 列表 它还使用空值来设置分割 DNS 列表, 从而禁止使用分割 DNS 列表, 并防止从默认或指定的组策略继承分割 DNS 列表 此命令的语法如下 : hostname(config-group-policy)# split-dns {value domain-name1 [domain-name2... domain-namen] none} hostname(config-group-policy)# no split-dns [domain-name domain-name2 domain-namen] 输入单个空格以分隔域列表中的每个条目 条目的数量没有限制, 但整个字符串不能超过 255 个字符 只能使用字母数字字符 连字符 (-) 和句点 (.) 如果要通过隧道解析默认域名, 则必须在此列表中显式包含该名称 以下示例显示如何为名为 FirstGroup 的组策略配置要通过分割隧道解析的域 Domain1 Domain2 Domain3 和 Domain4: hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# split-dns value Domain1 Domain2 Domain3 Domain4 备注 当配置分割 DNS 时, 请确保指定的专用 DNS 服务器与为客户端平台配置的 DNS 服务器不重叠 如果重叠, 则域名解析无法正常工作, 并且查询可能会丢失 为 Windows XP 和分割隧道配置 DHCP 拦截 如果分割隧道选项超过 255 个字节, 则 Microsoft XP 会异常导致域名的损坏 为避免此问题, ASA 将其发送的路由数限制为 27 至 40 条路由, 并且路由数取决于路由类 通过 DHCP 截取,Microsoft Windows XP 客户端可将分割隧道与 ASA 配合使用 ASA 直接回复 Microsoft Windows XP 客户端 DHCP Inform 消息, 为该客户端提供隧道 IP 地址的子网掩码 域名和无类静态路由 对于 Windows XP 之前的 Windows 客户端,DHCP 拦截提供域名和子网掩码 这对于不适合使用 DHCP 服务器的环境很有用 intercept-dhcp 命令启用或禁用 DHCP 拦截 hostname(config-group-policy)# intercept-dhcp netmask {enable disable} hostname(config-group-policy)# netmask 变量提供隧道 IP 地址的子网掩码 此命令的 no 形式会从配置中删除 DHCP 拦截 : [no] intercept-dhcp 以下示例显示如何为名为 FirstGroup 的组策略设置 DHCP 拦截 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# intercept-dhcp enable 4-51

126 组策略 第 4 章 连接配置文件 组策略和用户 为 Web 安全设置分割排除策略 关于云 Web 安全的信息 AnyConnect Web 安全模块是一个终端组件, 用于将 HTTP 流量路由到思科云 Web 安全扫描代理, 在此由思科云 Web 安全对其进行评估 思科云 Web 安全会解构网页的元素, 以便同时分析每个元素 它会阻止可能有害的内容并允许良性内容通过 由于全球遍布许多思科云 Web 安全扫描代理, 利用 AnyConnect Web 安全的用户能够以最快的响应时间将其流量路由到思科云 Web 安全扫描代理, 从而最大限度地减少延迟 用户建立 VPN 会话后, 所有网络流量都通过 VPN 隧道发送 但是, 当 AnyConnect 用户使用 Web 安全时, 需要将起源于终端的 HTTP 流量从隧道中排除并将其直接发送到云 Web 安全扫描代理 如要为旨在以云 Web 安全扫描代理为目标的流量设置分割隧道排除, 请在组策略中使用 Set up split exclusion for Web Security 按钮 必备条件 您需要能够使用 ASDM 来访问 ASA 不能使用命令行界面执行此程序 需要配置 Web 安全以供与 AnyConnect 客户端配合使用 请参阅 AnyConnect 安全移动客户端管理员指南 中的配置 Web 安全 您已创建组策略并为其分配已配置 Web 安全的 AnyConnect 客户端的连接配置文件 详细步骤 步骤 1 为要配置的头端启动 ASDM 会话, 然后依次选择 Remote Access VPN > Configuration > Group Policies 步骤 2 选择要配置的组策略, 然后点击 Edit 步骤 3 依次选择 Advanced > Split Tunneling 步骤 4 点击 Set up split exclusion for Web Security 步骤 5 输入用于 Web 安全分割排除的新 ACL 或选择现有 ACL ASDM 将设置该 ACL 以便在网络列表中使用 步骤 6 对于新列表点击 Create Access List, 对于现有列表点击 Update Access List 步骤 7 点击 OK 后续操作 添加其他扫描代理后, 使用新信息更新此程序中创建的统一 ACL 4-52

127 第 4 章 连接配置文件 组策略和用户 组策略 配置用于远程访问客户端的浏览器代理设置 按照以下步骤配置客户端的代理服务器参数 步骤 1 通过在 group-policy 配置模式下输入 msie-proxy server 命令来配置客户端设备的浏览器代理服务器和端口 : hostname(config-group-policy)# msie-proxy server {value server[:port] none} hostname(config-group-policy)# 默认值为 none 要从配置中删除该属性, 请使用该命令的 no 形式 hostname(config-group-policy)# no msie-proxy server hostname(config-group-policy)# 包含代理服务器 IP 地址或主机名和端口号的行的长度必须小于 100 个字符 以下示例显示如何为名为 FirstGroup 的组策略将 IP 地址 配置为使用端口 880 的浏览器代理服务器 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# msie-proxy server value :880 hostname(config-group-policy)# 步骤 2 通过在 group-policy 配置模式下输入 msie-proxy method 命令来为客户端设备配置浏览器代理操作 ( 方法 ) hostname(config-group-policy)# msie-proxy method [auto-detect no-modify no-proxy use-server] hostname(config-group-policy)# 默认值为 use-server 要从配置中删除该属性, 请使用该命令的 no 形式 hostname(config-group-policy)# no msie-proxy method [auto-detect no-modify no-proxy use-server] hostname(config-group-policy)# 可用的方法如下 : auto-detect - 在客户端设备的浏览器中启用自动代理服务器检测 no-modify - 对于此客户端设备保持浏览器中的 HTTP 浏览器代理服务器设置不变 no-proxy - 在客户端设备的浏览器中禁用 HTTP 代理设置 use-server - 设置浏览器中的 HTTP 代理服务器设置以使用 msie-proxy server 命令中配置的值 包含代理服务器 IP 地址或主机名和端口号的行的长度必须小于 100 个字符 以下示例显示如何将 auto-detect 配置为名为 FirstGroup 的组策略的浏览器代理设置 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# msie-proxy method auto-detect hostname(config-group-policy)# 以下示例将名为 FirstGroup 的组策略的浏览器代理设置配置为使用服务器 QAserver 和端口 1001 作为客户端设备的服务器 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# msie-proxy server QAserver:port 1001 hostname(config-group-policy)# msie-proxy method use-server hostname(config-group-policy)# 4-53

128 组策略 第 4 章 连接配置文件 组策略和用户 步骤 3 通过在 group-policy 配置模式下输入 msie-proxy except-list 命令来为客户端设备上的本地绕行配置浏览器代理例外列表设置 这些地址不是通过代理服务器进行访问 此列表对应于 Proxy Settings 对话框中的 Exceptions 框 hostname(config-group-policy)# msie-proxy except-list {value server[:port] none} hostname(config-group-policy)# 要从配置中删除该属性, 请使用该命令的 no 形式 : hostname(config-group-policy)# no msie-proxy except-list hostname(config-group-policy)# value server:port - 指定 MSIE 服务器的 IP 地址或名称以及为此客户端设备应用的端口 端口号可选 none - 表示没有任何 IP 地址 / 主机名或端口并防止继承例外列表 默认情况下, 会禁用 msie-proxy except-list 包含代理服务器 IP 地址或主机名和端口号的行的长度必须小于 100 个字符 以下示例显示如何为名为 FirstGroup 的组策略设置浏览器代理例外列表, 其中包含 IP 地址为 的使用端口 880 的服务器 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# msie-proxy except-list value :880 hostname(config-group-policy)# 步骤 4 通过在 group-policy 配置模式下输入 msie-proxy local-bypass 命令来为客户端设备启用或禁用浏览器代理本地绕行设置 hostname(config-group-policy)# msie-proxy local-bypass {enable disable} hostname(config-group-policy)# 要从配置中删除该属性, 请使用该命令的 no 形式 hostname(config-group-policy)# no msie-proxy local-bypass {enable disable} hostname(config-group-policy)# 默认情况下, 会禁用 msie-proxy local-bypass 以下示例显示如何为名为 FirstGroup 的组策略启用浏览器代理本地绕行 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# msie-proxy local-bypass enable hostname(config-group-policy)# 配置 AnyConnect 安全移动客户端连接的组策略属性 按照第 9 章 AnyConnect VPN 客户端连接 中所述启用 AnyConnect 客户端连接后, 可以启用或要求组策略的 AnyConnect 功能 在 group-policy webvpn 配置模式下按照以下步骤进行操作 : 步骤 1 进入 group-policy webvpn 配置模式 例如 : hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn 4-54

129 第 4 章 连接配置文件 组策略和用户 组策略 步骤 2 步骤 3 如要禁用在终端计算机上永久性安装 AnyConnect 客户端, 请使用带有 none 关键字的 anyconnect keep-installer 命令 例如 : hostname(config-group-webvpn)# anyconnect keep-installer none hostname(config-group-webvpn)# 默认设置为启用客户端的永久性安装 在 AnyConnect 会话结束时, 客户端仍安装在终端上 如要为组策略的 AnyConnect SSL 连接上的 HTTP 数据启用压缩, 请输入 anyconnect ssl compression 命令 默认情况下, 压缩设置为 none( 禁用 ) 如要启用压缩, 请使用 deflate 关键字 例如 : hostname(config-group-webvpn)# anyconnect compression deflate hostname(config-group-webvpn)# 步骤 4 如要在 ASA 上启用对等体存活检测 (DPD) 并设置 AnyConnect 客户端或 ASA 执行 DPD 的频率, 请使用 anyconnect dpd-interval 命令 : anyconnect dpd-interval {[gateway {seconds none}] [client {seconds none}]} 默认情况下,ASA 和 AnyConnect 客户端均会每 30 秒执行一次 DPD 网关是指 ASA 可以将 ASA 执行 DPD 测试的频率指定为从 30 秒至 3600 秒 (1 小时 ) 的范围 指定 none 会禁用 ASA 执行的 DPD 测试 建议使用值 300 客户端是指 AnyConnect 客户端 可以将客户端执行 DPD 测试的频率指定为从 30 秒至 3600 秒 (1 小时 ) 的范围 指定 none 会禁用客户端执行的 DPD 测试 建议使用值 30 以下示例将 ASA( 网关 ) 执行的 DPD 频率配置为 300 秒, 将客户端执行的 DPD 频率配置为 30 秒 : hostname(config-group-webvpn)# anyconnect dpd-interval gateway 300 hostname(config-group-webvpn)# anyconnect dpd-interval client 30 hostname(config-group-webvpn)# 步骤 5 可以确保通过代理 防火墙或 NAT 设备进行的 AnyConnect 连接保持打开, 即使设备通过使用 anyconnect ssl keepalive 命令调整保持连接消息的频率来限制连接可以空闲的时间也如此 : anyconnect ssl keepalive {none seconds} 调整保持连接还可确保当远程用户未主动运行基于套接字的应用 ( 例如 Microsoft Outlook 或 Microsoft Internet Explorer) 时,AnyConnect 客户端不会断开连接并重新连接 以下示例配置安全设备以使 AnyConnect 客户端能够以 300 秒 (5 分钟 ) 的频率发送保持连接信息 : hostname(config-group-webvpn)# anyconnect ssl keepalive 300 hostname(config-group-webvpn)# 步骤 6 如要使 AnyConnect 客户端能够对 SSL 会话执行重新生成密钥操作, 请使用 anyconnect ssl rekey 命令 : anyconnect ssl rekey {method {ssl new-tunnel} time minutes none}} 默认情况下, 会禁用重新生成密钥 将方法指定为 new-tunnel 即指定 AnyConnect 客户端在 SSL 重新生成密钥期间建立新隧道 将方法指定为 none 会禁用重新生成密钥 将方法指定为 ssl 即指定在重新生成密钥期间进行 SSL 重新协商 可以指定从 1 至 10080(1 周 ) 的时间 ( 即从会话开始直到重新生成密钥的分钟数 ), 而不指定方法 4-55

130 组策略 第 4 章 连接配置文件 组策略和用户 以下示例将 AnyConnect 客户端配置为在重新生成密钥期间与 SSL 重新协商, 并将重新生成密钥配置为在会话开始后 30 分钟发生 : hostname(config-group-webvpn)# anyconnect ssl rekey method ssl hostname(config-group-webvpn)# anyconnect ssl rekey time 30 hostname(config-group-webvpn)# 步骤 7 通过客户端绕行协议功能, 可以配置 ASA 在应该只有 IPv6 流量时如何管理 IPv4 流量, 或者在应该只有 IPv4 流量时如何管理 IPv6 流量 当 AnyConnect 客户端对 ASA 进行 VPN 连接时,ASA 可以为客户端分配 IPv4 和 / 或 IPv6 地址 如果 ASA 为 AnyConnect 连接仅分配 IPv4 地址或仅分配 IPv6 地址, 则现在可以配置客户端绕行协议来丢弃 ASA 没有为其分配 IP 地址的网络流量, 或者允许该流量绕过 ASA 而从客户端以未加密或 明文 形式发送 例如, 假设 ASA 仅向 AnyConnect 连接分配 IPv4 地址, 而终端为双协议栈 当终端尝试访问 IPv6 地址时, 如果禁用客户端绕行协议, 则会丢弃 IPv6 流量 ; 但是, 如果启用客户端绕行协议, 则会从客户端以明文形式发送 IPv6 流量 使用 client-bypass-protocol 命令启用或禁用客户端绕行协议功能 以下是命令语法 : client-bypass-protocol {enable disable} 以下示例启用客户端绕行协议 : hostname(config-group-policy)# client-bypass-protocol enable hostname(config-group-policy)# 以下示例禁用客户端绕行协议 : hostname(config-group-policy)# client-bypass-protocol disable hostname(config-group-policy)# 以下示例删除已启用或已禁用的客户端绕行协议设置 : hostname(config-group-policy)# no client-bypass-protocol enable hostname(config-group-policy)# 步骤 8 如果已在 ASA 之间配置负载均衡, 请指定 ASA 的 FQDN, 以解析用于重新建立 VPN 会话的 ASA IP 地址 此设置对于支持不同 IP 协议 ( 例如 IPv4 到 IPv6) 的网络之间的客户端漫游非常关键 在漫游之后, 无法使用 AnyConnect 配置文件中的 ASA FQDN 来获取 ASA IP 地址 在负载均衡场景中, 地址可能与正确的设备 ( 与之建立隧道的设备 ) 不匹配 如果未将设备 FQDN 推送到客户端, 则客户端将尝试重新连接到隧道以前建立的任意 IP 地址 为了支持不同协议 ( 从 IPv4 到 IPv6) 的网络之间的漫游,AnyConnect 必须在漫游之后执行设备 FQDN 的名称解析, 以便确定要使用哪个 ASA 地址重新建立隧道 在初始连接期间, 客户端使用其配置文件中的 ASA FQDN 如果可用, 在后续会话重新连接期间, 它总是使用由 ASA 推送 ( 并由管理员在组策略中配置 ) 的设备 FQDN 如果未配置 FQDN, 则 ASA 从 Device Setup > Device Name/Password and Domain Name 下设置的任意内容派生设备 FQDN( 并将其发送到客户端 ) 如果 ASA 未推送设备 FQDN, 则客户端在不同 IP 协议的网络之间漫游后无法重新建立 VPN 会话 使用 gateway-fqdn 命令配置 ASA 的 FQDN 以下是命令语法: gateway-fqdn value {FQDN_Name none} no gateway-fqdn 4-56

131 第 4 章 连接配置文件 组策略和用户 组策略 以下示例将 ASA 的 FQDN 定义为 ASAName.example.cisco.com hostname(config-group-policy)# gateway-fqdn value ASAName.example.cisco.com hostname(config-group-policy)# 以下示例从组策略中删除 ASA 的 FQDN 然后, 组策略从默认组策略继承该值 hostname(config-group-policy)# no gateway-fqdn hostname(config-group-policy)# 以下示例将 FQDN 定义为空值 如果可用, 将使用通过 hostname 和 domain-name 命令配置的全局 FQDN hostname(config-group-policy)# gateway-fqdn none hostname(config-group-policy)# 配置 IPsec (IKEv1) 客户端的组策略属性 配置 IPsec (IKEv1) 客户端的安全属性 如要指定组的安全设置, 请执行以下步骤 步骤 1 在 group-policy 配置模式下使用带有 enable 关键字的 password-storage 命令指定是否允许用户在客户端系统上存储其登录密码 如要禁用密码存储, 请使用带有 disable 关键字的 password-storage 命令 hostname(config-group-policy)# password-storage {enable disable} hostname(config-group-policy)# 出于安全原因, 默认情况下会禁用密码存储 仅在已知处于安全站点中的系统上启用密码存储 如要从运行配置中删除 password-storage 属性, 请输入此命令的 no 形式 : hostname(config-group-policy)# no password-storage hostname(config-group-policy)# 指定 no 形式允许从其他组策略继承 password-storage 的值 此命令不适用于交互式硬件客户端身份验证或硬件客户端的个人用户身份验证 以下示例显示如何为名为 FirstGroup 的组策略启用密码存储 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# password-storage enable hostname(config-group-policy)# 步骤 2 指定是否启用 IP 压缩 ( 默认情况下已禁用 ) 注意 IPsec IKEv2 连接不支持 IP 压缩 hostname(config-group-policy)# ip-comp {enable disable} hostname(config-group-policy)# 如要启用 LZS IP 压缩, 请在 group-policy 配置模式下输入带有 enable 关键字的 ip-comp 命令 如要禁用 IP 压缩, 请输入带有 disable 关键字的 ip-comp 命令 如要从运行配置中删除 ip-comp 属性, 请输入此命令的 no 形式 这允许从其他组策略继承值 4-57

132 组策略 第 4 章 连接配置文件 组策略和用户 hostname(config-group-policy)# no ip-comp hostname(config-group-policy)# 启用数据压缩可能会加快使用调制解调器连接的远程拨入用户的数据传输速率 注意 步骤 3 数据压缩会增加每个用户会话的内存要求和 CPU 使用率, 并因此降低 ASA 的整体吞吐量 为此, 建议仅对使用调制解调器连接的远程用户启用数据压缩 设计特定于调制解调器用户的组策略并仅对其启用压缩 通过在 group-policy 配置模式下使用带有 enable 关键字的 re-xauth 命令指定是否要求用户在 IKE 重新生成密钥时重新进行身份验证 注意 IKEv2 连接不支持 IKE 重新生成密钥 如果启用在 IKE 重新生成密钥时重新进行身份验证, 则 ASA 会在初始阶段 1 IKE 协商期间提示用户输入用户名和密码, 此外只要 IKE 重新生成密钥便提示进行用户身份验证 重新身份验证提供额外的安全性 如果配置的重新生成密钥间隔非常短, 用户可能会发现重复的授权请求十分不便 如要避免重复的授权请求, 请禁用重新身份验证 如要检查配置的重新生成密钥间隔, 请在监控模式下输入 show crypto ipsec sa 命令查看以秒为单位和以千字节数据为单位的安全关联寿命 如要禁用在 IKE 重新生成密钥时重新进行用户身份验证, 请输入 disable 关键字 默认情况下, 会禁用在 IKE 重新生成密钥时重新进行身份验证 hostname(config-group-policy)# re-xauth {enable disable} hostname(config-group-policy)# 如要允许从其他组策略继承用于在 IKE 重新生成密钥时重新进行身份验证的值, 请输入此命令的 no 形式从运行配置中删除 re-xauth 属性 : hostname(config-group-policy)# no re-xauth hostname(config-group-policy)# 注意 如果在连接的另一端没有任何用户, 则重新身份验证会失败 步骤 4 指定是否启用完全向前保密 在 IPsec 协商过程中, 完全向前保密确保每个新的加密密钥与任何先前密钥不相关 一个组策略可以从另一个组策略继承完全向前保密的值 默认情况下会禁用完全向前保密 如要启用完全向前保密, 请在 group-policy 配置模式下使用带有 enable 关键字的 pfs 命令 hostname(config-group-policy)# pfs {enable disable} hostname(config-group-policy)# 如要禁用完全向前保密, 请输入带有 disable 关键字的 pfs 命令 如要从运行配置中删除完全向前保密属性并防止继承值, 请输入此命令的 no 形式 hostname(config-group-policy)# no pfs hostname(config-group-policy)# 4-58

133 第 4 章 连接配置文件 组策略和用户 组策略 配置 IKEv1 客户端的 IPsec-UDP 属性 借助 IPsec over UDP( 有时称为通过 NAT 的 IPSec), 思科 VPN 客户端或硬件客户端通过 UDP 连接到运行 NAT 的 ASA 默认情况下会将其禁用 IPsec over UDP 是专有的 ; 它仅适用于远程访问连接, 并且需要模式配置 ASA 在协商 SA 时与客户端交换配置参数 使用 IPsec over UDP 可能会略微降低系统性能 如要启用 IPsec over UDP, 请在 group-policy 配置模式下配置带有 enable 关键字的 ipsec-udp 命令, 如下所示 : hostname(config-group-policy)# ipsec-udp {enable disable} hostname(config-group-policy)# no ipsec-udp 如要使用 IPsec over UDP, 还必须配置 ipsec-udp-port 命令, 如本节中所述 如要禁用 IPsec over UDP, 请输入 disable 关键字 如要从运行配置中删除 IPsec over UDP 属性, 请输入此命令的 no 形式 这允许从其他组策略继承 IPsec over UDP 的值 此外, 还必须将思科 VPN 客户端配置为使用 IPsec over UDP( 默认情况下已配置为使用 ) VPN 3002 无需配置即可使用 IPsec over UDP 以下示例显示如何为名为 FirstGroup 的组策略设置 IPsec over UDP: hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# ipsec-udp enable 如果启用 IPsec over UDP, 则还必须在 group-policy 配置模式下配置 ipsec-udp-port 命令 此命令设置 IPsec over UDP 的 UDP 端口号 在 IPsec 协商过程中,ASA 侦听配置的端口并转发该端口的 UDP 流量, 即使其他过滤规则丢弃 UDP 流量也如此 端口号的范围可以从 4001 至 默认端口值为 如要禁用 UDP 端口, 请输入此命令的 no 形式 这允许从其他组策略继承 IPsec over UDP 的端口值 hostname(config-group-policy)# ipsec-udp-port port 以下示例显示如何为名为 FirstGroup 的组策略将 IPsec UDP 端口设置为端口 4025: hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# ipsec-udp-port 4025 配置 VPN 硬件客户端的属性 配置安全设备身份验证 本节介绍如何为 VPN 硬件客户端启用或禁用安全设备身份验证和用户身份验证或设置用户身份验证超时值 它们还允许思科 IP 电话和 LEAP 数据包绕过个人用户身份验证并允许使用网络扩展模式的硬件客户端进行连接 安全设备身份验证通过要求 VPN 硬件客户端在客户端每次启动隧道时使用用户名和密码进行身份验证来提供额外的安全性 启用此功能后, 硬件客户端没有保存的用户名和密码 默认情况下会禁用安全设备身份验证 备注 在启用此功能的情况下, 如要启动 VPN 隧道, 必须有用户来输入用户名和密码 安全设备身份验证要求为硬件客户端使用的连接配置文件配置身份验证服务器组 如果要求在主要 ASA 上进行安全设备身份验证, 请务必在所有备用服务器上也进行配置 4-59

134 组策略 第 4 章 连接配置文件 组策略和用户 在 group-policy 配置模式下输入带有 enable 关键字的 secure-unit-authentication 命令, 指定是否启用安全设备身份验证 hostname(config-group-policy)# secure-unit-authentication {enable disable} hostname(config-group-policy)# no secure-unit-authentication 如要禁用安全设备身份验证, 请输入 disable 关键字 如要从运行配置中删除安全设备身份验证属性, 请输入此命令的 no 形式 此选项允许从其他组策略继承安全设备身份验证的值 以下示例显示如何为名为 FirstGroup 的组策略启用安全设备身份验证 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# secure-unit-authentication enable 配置用户身份验证 默认情况下会禁用用户身份验证 启用后, 用户身份验证要求硬件客户端背后的个人用户进行身份验证, 以获取通过隧道访问网络的权限 个人用户按照身份验证服务器的配置顺序进行身份验证 在 group-policy 配置模式下输入带有 enable 关键字的 user-authentication 命令, 指定是否启用用户身份验证 hostname(config-group-policy)# user-authentication {enable disable} hostname(config-group-policy)# no user-authentication 如要禁用用户身份验证, 请输入 disable 关键字 如要从运行配置中删除用户身份验证属性, 请输入此命令的 no 形式 此选项允许从其他组策略继承用户身份验证的值 如果要求在主要 ASA 上进行用户身份验证, 请务必在所有备用服务器上也进行配置 以下示例显示如何为名为 FirstGroup 的组策略启用用户身份验证 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# user-authentication enable 配置空闲超时 在 group-policy 配置模式下输入 user-authentication-idle-timeout 命令, 为硬件客户端背后的个人用户设置空闲超时 如果硬件客户端背后的用户在空闲超时期内没有通信活动, 则 ASA 会终止客户端的访问 : hostname(config-group-policy)# user-authentication-idle-timeout {minutes none} hostname(config-group-policy)# no user-authentication-idle-timeout 备注 此计时器仅终止客户端通过 VPN 隧道进行的访问, 而非终止 VPN 隧道本身 响应 show uauth 命令所指示的空闲超时始终是思科简易 VPN 远程设备上进行隧道身份验证的用户的空闲超时值 minutes 参数指定空闲超时期内的分钟数 最小值为 1 分钟, 默认值为 30 秒, 最大值为 分钟 如要删除空闲超时值, 请输入此命令的 no 形式 此选项允许从其他组策略继承空闲超时值 如要防止继承空闲超时值, 请输入带有 none 关键字的 user-authentication-idle-timeout 命令 此命令使用空值来设置空闲超时, 这将禁止空闲超时并防止从默认或指定的组策略继承用户身份验证空闲超时值 4-60

135 第 4 章 连接配置文件 组策略和用户 组策略 以下示例显示如何为名为 FirstGroup 的组策略设置 45 分钟的空闲超时值 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# user-authentication-idle-timeout 45 配置 IP 电话绕行 可以允许思科 IP 电话绕过硬件客户端背后的个人用户身份验证 如要启用 IP 电话绕行, 请在 group-policy 配置模式下输入带有 enable 关键字的 ip-phone-bypass 命令 通过 IP 电话绕行, 硬件客户端背后的 IP 电话可以在不执行用户身份验证过程的情况下进行连接 默认情况下会禁用 IP 电话绕行 如果启用, 安全设备身份验证仍然生效 如要禁用 IP 电话绕行, 请输入 disable 关键字 如要从运行配置中删除 IP 电话绕行属性, 请输入此命令的 no 形式 此选项允许从其他组策略继承 IP 电话绕行的值 : hostname(config-group-policy)# ip-phone-bypass {enable disable} hostname(config-group-policy)# no ip-phone-bypass 注意 您必须配置 mac-exempt 来豁免客户端的身份验证 配置 LEAP 绕行 当启用 LEAP 绕行时, 来自 VPN 3002 硬件客户端背后的无线设备的 LEAP 数据包在用户身份验证之前通过 VPN 隧道 此操作可以让使用思科无线接入点设备的工作站建立 LEAP 身份验证, 然后在每次用户身份验证时再次进行身份验证 默认情况下会禁用 LEAP 绕行 如要允许来自思科无线接入点的 LEAP 数据包绕过个人用户身份验证, 请在 group-policy 配置模式下输入带有 enable 关键字的 leap-bypass 命令 如要禁用 LEAP 绕行, 请输入 disable 关键字 如要从运行配置中删除 LEAP 绕行属性, 请输入此命令的 no 形式 此选项允许从其他组策略继承 LEAP 绕行的值 : hostname(config-group-policy)# leap-bypass {enable disable} hostname(config-group-policy)# no leap-bypass 备注 IEEE 802.1X 是在有线和无线网络上进行身份验证的标准 它在客户端与身份验证服务器之间为无限 LAN 提供强相互身份验证, 这可提供动态的每用户 每会话无线加密隐私 (WEP) 密钥, 从而消除随静态 WEP 密钥出现的管理负担和安全问题 Cisco Systems 已开发一种 802.1X 无线身份验证类型, 称为思科 LEAP LEAP( 轻量级可扩展身份验证协议 ) 在连接一端的无线客户端与另一端的 RADIUS 服务器之间实施相互身份验证 用于身份验证的凭证 ( 包括密码 ) 始终经过加密后再通过无线介质传输 思科 LEAP 向 RADIUS 服务器进行无线客户端身份验证 它不包括 RADIUS 记帐服务 如果启用交互式硬件客户端身份验证, 则此功能无法按预期工作 注意 允许任何未经身份验证的流量通过隧道可能会对网络产生安全风险 以下示例显示如何为名为 FirstGroup 的组策略设置 LEAP 绕行 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# leap-bypass enable 4-61

136 组策略 第 4 章 连接配置文件 组策略和用户 启用网络扩展模式 网络扩展模式可让硬件客户端通过 VPN 隧道为远程专用网络提供单一 可路由的网络 IPsec 封装从硬件客户端背后的专用网络到 ASA 背后的网络的所有流量 PAT 不适用 因此,ASA 背后的设备可以通过隧道而且只能通过隧道直接访问硬件客户端背后的专用网络中的设备, 反之亦然 硬件客户端必须启动隧道, 但是在建立隧道之后, 任一端都可发起数据交换 在 group-policy 配置模式下输入带有 enable 关键字的 nem 命令, 为硬件客户端启用网络扩展模式 : hostname(config-group-policy)# nem {enable disable} hostname(config-group-policy)# no nem 如要禁用 NEM, 请输入 disable 关键字 如要从运行配置中删除 NEM 属性, 请输入此命令的 no 形式 此选项允许从其他组策略继承值 以下示例显示如何为名为 FirstGroup 的组策略设置 NEM: hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# nem enable 配置备用服务器属性 如果计划使用备用服务器, 请对其进行配置 通过 IPsec 备用服务器,VPN 客户端可在主要 ASA 不可用时连接到中心站点 配置备用服务器时,ASA 会在建立 IPsec 隧道时将服务器列表推送到客户端 如果不在客户端或主要 ASA 上配置备用服务器, 则没有备用服务器 在客户端或主要 ASA 上配置备用服务器 如果在 ASA 上配置备用服务器, 它会将备用服务器策略推送到组中的客户端, 从而取代客户端上的备用服务器列表 ( 如果已配置 ) 备注 如果使用主机名, 最好将备用 DNS 和 WINS 服务器置于与主要 DNS 和 WINS 服务器不同的网络 否则, 如果硬件客户端背后的客户端通过 DHCP 从硬件客户端获取 DNS 和 WINS 信息, 与主服务器的连接丢失, 并且备用服务器具有不同的 DNS 和 WINS 信息, 则客户端在 DHCP 租用到期之前无法更新 此外, 如果使用主机名且 DNS 服务器不可用, 则可能出现显著延迟 如要配置备用服务器, 请在 group-policy 配置模式下输入 backup-servers 命令 : hostname(config-group-policy)# backup-servers {server1 server2... server10 clear-client-config keep-client-config} 如要删除备用服务器, 请在指定备用服务器的情况下输入此命令的 no 形式 如要从运行配置中删除 backup-servers 属性并允许从其他组策略继承 backup-servers 的值, 请输入此命令不带参数的 no 形式 hostname(config-group-policy)# no backup-servers [server1 server2... server10 clear-client-config keep-client-config] clear-client-config 关键字指定客户端不使用备用服务器 ASA 将推送空服务器列表 keep-client-config 关键字指定 ASA 不将备用服务器信息发送到客户端 客户端使用自己的备用服务器列表 ( 如果已配置 ) 这是默认值 server1 server 2... server10 参数列表是 VPN 客户端在主要 ASA 不可用时要使用的服务器列表, 以空格分隔并按优先级排序 此列表以 IP 地址或主机名来标识服务器 列表长度可为 500 个字符, 并且可以包含最多 10 个条目 4-62

137 第 4 章 连接配置文件 组策略和用户 组策略 以下示例显示如何为名为 FirstGroup 的组策略配置 IP 地址为 和 的备用服务器 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# backup-servers 配置网络准入控制参数 本节中的 group-policy NAC 命令全部都有默认值 除非有充分的理由对其进行更改, 否则请接受这些参数的默认值 ASA 使用经由 UDP 的可扩展身份验证协议 (EAP) (EAPoUDP) 消息传递验证远程主机的安全状态 安全状态验证包括在分配网络访问策略之前检查远程主机是否符合安全要求 在安全设备上配置 NAC 之前, 必须为网络准入控制配置访问控制服务器 访问控制服务器将安全状态标记 ( 可在 ACS 上配置的信息文本字符串 ) 下载到安全设备来协助系统监控 报告 调试和日志记录 典型的安全状态标记为正常 检查 隔离 感染或未知 在安全状态验证或无客户端身份验证后,ACS 将会话的访问策略下载到安全设备 如要配置默认组策略或备用组策略的网络准入控制设置, 请执行以下步骤 : 步骤 1 ( 可选 ) 配置状态查询计时器周期 安全设备在每次成功的安全状态验证和状态查询响应后启动状态查询计时器 此计时器到期会触发对于主机安全状态更改的查询, 称为状态查询 输入范围在 30 至 1800 内的秒数 默认设置为 300 如要指定网络准入控制会话中每次成功的安全状态验证与下一次主机安全状态更改查询之间的间隔, 请在 group-policy 配置模式下使用 nac-sq-period 命令 : hostname(config-group-policy)# nac-sq-period seconds hostname(config-group-policy)# 如要从默认组策略继承状态查询计时器的值, 请访问要从中继承该值的备用组策略, 然后使用此命令的 no 形式 : hostname(config-group-policy)# no nac-sq-period [seconds] hostname(config-group-policy)# 以下示例将状态查询计时器的值更改为 1800 秒 : hostname(config-group-policy)# nac-sq-period 1800 hostname(config-group-policy) 以下示例从默认组策略继承状态查询计时器的值 : hostname(config-group-policy)# no nac-sq-period hostname(config-group-policy)# 步骤 2 ( 可选 ) 配置 NAC 重新验证周期 安全设备在每次成功的安全状态验证后启动重新验证计时器 此计时器到期会触发下一次无条件的安全状态验证 安全设备在重新验证期间维护安全状态验证 如果访问控制服务器在安全状态验证或重新验证期间不可用, 则默认组策略会生效 输入每次成功的安全状态验证之间的间隔 ( 以秒为单位 ) 范围为 300 到 默认设置为 如要指定网络准入控制会话中每次成功的安全状态验证之间的间隔, 请在 group-policy 配置模式下使用 nac-reval-period 命令 : hostname(config-group-policy)# nac-reval-period seconds hostname(config-group-policy)# 4-63

138 组策略 第 4 章 连接配置文件 组策略和用户 如要从默认组策略继承重新验证计时器的值, 请访问要从中继承该值的备用组策略, 然后使用此命令的 no 形式 : hostname(config-group-policy)# no nac-reval-period [seconds] hostname(config-group-policy)# 以下示例将重新验证计时器更改为 秒 : hostname(config-group-policy)# nac-reval-period hostname(config-group-policy) 以下示例从默认组策略继承重新验证计时器的值 : hostname(config-group-policy)# no nac-reval-period hostname(config-group-policy)# 步骤 3 ( 可选 ) 配置 NAC 的默认 ACL 如果安全状态验证失败, 安全设备将应用与所选 ACL 关联的安全策略 指定 none 或扩展 ACL 默认设置为 none 如果设置为 none 并且安全状态验证失败, 安全设备将应用默认组策略 如要指定将用作安全状态验证失败的网络准入控制会话的默认 ACL, 请在 group-policy 配置模式下使用 nac-default-acl 命令 : hostname(config-group-policy)# nac-default-acl {acl-name none} hostname(config-group-policy)# 如要从默认组策略继承 ACL, 请访问要从中继承该 ACL 的备用组策略, 然后使用此命令的 no 形式 : hostname(config-group-policy)# no nac-default-acl [acl-name none] hostname(config-group-policy)# 此命令的元素如下 : acl-name - 指定使用 aaa-server host 命令在 ASA 上配置的安全状态验证服务器组的名称 该名称必须与该命令中指定的 server-tag 变量匹配 none - 禁用从默认组策略继承 ACL, 并且不对安全状态验证失败的 NAC 会话应用 ACL 由于默认情况下会禁用 NAC, 通过 ASA 的 VPN 流量在启用 NAC 前不受 NAC 默认 ACL 限制 以下示例将 acl-1 标识为安全状态验证失败时要应用的 ACL: hostname(config-group-policy)# nac-default-acl acl-1 hostname(config-group-policy) 以下示例从默认组策略继承 ACL: hostname(config-group-policy)# no nac-default-acl hostname(config-group-policy) 以下示例禁用从默认组策略继承 ACL, 并且不对安全状态验证失败的 NAC 会话应用 ACL: hostname(config-group-policy)# nac-default-acl none hostname(config-group-policy)# 步骤 4 配置 VPN 的 NAC 豁免 默认情况下, 豁免列表为空 过滤器属性的默认值为 none 为每个要匹配以豁免远程主机安全状态验证的操作系统 ( 和 ACL) 输入一次 vpn-nac-exempt 命令 如要向豁免安全状态验证的远程计算机类型的列表中添加条目, 请在 group-policy 配置模式下使用 vpn-nac-exempt 命令 : hostname(config-group-policy)# vpn-nac-exempt os "os name" [filter {acl-name none}] [disable] hostname(config-group-policy)# 4-64

139 第 4 章 连接配置文件 组策略和用户 组策略 如要禁用继承并指定所有主机都要进行安全状态验证, 请在 vpn-nac-exempt 之后随即使用 none 关键字 : hostname(config-group-policy)# vpn-nac-exempt none hostname(config-group-policy)# 如要从豁免列表中删除条目, 请使用此命令的 no 形式并命名要删除的该条目中的操作系统 ( 和 ACL): hostname(config-group-policy)# no vpn-nac-exempt [os "os name"] [filter {acl-name none}] [disable] hostname(config-group-policy)# 如要从与此组策略关联的豁免列表中删除所有条目并从默认组策略继承该列表, 请使用此命令的 no 形式而不指定其他关键字 : hostname(config-group-policy)# no vpn-nac-exempt hostname(config-group-policy)# 这些命令的语法元素如下 : acl-name - ASA 配置中已有的 ACL 的名称 disable - 禁用豁免列表中的条目而不将其从列表中删除 filter -( 可选 ) 用于在计算机与操作系统名称匹配的情况下应用 ACL 过滤流量的过滤器 none - 紧接在 vpn-nac-exempt 之后输入时, 此关键字禁用继承并指定所有主机都要进行安全状态验证 紧接在 filter 之后输入时, 此关键字表示该条目不指定 ACL OS - 豁免操作系统的安全状态验证 os name - 操作系统名称 仅当名称包含空格时才需要引号 ( 例如 Windows XP ) 以下示例将运行 Windows XP 的所有主机添加到豁免安全状态验证的计算机列表 : hostname(config-group-policy)# vpn-nac-exempt os "Windows XP" hostname(config-group-policy) 以下示例豁免运行 Windows 98 并与名为 acl-1 的 ACL 中 ACE 匹配的所有主机 : hostname(config-group-policy)# vpn-nac-exempt os "Windows 98" filter acl-1 hostname(config-group-policy) 以下示例将同一条目添加到豁免列表, 但是将其禁用 : hostname(config-group-policy)# vpn-nac-exempt os "Windows 98" filter acl-1 disable hostname(config-group-policy) 以下示例从豁免列表中删除同一条目, 无论其是否已禁用 : hostname(config-group-policy)# no vpn-nac-exempt os "Windows 98" filter acl-1 hostname(config-group-policy) 以下示例禁用继承并指定所有主机都要进行安全状态验证 : hostname(config-group-policy)# no vpn-nac-exempt none hostname(config-group-policy) 以下示例从豁免列表删除所有条目 : hostname(config-group-policy)# no vpn-nac-exempt hostname(config-group-policy) 步骤 5 输入以下命令启用或禁用网络准入控制 : hostname(config-group-policy)# nac {enable disable} hostname(config-group-policy)# 4-65

140 组策略 第 4 章 连接配置文件 组策略和用户 如要从默认组策略继承 NAC 设置, 请访问要从中继承该 NAC 设置的备用组策略, 然后使用此命令的 no 形式 : hostname(config-group-policy)# no nac [enable disable] hostname(config-group-policy)# 默认情况下, 会禁用 NAC 启用 NAC 要求对远程访问进行安全状态验证 如果远程计算机通过验证检查, 则 ACS 服务器会下载访问策略供 ASA 实施 默认情况下会禁用 NAC 网络上必须存在访问控制服务器 以下示例为组策略启用 NAC: hostname(config-group-policy)# nac enable hostname(config-group-policy)# 配置 VPN 客户端防火墙策略 防火墙通过检查每个入站和出站数据包以确定允许其通过防火墙还是将其丢弃来将计算机与互联网隔离并进行保护 如果组中的远程用户配置了分割隧道, 则防火墙可提供额外的安全性 在此情况下, 防火墙保护用户的计算机, 从而帮助企业网络抵御通过互联网或用户的本地 LAN 进行的入侵 使用 VPN 客户端连接到 ASA 的远程用户可以选择相应的防火墙选项 在 group-policy 配置模式下使用 client-firewall 命令, 设置 IKE 隧道协商期间 ASA 推送到 VPN 客户端的个人防火墙策略 如要删除防火墙策略, 请输入此命令的 no 形式 如要删除所有防火墙策略, 请输入不带参数的 no client-firewall 命令 此命令删除所有已配置的防火墙策略, 包括空策略 ( 如果通过输入带有 none 关键字的 client-firewall 命令进行了创建 ) 当没有防火墙策略时, 用户将继承默认或其他组策略中的任何策略 如要防止用户继承此类防火墙策略, 请输入带有 none 关键字的 client-firewall 命令 通过 Client Firewall 选项卡上的 Add or Edit Group Policy 对话框, 可以为 VPN 客户端正在添加或修改的组策略配置防火墙设置 备注 只有运行 Microsoft Windows 的 VPN 客户端才能使用这些防火墙功能 这些功能当前对于硬件客户端或其他 ( 非 Windows) 软件客户端不可用 在第一个场景中, 远程用户在 PC 上安装了个人防火墙 VPN 客户端实施在本地防火墙上定义的防火墙策略, 并监控该防火墙以确保其正在运行 如果防火墙停止运行, 则 VPN 客户端会断开与 ASA 的连接 ( 此防火墙实施机制称为 Are You There [AYT], 因为 VPN 客户端通过定期向防火墙发送 are you there? 消息对其进行监控 ; 如果没有响应, 则 VPN 客户端知道防火墙关闭并会终止其与 ASA 的连接 ) 网络管理员可以在最初配置这些 PC 防火墙, 但是如果采用此方法, 每个用户就可以自定义自己的配置 在第二个场景中, 您可能首选为 VPN 客户端 PC 上的个人防火墙实施集中式防火墙策略 常见的例子是使用分割隧道阻止互联网流量传送到组中的远程 PC 在已建立隧道的情况下, 此方法可以保护 PC, 从而帮助中心站点抵御来自互联网的入侵 此防火墙场景称为推送策略或中心保护策略 (CPP) 在 ASA 上创建要在 VPN 客户端上实施的流量管理规则集, 将这些规则与过滤器关联, 然后将该过滤器指定为防火墙策略 ASA 将此策略向下推送到 VPN 客户端 然后,VPN 客户端依次将策略传递到本地防火墙, 由其实施此策略 4-66

141 第 4 章 连接配置文件 组策略和用户 支持 Zone Labs Integrity 服务器 配置 AnyConnect 客户端防火墙策略 AnyConnect 客户端的防火墙规则可以指定 IPv4 和 IPv6 地址 必备条件您已创建指定 IPv6 地址的统一访问规则 步骤 1 命令 webvpn 说明进入 webvpn 组策略配置模式 步骤 2 步骤 3 hostname(config)# group-policy ac-client-group attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# anyconnect firewall-rule client-interface {private public} value [RuleName] hostname(config-group-webvpn)# anyconnect fireall-rule client-iterface private value ClientFWRule show runn group-policy [value] 指定专用或公共网络规则的访问控制规则 专用网络规则是应用于客户端上的 VPN 虚拟适配器接口的规则 显示组策略属性以及组策略的 webvpn 策略属性 hostname(config-group-webvpn)# show runn group-policy FirstGroup group-policy FirstGroup internal group-policy FirstGroup attributes webvpn anyconnect firewall-rule client-interface private value ClientFWRule 步骤 4 ( 可选的 ) no anyconnect firewall-rule client-ineterface private value [RuleName] 从专用网络规则中删除客户端防火墙规则 hostname(config-group-webvpn)#no anyconnect firewall-rule client-ineterface private value hostname(config-group-webvpn)# 支持 Zone Labs Integrity 服务器 本节介绍 Zone Labs Integrity 服务器 ( 也称为 Check Point Integrity 服务器 ), 并提供用于将 ASA 配置为支持 Zone Labs Integrity 服务器的示例程序 Integrity 服务器是用于在远程 PC 上配置和实施安全策略的中央管理站 如果远程 PC 不符合 Integrity 服务器规定的安全策略, 则不会获准访问受到 Integrity 服务器和 ASA 保护的专用网络 4-67

142 支持 Zone Labs Integrity 服务器 第 4 章 连接配置文件 组策略和用户 本节包括以下主题 : Integrity 服务器和 ASA 交互概述 ( 第 4-68 页 ) 配置 Integrity 服务器支持 ( 第 4-68 页 ) Integrity 服务器和 ASA 交互概述 VPN 客户端软件和 Integrity 客户端软件在远程 PC 上共存 以下步骤汇总远程 PC ASA 和 Integrity 服务器在 PC 与企业专用网络之间建立会话过程中的操作 : 1. VPN 客户端软件 ( 与 Integrity 客户端软件驻留在相同的远程 PC 上 ) 连接到 ASA 并告知 ASA 其防火墙客户端的类型 2. 在 ASA 批准客户端防火墙类型后,ASA 将 Integrity 服务器地址信息传回到 Integrity 客户端 3. 在 ASA 用作代理的情况下,Integrity 客户端与 Integrity 服务器建立受限连接 受限连接仅在 Integrity 客户端与 Integrity 服务器之间 4. Integrity 服务器确定 Integrity 客户端是否符合规定的安全策略 如果 Integrity 客户端符合安全策略, 则 Integrity 服务器会指示 ASA 打开连接并为 Integrity 客户端提供连接详细信息 5. 在远程 PC 上,VPN 客户端将连接详细信息传递到 Integrity 客户端, 并表明策略实施应立即开始且 Integrity 客户端可以进入专用网络 6. 建立 VPN 连接后,Integrity 服务器使用客户端检测信号消息继续监控 Integrity 客户端的状态 备注 ASA 的当前版本一次支持一台 Integrity 服务器, 即使用户界面支持最多五台 Integrity 服务器的配置也如此 如果活动的 Integrity 服务器发生故障, 请在 ASA 上配置另一台 Integrity 服务器, 然后重新建立 VPN 客户端会话 配置 Integrity 服务器支持 本节介绍用于将 ASA 配置为支持 Zone Labs Integrity 服务器的示例程序 该程序涉及配置地址 端口 连接失败超时和失败状态以及 SSL 证书参数 如要配置 Integrity 服务器, 请执行以下步骤 : 命令 步骤 1 zonelabs-integrity server-address {hostname1 ip-address1} 目的使用 IP 地址 配置 Integrity 服务器 步骤 2 hostname(config)# zonelabs-integrity server-address zonelabs-integrity port port-number 指定端口 300( 默认端口为 5054) hostname(config)# zonelabs-integrity port

143 第 4 章 连接配置文件 组策略和用户 支持 Zone Labs Integrity 服务器 步骤 3 命令 zonelabs-integrity interface interface 目的 指定用于与 Integrity 服务器进行通信的内部接口 步骤 4 步骤 5 步骤 6 步骤 7 hostname(config)# zonelabs-integrity interface inside zonelabs-integrity fail-timeout timeout hostname(config)# zonelabs-integrity fail-timeout 12 zonelabs-integrity fail-close hostname(config)# zonelabs-integrity fail-close zonelabs-integrity fail-open hostname(config)# zonelabs-integrity fail-open zonelabs-integrity ssl-certificate-port cert-port-number 确保 ASA 在声明 Integrity 服务器发生故障并关闭 VPN 客户端连接之前, 会等 12 秒待活动或备用 Integrity 服务器响应 备注 如果 ASA 与 Integrity 服务器之间的连接失败, 则默认情况下 VPN 客户端连接保持打开, 以便企业 VPN 不因 Integrity 服务器故障而中断 但是, 如果 Zone Labs Integrity 服务器发生故障, 则可能要关闭 VPN 连接 配置 ASA, 以便在 ASA 与 Zone Labs Integrity 服务器之间的连接失败时关闭与 VPN 客户端的连接 将已配置的 VPN 客户端连接失败状态恢复为默认值并确保客户端连接保持打开 指定 Integrity 服务器连接到 ASA 上的端口 300 ( 默认值为端口 80) 以请求服务器 SSL 证书 步骤 8 hostname(config)# zonelabs-integrity ssl-certificate-port 300 zonelabs-integrity ssl-client-authentication {enable disable} hostname(config)# zonelabs-integrity ssl-client-authentication enable 尽管始终会对服务器 SSL 证书进行身份验证, 但是还会指定对 Integrity 服务器的客户端 SSL 证书进行身份验证 如要将防火墙客户端类型设置为 Zone Labs Integrity 类型, 请输入以下命令 : 命令 client-firewall {opt req} zonelabs-integrity hostname(config)# client-firewall req zonelabs-integrity 目的有关详细信息, 请参阅配置 VPN 客户端防火墙策略 ( 第 4-66 页 ) 当防火墙类型为 zonelabs-integrity 时, 不使用指定防火墙策略的命令参数, 因为 Integrity 服务器会确定这些策略 4-69

144 支持 Zone Labs Integrity 服务器 第 4 章 连接配置文件 组策略和用户 设置客户端防火墙参数 输入以下命令以设置相应的客户端防火墙参数 只能配置每个命令的一个实例 有关详细信息, 请参阅配置 VPN 客户端防火墙策略 ( 第 4-66 页 ) 思科集成防火墙 hostname(config-group-policy)# client-firewall {opt req} cisco-integrated acl-in ACL acl-out ACL 思科安全代理 hostname(config-group-policy)# client-firewall {opt req} cisco-security-agent 无防火墙 hostname(config-group-policy)# client-firewall none 自定义防火墙 hostname(config-group-policy)# client-firewall {opt req} custom vendor-id num product-id num policy {AYT CPP acl-in ACL acl-out ACL} [description string] Zone Labs 防火墙 hostname(config-group-policy)# client-firewall {opt req} zonelabs-integrity 备注 当防火墙类型为 zonelabs-integrity 时, 请不要包含参数 Zone Labs Integrity 服务器会确定策略 hostname(config-group-policy)# client-firewall {opt req} zonelabs-zonealarm policy {AYT CPP acl-in ACL acl-out ACL} hostname(config-group-policy)# client-firewall {opt req} zonelabs-zonealarmorpro policy {AYT CPP acl-in ACL acl-out ACL} client-firewall {opt req} zonelabs-zonealarmpro policy {AYT CPP acl-in ACL acl-out ACL} Sygate Personal Firewall hostname(config-group-policy)# client-firewall {opt req} sygate-personal hostname(config-group-policy)# client-firewall {opt req} sygate-personal-pro hostname(config-group-policy)# client-firewall {opt req} sygate-security-agent Network Ice Black Ice 防火墙 : hostname(config-group-policy)# client-firewall {opt req} networkice-blackice 4-70

145 第 4 章 连接配置文件 组策略和用户 支持 Zone Labs Integrity 服务器 表 4-3 client-firewall 命令关键字和变量 参数 acl-in ACL acl-out ACL AYT 说明 提供客户端对入站流量使用的策略 提供客户端对出站流量使用的策略 指定客户端 PC 防火墙应用控制防火墙策略 ASA 会检查以确保防火墙正在运行 将询问 : Are You There? 如果没有响应, ASA 将拆解隧道 cisco-integrated 指定 Cisco Integrated 防火墙类型 cisco-security-agent 指定 Cisco Intrusion Prevention Security Agent 防火墙类型 CPP 指定 Policy Pushed 作为 VPN 客户端防火墙策略源 custom 指定 Custom 防火墙类型 description string 说明防火墙 networkice-blackice 指定 Network ICE Black ICE 防火墙类型 无 表示无客户端防火墙策略 使用空值设置防火墙策略, 从而禁止 使用防火墙策略 防止从默认或指定的组策略继承防火墙策略 opt 表示可选的防火墙类型 product-id 标识防火墙产品 req 表示必需的防火墙类型 sygate-personal 指定 Sygate Personal 防火墙类型 sygate-personal-pro 指定 Sygate Personal Pro 防火墙类型 sygate-security-agent 指定 Sygate Security Agent 防火墙类型 vendor-id 标识防火墙供应商 zonelabs-integrity 指定 Zone Labs Integrity 服务器防火墙类型 zonelabs-zonealarm 指定 Zone Labs Zone Alarm 防火墙类型 zonelabs-zonealarmorpro 指定 Zone Labs Zone Alarm 或 Pro 防火墙类型 policy zonelabs-zonealarmpro policy 指定 Zone Labs Zone Alarm Pro 防火墙类型 以下示例显示如何为名为 FirstGroup 的组策略设置需要 Cisco Intrusion Prevention Security Agent 的客户端防火墙策略 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# client-firewall req cisco-security-agent hostname(config-group-policy)# 配置客户端访问规则 在 group-policy 配置模式下使用 client-access-rule 命令配置规则, 用于限制可通过 IPsec 连接至 ASA 的远程访问客户端类型和版本 根据以下准则来制定规则 : 如果不定义任何规则,ASA 将允许所有连接类型 如果一个客户端与所有规则均不匹配,ASA 将拒绝此连接 如果定义拒绝规则, 则还必须定义至少一个允许规则 ; 否则,ASA 将拒绝所有连接 4-71

146 支持 Zone Labs Integrity 服务器 第 4 章 连接配置文件 组策略和用户 对于软件和硬件客户端, 类型和版本必须与其在 show vpn-sessiondb remote 显示中的外观完全匹配 * 字符是通配符, 可以在每条规则中多次输入 例如,client-access rule 3 deny type * version 3.* 会创建一条优先级为 3 的客户端访问规则, 拒绝所有运行版本 3.x 软件的客户端类型 您可以为每个组策略最多构建 25 个规则 对整组规则的限制为 255 个字符 对于不发送客户端类型和 / 或版本的客户端可以输入 n/a 如要删除规则, 请输入此命令的 no 形式 此命令与以下命令等效 : hostname(config-group-policy)# client-access-rule 1 deny type "Cisco VPN Client" version 4.0 如要删除所有规则, 请输入不带参数的 no client-access-rule 命令 这会删除所有已配置的规则, 包括空规则 ( 如果通过输入带有 none 关键字的 client-access-rule 命令进行了创建 ) 默认情况下, 无访问规则 当没有客户端访问规则时, 用户将继承默认组策略中的任何规则 如要防止用户继承客户端访问规则, 请输入带有 none 关键字的 client-access-rule 命令 此命令的结果是所有客户端类型和版本都可以进行连接 hostname(config-group-policy)# client-access rule priority {permit deny} type type version {version none} hostname(config-group-policy)# no client-access rule [priority {permit deny} type type version version] 表 4-4 说明这些命令中的关键字和参数的含义 表 4-4 client-access rule 命令关键字和参数 参数 deny 无 permit 优先级 type type version version 说明 拒绝特定类型和 / 或版本设备的连接 允许无客户端访问规则 将 client-access-rule 设置为空值, 从而允许无限制 防止从默认或指定的组策略继承值 允许特定类型和 / 或版本设备的连接 确定规则的优先级 具有最小整数的规则具有最高优先级 因此, 与客户端类型和 / 或版本匹配的具有最小整数的规则是应用的规则 如果一个较低优先级的规则与之冲突,ASA 会忽略它 通过任意形式的字符串 ( 例如 VPN 3002) 标识设备类型 字符串必须与其在 show vpn-sessiondb remote 显示中的外观完全匹配, 但可以输入 * 字符作为通配符 通过任意形式的字符串标识设备版本, 例如 7.0 字符串必须与其在 show vpn-sessiondb remote 显示中的外观完全匹配, 但可以输入 * 字符作为通配符 以下示例显示如何为名为 FirstGroup 的组策略创建客户端访问规则 这些规则允许运行软件版本 4.x 的思科 VPN 客户端, 同时拒绝所有 Windows NT 客户端 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# client-access-rule 1 deny type WinNT version * hostname(config-group-policy)# client-access-rule 2 permit Cisco VPN Client version 4.* 4-72

147 第 4 章 连接配置文件 组策略和用户 支持 Zone Labs Integrity 服务器 注意 type 字段是允许任意值的自由格式字符串, 但是该值必须与客户端在连接时发送到 ASA 的固定值匹配 配置无客户端 SSL VPN 会话的组策略属性 通过无客户端 SSL VPN, 用户可以使用 Web 浏览器与 ASA 建立安全的远程访问 VPN 隧道 无需软件或硬件客户端 无客户端 SSL VPN 从几乎任何可以访问 HTTPS 互联网站点的计算机提供对各种 Web 资源和支持 Web 的应用的轻松访问 无客户端 SSL VPN 使用 SSL 及其继任者 TLS1 在远程用户与中心站点配置的特定受支持内部资源之间提供安全连接 ASA 识别需要代理的连接, 并且 HTTP 服务器会与身份验证子系统交互来对用户进行身份验证 默认情况下, 会禁用无客户端 SSL VPN 可以自定义特定内部组策略的无客户端 SSL VPN 配置 备注 从全局配置模式进入 webvpn 模式, 即可配置无客户端 SSL VPN 会话的全局设置 通过本节中介绍的 webvpn 模式 ( 从 group-policy 配置模式进入 ), 可以专门为无客户端 SSL VPN 会话自定义组策略配置 在 group-policy webvpn 配置模式下, 可以指定继承还是自定义以下参数, 后续几节将介绍其中每个参数 : customizations html-content-filter homepage filter url-list port-forward port-forward-name sso server( 单点登录服务器 ) auto-signon deny message AnyConnect 安全移动客户端 keep-alive ignore HTTP 压缩在许多情况下, 可在配置无客户端 SSL VPN 的过程中定义 webvpn 属性, 然后在配置 group-policy webvpn 属性时将这些定义应用于特定组 在 group-policy 配置模式下使用 webvpn 命令进入 group-policy webvpn 配置模式 组策略的 webvpn 命令定义通过无客户端 SSL VPN 会话对文件 URL 和 TCP 应用的访问 它们还标识 ACL 和要过滤的流量类型 默认情况下会禁用无客户端 SSL VPN 有关配置无客户端 SSL VPN 会话的属性的详细信息, 请参阅第 12 章 无客户端 SSL VPN 的介绍 如要删除在 group-policy webvpn 配置模式下输入的所有命令, 请输入此命令的 no 形式 这些 webvpn 命令适用于从中配置它们的用户名或组策略 hostname(config-group-policy)# webvpn hostname(config-group-policy)# no webvpn 4-73

148 支持 Zone Labs Integrity 服务器 第 4 章 连接配置文件 组策略和用户 以下示例显示如何进入名为 FirstGroup 的组策略的 group-policy webvpn 配置模式 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# 应用自定义 自定义配置用于确定用户在登录时看到的窗口的外观 可在配置无客户端 SSL VPN 的过程中配置自定义参数 如要应用以前定义的网页自定义来更改用户在登录时看到的网页外观, 请在 group-policy webvpn 配置模式下输入 customization 命令 : hostname(config-group-webvpn)# customization customization_name hostname(config-group-webvpn)# 例如, 如要使用名为 blueborder 的自定义, 请输入以下命令 : hostname(config-group-webvpn)# customization blueborder hostname(config-group-webvpn)# 在 webvpn 模式下输入 customization 命令可配置自定义本身 以下示例显示一个命令序列, 它首先建立名为 123 的自定义来定义密码提示 然后, 该示例定义名为 testpolicy 的组策略并使用 customization 命令指定对无客户端 SSL VPN 会话使用名为 123 的自定义 : hostname(config)# webvpn hostname(config-webvpn)# customization 123 hostname(config-webvpn-custom)# password-prompt Enter password hostname(config-webvpn)# exit hostname(config)# group-policy testpolicy nopassword hostname(config)# group-policy testpolicy attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# customization value 123 hostname(config-group-webvpn)# 指定 拒绝 消息 可以在 group-policy webvpn 配置模式下输入 deny-message 命令指定向成功登录无客户端 SSL VPN 但没有 VPN 特权的远程用户传输的消息 : hostname(config-group-webvpn)# deny-message value "message" hostname(config-group-webvpn)# no deny-message value "message" hostname(config-group-webvpn)# deny-message none no deny-message value 命令删除消息字符串, 以便远程用户不会接收消息 no deny-message none 命令从连接配置文件策略配置中删除该属性 策略继承属性值 消息长度可以是最多 491 个字母数字字符, 包括特殊字符 空格和标点符号, 但是不计入附带的引号 文本在远程用户登录时显示在其浏览器上 在 deny-message value 命令中键入字符串时, 即使命令被截断显示也要继续键入 默认拒绝消息为 : Login was successful, but because certain criteria have not been met or due to some specific group policy, you do not have permission to use any of the VPN features. Contact your IT administrator for more information. 以下示例中的第一个命令创建名为 group2 的内部组策略 后续命令修改属性, 包括与该策略关联的 webvpn 拒绝消息 hostname(config)# group-policy group2 internal hostname(config)# group-policy group2 attributes 4-74

149 第 4 章 连接配置文件 组策略和用户 支持 Zone Labs Integrity 服务器 hostname(config-group)# webvpn hostname(config-group-webvpn)# deny-message value "Your login credentials are OK. However, you have not been granted rights to use the VPN features. Contact your administrator for more information." hostname(config-group-webvpn) 配置无客户端 SSL VPN 会话的组策略过滤器属性 在 webvpn 模式下使用 html-content-filter 命令, 指定是否从此组策略的无客户端 SSL VPN 会话中过滤 Java ActiveX 图像 脚本和 Cookie 默认情况下会禁用 HTML 过滤 如要删除内容过滤器, 请输入此命令的 no 形式 如要删除所有内容过滤器, 包括通过发出带有 none 关键字的 html-content-filter 命令创建的空值, 请输入此命令不带参数的 no 形式 no 选项允许从其他组策略继承值 如要防止继承 html 内容过滤器, 请输入带有 none 关键字的 html-content-filter 命令 再次使用该命令将覆盖以前的设置 hostname(config-group-webvpn)# html-content-filter {java images scripts cookies none} hostname(config-group-webvpn)# no html-content-filter [java images scripts cookies none] 表 4-5 说明了此命令中使用的关键字的含义 表 4-5 filter 命令关键字 关键字 含义 cookie 从图像删除 Cookie, 提供有限的广告过滤和隐私 映像 删除对图像的引用 ( 删除 <IMG> 标签 ) java 删除对 Java 和 ActiveX 的引用 ( 删除 <EMBED> <APPLET> 和 <OBJECT> 标签 ) 无 表示不过滤 设置空值, 从而禁用过滤 防止继承过滤值 scripts 删除对脚本的引用 ( 删除 <SCRIPT> 标签 ) 以下示例显示如何为名为 FirstGroup 的组策略设置 Java ActiveX Cookie 和图像的过滤 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# html-content-filter java cookies images hostname(config-group-webvpn)# 指定用户主页 在 group-policy webvpn 配置模式下使用 homepage 命令, 指定该组用户登录时显示的网页的 URL 没有默认主页 如要删除已配置的主页, 包括通过发出 homepage none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从其他组策略继承值 如要防止继承主页, 请输入 homepage none 命令 none 关键字表示无客户端 SSL VPN 会话没有主页 它设置空值, 从而禁止使用主页并防止继承主页 关键字 value 后面的 url-string 变量提供主页的 URL 字符串必须以 或 开头 hostname(config-group-webvpn)# homepage {value url-string none} hostname(config-group-webvpn)# no homepage hostname(config-group-webvpn)# 4-75

150 支持 Zone Labs Integrity 服务器 第 4 章 连接配置文件 组策略和用户 配置自动登录 auto-signon 命令是无客户端 SSL VPN 会话用户的单点登录方法 它将登录凭证 ( 用户名和密码 ) 传递到内部服务器以使用 NTLM 身份验证和 / 或基本身份验证进行身份验证 可输入多个 auto-signon 命令并根据输入顺序进行处理 ( 较早的命令优先处理 ) 可以在三种模式下使用自动登录功能 :webvpn 配置模式 webvpn 组配置模式或 webvpn 用户名配置模式 应用典型的优先行为, 其中用户名优先于组, 组优先于全局 选择的模式取决于所需的身份验证范围 如要禁用特定用户对特定服务器进行自动登录, 请使用该命令的 no 形式及 IP 块或 URI 的原始规范 如要禁用向所有服务器进行身份验证, 请使用不带参数的 no 形式 no 选项允许从组策略继承值 以下示例进入 group-policy webvpn 配置模式, 为名为 anyuser 的用户配置使用基本身份验证自动登录 IP 地址范围为 到 的服务器 : 以下示例命令为无客户端 SSL VPN 会话的用户配置使用基本或 NTLM 身份验证自动登录 URI 掩码 所定义的服务器 : hostname(config)# group-policy ExamplePolicy attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# auto-signon allow uri auth-type all hostname(config-group-webvpn)# 以下示例命令为无客户端 SSL VPN 会话的用户配置使用基本或 NTLM 身份验证自动登录 IP 地址为 的服务器 ( 使用子网掩码 ): hostname(config)# group-policy ExamplePolicy attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# auto-signon allow ip auth-type all hostname(config-group-webvpn)# 指定无客户端 SSL VPN 会话的 ACL 在 webvpn 模式下使用 filter 命令, 为此组策略或用户名指定要用于无客户端 SSL VPN 会话的 ACL 的名称 在输入 filter 命令指定无客户端 SSL VPN ACL 之前, 不会应用这些 ACL 如要删除 ACL, 包括通过发出 filter none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从其他组策略继承值 如要防止继承过滤器值, 请输入 filter value none 命令 在输入 filter 命令指定无客户端 SSL VPN 会话的 ACL 之前, 不会应用这些 ACL 可将 ACL 配置为允许或拒绝此组策略的各种类型的流量 然后, 输入 filter 命令以对无客户端 SSL VPN 流量应用这些 ACL hostname(config-group-webvpn)# filter {value ACLname none} hostname(config-group-webvpn)# no filter none 关键字表示没有 webvpntype ACL 它设置空值, 从而禁止使用 ACL 并防止从其他组策略继承 ACL 关键字 value 后面的 ACLname 字符串提供以前配置的 ACL 的名称 备注无客户端 SSL VPN 会话不使用 vpn-filter 命令中定义的 ACL 以下示例显示如何为名为 FirstGroup 的组策略设置调用名为 acl_in 的 ACL 的过滤器 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# filter acl_in hostname(config-group-webvpn)# 4-76

151 第 4 章 连接配置文件 组策略和用户 支持 Zone Labs Integrity 服务器 应用 URL 列表 可以为组策略指定要在无客户端 SSL VPN 主页上显示的 URL 列表 首先, 必须在全局配置模式下输入 url-list 命令创建一个或多个命名列表 如要将无客户端 SSL VPN 会话的服务器和 URL 的列表应用于特定组策略, 从而允许访问特定组策略列表中的 URL, 请使用在 group-policy webvpn 配置模式下通过 url-list 命令创建的一个或多个列表的名称 没有默认 URL 列表 如要删除列表, 包括通过使用 url-list none 命令创建的空值, 请使用此命令的 no 形式 no 选项允许从其他组策略继承值 如要防止继承 URL 列表, 请使用 url-list none 命令 再次使用该命令将覆盖以前的设置 : hostname(config-group-webvpn)# url-list {value name none} [index] hostname(config-group-webvpn)# no url-list 表 4-6 显示 url-list 命令参数及其含义 表 4-6 参数 index 无 value name url-list 命令关键字和变量 含义 表示在主页上的显示优先级 为 url 列表设置一个空值 防止从默认或指定的组策略继承列表 指定以前配置的 url 列表的名称 要配置此类列表, 请在全局配置模式下使用 url-list 命令 以下示例为名为 FirstGroup 的组策略设置名为 FirstGroupURLs 的 URL 列表, 并指定这应是主页上显示的第一个 URL 列表 : hostname(config)# group-policy FirstGroup attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# url-list value FirstGroupURLs 1 hostname(config-group-webvpn)# 启用组策略的 ActiveX 中继 通过 ActiveX 中继, 已建立无客户端 SSL VPN 会话的用户可以使用浏览器来启动 Microsoft Office 应用 应用使用会话下载和上传 Microsoft Office 文档 ActiveX 中继一直有效, 直到无客户端 SSL VPN 会话关闭 如要对无客户端 SSL VPN 会话启用或禁用 ActiveX 控件, 请在 group-policy webvpn 配置模式下输入以下命令 : activex-relay {enable disable} 如要从默认组策略继承 activex-relay 命令, 请输入以下命令 : no activex-relay 以下命令对与给定组策略关联的无客户端 SSL VPN 会话启用 ActiveX 控件 : hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# activex-relay enable hostname(config-group-webvpn) 4-77

152 支持 Zone Labs Integrity 服务器 第 4 章 连接配置文件 组策略和用户 对组策略的无客户端 SSL VPN 会话启用应用访问 配置端口转发显示名称 如要为此组策略启用应用访问, 请在 group-policy webvpn 配置模式下输入 port-forward 命令 默认情况下会禁用端口转发 必须先定义希望用户能够在无客户端 SSL VPN 会话中使用的应用列表, 然后才能在 group-policy webvpn 配置模式下输入 port-forward 命令来启用应用访问 在全局配置模式下输入 port-forward 命令以定义此列表 如要从 group-policy 配置中删除端口转发属性, 包括通过发出 port-forward none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从其他组策略继承列表 如要防止继承端口转发列表, 请输入带有 none 关键字的 port-forward 命令 none 关键字表示没有过滤 它设置空值, 从而禁止过滤, 并防止继承过滤值 此命令的语法如下 : hostname(config-group-webvpn)# port-forward {value listname none} hostname(config-group-webvpn)# no port-forward 关键字 value 后面的 listname 字符串标识无客户端 SSL VPN 会话的用户可访问的应用列表 在 webvpn 配置模式下输入 port-forward 命令以定义该列表 再次使用该命令将覆盖以前的设置 以下示例显示如何为名为 FirstGroup 的内部组策略设置名为 ports1 的端口转发列表 : hostname(config)# group-policy FirstGroup internal attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# port-forward value ports1 hostname(config-group-webvpn)# 在 group-policy webvpn 配置模式下使用 port-forward-name 命令, 为特定用户或组策略配置用于向最终用户标识 TCP 端口转发的显示名称 如要删除显示名称, 包括通过使用 port-forward-name none 命令创建的空值, 请输入该命令的 no 形式 no 选项恢复默认名称 Application Access 如要防止使用显示名称, 请输入 port-forward none 命令 此命令的语法如下 : hostname(config-group-webvpn)# port-forward-name {value name none} hostname(config-group-webvpn)# no port-forward-name 以下示例显示如何为名为 FirstGroup 的内部组策略设置名称 Remote Access TCP Applications: hostname(config)# group-policy FirstGroup internal attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# port-forward-name value Remote Access TCP Applications hostname(config-group-webvpn)# 配置为更新会话计时器而要忽略的最大对象大小 网络设备交换简短的保持连接消息来确保相互间的虚拟回路仍然处于活动状态 这些消息的长度各异 通过 keep-alive-ignore 命令, 可以指示 ASA 在更新会话计时器时将小于或等于指定大小的所有消息都视为保持连接消息而非流量 范围为 0 至 900 KB 默认值为 4 KB 如要指定每个事务要忽略的 HTTP/HTTPS 流量上限, 请在 group-policy attributes webvpn 配置模式下使用 keep-alive-ignore 命令 : hostname(config-group-webvpn)# keep-alive-ignore size hostname(config-group-webvpn)# 该命令的 no 形式会从配置中删除此规范 : hostname(config-group-webvpn)# no keep-alive-ignore hostname(config-group-webvpn)# 4-78

153 第 4 章 连接配置文件 组策略和用户 支持 Zone Labs Integrity 服务器 以下示例将要忽略的最大对象大小设置为 5 KB: hostname(config-group-webvpn)# keep-alive-ignore 5 hostname(config-group-webvpn)# 指定 HTTP 压缩 在 group-policy webvpn 配置模式下输入 http-comp 命令, 为特定组或用户在无客户端 SSL VPN 会话上启用 http 数据压缩 hostname(config-group-webvpn)# http-comp {gzip none} hostname(config-group-webvpn)# 如要从配置中删除该命令并导致继承值, 请使用该命令的 no 形式 : hostname(config-group-webvpn)# no http-comp {gzip none} hostname(config-group-webvpn)# 此命令的语法如下 : gzip - 指定对组或用户启用压缩 这是默认值 none - 指定对组或用户禁用压缩 对于无客户端 SSL VPN 会话, 从全局配置模式配置的 compression 命令会覆盖在 group-policy 和 username webvpn 模式下配置的 http-comp 命令 在以下示例中, 对组策略 sales 禁用了压缩 : hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# http-comp none hostname(config-group-webvpn)# 指定 SSO 服务器 通过仅适用于无客户端 SSL VPN 会话的单点登录支持, 用户可以访问不同服务器上的不同安全服务, 而不必多次重新输入用户名和密码 通过在 group-policy-webvpn 模式下输入的 sso-server value 命令, 可以向组策略分配 SSO 服务器 如要向组策略分配 SSO 服务器, 请在 group-policy-webvpn 配置模式下使用 sso-server value 命令 此命令要求配置包含 CA SiteMinder 命令 hostname(config-group-webvpn)# sso-server value server_name hostname(config-group-webvpn)# 如要删除分配并使用默认策略, 请使用此命令的 no 形式 如要防止继承默认策略, 请使用 sso-server none 命令 hostname(config-group-webvpn)# sso-server {value server_name none} hostname(config-group-webvpn)# [no] sso-server value server_name 分配给 SSO 服务器的默认策略为 DfltGrpPolicy 以下示例创建组策略 my-sso-grp-pol 并将其分配给名为 example 的 SSO 服务器 : hostname(config)# group-policy my-sso-grp-pol internal hostname(config)# group-policy my-sso-grp-pol attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# sso-server value example hostname(config-group-webvpn)# 4-79

154 配置用户属性 第 4 章 连接配置文件 组策略和用户 配置用户属性 本节介绍用户属性及其配置方式 其中包括以下各节 : 查看用户名配置 ( 第 4-80 页 ) 配置个人用户的属性 ( 第 4-80 页 ) 默认情况下, 用户从分配的组策略继承所有用户属性 ASA 还允许在用户级别分配单独属性, 从而覆盖应用于该用户的组策略中的值 例如, 可以指定一个组策略为所有用户授予办公时间的访问权限, 但授予特定用户 24 小时访问权限 查看用户名配置 如要显示所有用户名的配置, 包括从组策略继承的默认值, 请输入 all 关键字以及 show running-config username 命令, 如下所示 : hostname# show running-config all username hostname# 这将显示所有用户 ( 如果提供了用户名, 则为特定用户 ) 的加密密码和特权级别 如果省略 all 关键字, 则此列表中仅显示显式配置的值 以下示例为名为 testuser 的用户显示此命令的输出 : hostname# show running-config all username testuser username testuser password 12RsxXQnphyr/I9Z encrypted privilege 15 配置个人用户的属性 设置用户密码和特权级别 如要配置特定用户, 可以使用 username 命令 ( 进入 username 模式 ) 向用户分配密码 ( 或无密码 ) 和属性 没有指定的任何属性都继承自组策略 内部用户身份验证数据库包含使用 username 命令输入的用户 login 命令使用此数据库进行身份验证 如要将用户添加到 ASA 数据库, 请在全局配置模式下输入 username 命令 如要删除用户, 请使用带有要删除的用户名的此命令的 no 版本 如要删除所有用户名, 请使用 clear configure username 命令而不附加用户名 输入 username 命令为用户分配密码和特权级别 可以输入 nopassword 关键字以指定此用户不需要密码 如果确实指定了密码, 则可以指定是否以加密形式存储该密码 通过可选的 privilege 关键字可设置此用户的特权级别 特权级别的范围为 0( 最低 ) 至 15 系统管理员通常具有最高特权级别 默认级别为 2 hostname(config)# username name {nopassword password password [encrypted]} [privilege priv_level]} hostname(config)# no username [name] 4-80

155 第 4 章 连接配置文件 组策略和用户 配置用户属性 表 4-7 说明了此命令中使用的关键字和变量的含义 表 4-7 username 命令关键字和变量 关键字 / 变量 encrypted 名称 nopassword password password privilege priv_level 含义 表示密码已加密 提供用户的名称 表示此用户无需密码 表示此用户有密码并提供该密码 设置此用户的特权级别 范围为 0 至 15, 越低的数字使用命令和管理 ASA 的能力越小 默认特权级别为 2 系统管理员的典型特权级别为 15 默认情况下, 使用此命令添加的 VPN 用户没有属性或组策略关联 必须显式配置所有值 以下示例显示如何使用加密密码 pw_ 和特权级别 12 来配置名为 anyuser 的用户 : hostname(config)# username anyuser password pw_ encrypted privilege 12 hostname(config)# 配置用户属性 配置用户的密码 ( 如果有 ) 和特权级别后, 可设置其他属性 这些属性可为任意顺序 如要删除任何属性 / 值对, 请输入该命令的 no 形式 输入带有 attributes 关键字的 username 命令进入 username 模式 : hostname(config)# username name attributes hostname(config-username)# 提示符会更改以表示进入新模式 现在可以配置属性 配置 VPN 用户属性 配置继承 VPN 用户属性设置特定于 VPN 连接的值, 如以下各节中所述 可以让用户从组策略继承尚未在用户名级别配置的属性值 如要指定此用户从中继承属性的组策略的名称, 请输入 vpn-group-policy 命令 默认情况下,VPN 用户没有 group-policy 关联 : hostname(config-username)# vpn-group-policy group-policy-name hostname(config-username)# no vpn-group-policy group-policy-name 对于在 username 模式下可用的属性, 可以通过在 username 模式下配置该属性来覆盖特定用户的组策略中的属性值 以下示例显示如何配置名为 anyuser 的用户使用名为 FirstGroup 的组策略中的属性 : hostname(config)# username anyuser attributes hostname(config-username)# vpn-group-policy FirstGroup hostname(config-username)# 4-81

156 配置用户属性 第 4 章 连接配置文件 组策略和用户 配置访问时长 通过指定已配置的时间范围策略的名称来关联允许此用户访问系统的时长 : 如要从运行配置中删除属性, 请输入此命令的 no 形式 此选项允许从其他组策略继承时间范围值 如要防止继承值, 请输入 vpn-access-hours none 命令 默认值为不受限制的访问 hostname(config-username)# vpn-access-hours value {time-range none} hostname(config-username)# vpn-access-hours value none hostname(config)# 以下示例显示如何将名为 anyuser 的用户与名为 824 的时间范围策略关联 : hostname(config)# username anyuser attributes hostname(config-username)# vpn-access-hours 824 hostname(config-username)# 配置最大同时登录数 指定为此用户允许的最大同时登录数 范围为 0 到 默认值为 3 个同时登录 如要从运行配置中删除属性, 请输入此命令的 no 形式 输入 0 则禁用登录并阻止用户访问 hostname(config-username)# vpn-simultaneous-logins integer hostname(config-username)# no vpn-simultaneous-logins hostname(config-username)# vpn-session-timeout alert-interval none 备注 尽管同时登录数的上限非常大, 但允许多个用户同时登录可能会降低安全性并影响性能 以下示例显示如何为名为 anyuser 的用户设置最大同时登录数 4: hostname(config)# username anyuser attributes hostname(config-username)# vpn-simultaneous-logins 4 hostname(config-username)# 配置空闲超时 指定空闲超时期 ( 以分钟为单位 ), 或者输入 none 禁用空闲超时 如果在此期间连接上没有通信活动, 则 ASA 将终止此连接 可以选择性设置警报间隔, 或者保持默认值一分钟 范围为 1 至 分钟 默认值为 30 分钟 如要允许无限超时期, 并因此防止继承超时值, 请输入带有 none 关键字的 vpn-idle-timeout 命令 如要从运行配置中删除属性, 请输入此命令的 no 形式 hostname(config-username)# vpn-idle-timeout {minutes none} alert-interval {minutes} hostname(config-username)# no vpn-idle-timeout alert-interval hostname(config-username)# vpn-idle-timeout alert-interval none 以下示例显示如何为名为 anyuser 的用户设置 15 分钟的 VPN 空闲超时和 3 分钟的警报间隔 : hostname(config)# username anyuser attributes hostname(config-username)# vpn-idle-timeout 30 alert-interval 3 hostname(config-username)# 4-82

157 第 4 章 连接配置文件 组策略和用户 配置用户属性 设置最长连接时间 指定最长用户连接时间 ( 以分钟为单位 ), 或者输入 none 以允许无限连接时间并防止继承此属性的值 此时间段结束时,ASA 将终止连接 可以选择性设置警报间隔, 或者保持默认值一分钟 范围为 1 至 分钟 没有默认超时 如要允许无限超时期, 并因此防止继承超时值, 请输入带有 none 关键字的 vpn-session-timeout 命令 如要从运行配置中删除属性, 请输入此命令的 no 形式 hostname(config-username)# vpn-session-timeout {minutes none} alert-interval {minutes} hostname(config-username)# no vpn-session-timeout alert-interval hostname(config-username)# 以下示例显示如何为名为 anyuser 的用户设置 180 分钟的 VPN 会话超时 : hostname(config)# username anyuser attributes hostname(config-username)# vpn-session-timeout 180 alert-interval {minutes} hostname(config-username)# 应用 ACL 过滤器 指定要用作 VPN 连接过滤器的以前配置的用户特定 ACL 名称 如要禁止使用 ACL 并防止从组策略继承 ACL, 请输入带有 none 关键字的 vpn-filter 命令 如要删除 ACL, 包括通过发出 vpn-filter none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从组策略继承值 此命令没有默认行为或值 可将 ACL 配置为允许或拒绝此用户的各种类型的流量 然后, 使用 vpn-filter 命令以应用这些 ACL hostname(config-username)# vpn-filter {value ACL_name none} hostname(config-username)# no vpn-filter hostname(config-username)# 备注无客户端 SSL VPN 不使用 vpn-filter 命令中定义的 ACL 以下示例显示如何为名为 anyuser 的用户设置调用名为 acl_vpn 的 ACL 的过滤器 : hostname(config)# username anyuser attributes hostname(config-username)# vpn-filter value acl_vpn hostname(config-username)# 指定 IPv4 地址和网络掩码 指定要分配给特定用户的 IP 地址和网络掩码 如要删除 IP 地址, 请输入此命令的 no 形式 hostname(config-username)# vpn-framed-ip-address {ip_address} hostname(config-username)# no vpn-framed-ip-address hostname(config-username) 以下示例显示如何为名为 anyuser 的用户设置 IP 地址 : hostname(config)# username anyuser attributes hostname(config-username)# vpn-framed-ip-address hostname(config-username) 4-83

158 配置用户属性 第 4 章 连接配置文件 组策略和用户 指定要与上一步中指定的 IP 地址配合使用的网络掩码 如果使用了 no vpn-framed-ip-address 命令, 请勿指定网络掩码 如要删除子网掩码, 请输入此命令的 no 形式 没有默认行为或值 hostname(config-username)# vpn-framed-ip-netmask {netmask} hostname(config-username)# no vpn-framed-ip-netmask hostname(config-username) 以下示例显示如何为名为 anyuser 的用户设置子网掩码 : hostname(config)# username anyuser attributes hostname(config-username)# vpn-framed-ip-netmask hostname(config-username) 指定 IPv6 地址和网络掩码 指定隧道协议 指定要分配给特定用户的 IPv6 地址和网络掩码 如要删除 IP 地址, 请输入此命令的 no 形式 hostname(config-username)# vpn-framed-ipv6-address {ip_address} hostname(config-username)# no vpn-framed-ipv6-address hostname(config-username) 以下示例显示如何为名为 anyuser 的用户设置 IP 地址和网络掩码 2001::3000:1000:2000:1/64 此地址表示前缀值为 2001:0000:0000:0000, 接口 ID 为 3000:1000:2000:1 hostname(config)# username anyuser attributes hostname(config-username)# vpn-framed-ipv6-address 2001::3000:1000:2000:1/64 hostname(config-username) 指定此用户可以使用的 VPN 隧道类型 (IPsec 或无客户端 SSL VPN) 默认值获取自默认组策略, 其默认值为 IPsec 如要从运行配置中删除属性, 请输入此命令的 no 形式 hostname(config-username)# vpn-tunnel-protocol {webvpn IPsec} hostname(config-username)# no vpn-tunnel-protocol [webvpn IPsec] hostname(config-username) 此命令的参数值如下 : IPsec - 在两个对等体 ( 远程访问客户端或其他安全网关 ) 之间协商 IPsec 隧道 创建管理身份验证 加密 封装和密钥管理的安全关联 webvpn - 通过已启用 HTTPS 的 Web 浏览器向远程用户提供无客户端 SSL VPN 访问, 并且无需客户端输入此命令以配置一个或多个隧道模式 至少必须配置一个隧道模式供用户通过 VPN 隧道进行连接 以下示例显示如何为名为 anyuser 的用户配置无客户端 SSL VPN 和 IPsec 隧道模式 : hostname(config)# username anyuser attributes hostname(config-username)# vpn-tunnel-protocol webvpn hostname(config-username)# vpn-tunnel-protocol IPsec hostname(config-username) 限制远程用户访问 使用 value 关键字配置 group-lock 属性以限制远程用户仅通过原本已有的指定连接配置文件进行访问 组锁定通过检查在 VPN 客户端中配置的组与用户分配的连接配置文件是否相同来限制用户 如果不一样,ASA 会阻止用户进行连接 如果不配置组锁定, 则 ASA 在不考虑分配的组的情况下对用户进行身份验证 4-84

159 第 4 章 连接配置文件 组策略和用户 配置用户属性 如要从运行配置中删除 group-lock 属性, 请输入此命令的 no 形式 此选项允许从组策略继承值 如要禁用 group-lock 并防止从默认或指定的组策略继承 group-lock 值, 请输入带有 none 关键字的 group-lock 命令 hostname(config-username)# group-lock {value tunnel-grp-name none} hostname(config-username)# no group-lock hostname(config-username) 以下示例显示如何为名为 anyuser 的用户设置组锁定 : hostname(config)# username anyuser attributes hostname(config-username)# group-lock value tunnel-group-name hostname(config-username) 为软件客户端用户启用密码存储 指定是否允许用户在客户端系统上存储其登录密码 默认情况下会禁用密码存储 仅在已知处于安全站点中的系统上启用密码存储 如要禁用密码存储, 请输入带有 disable 关键字的 password-storage 命令 如要从运行配置中删除 password-storage 属性, 请输入此命令的 no 形式 这允许从组策略继承 password-storage 的值 hostname(config-username)# password-storage {enable disable} hostname(config-username)# no password-storage hostname(config-username) 此命令与交互式硬件客户端身份验证或硬件客户端的个人用户身份验证无关 以下示例显示如何为名为 anyuser 的用户启用密码存储 : hostname(config)# username anyuser attributes hostname(config-username)# password-storage enable hostname(config-username) 配置特定用户的无客户端 SSL VPN 访问 以下各节介绍如何自定义无客户端 SSL VPN 会话的特定用户的配置 在 username 配置模式下使用 webvpn 命令进入 username webvpn 配置模式 通过无客户端 SSL VPN, 用户可以使用 Web 浏览器与 ASA 建立安全的远程访问 VPN 隧道 无需软件或硬件客户端 无客户端 SSL VPN 从几乎任何可以访问 HTTPS 互联网站点的计算机提供对各种 Web 资源和支持 Web 的应用的轻松访问 无客户端 SSL VPN 使用 SSL 及其继任者 TLS1 在远程用户与中心站点配置的特定受支持内部资源之间提供安全连接 ASA 识别需要代理的连接, 并且 HTTP 服务器会与身份验证子系统交互来对用户进行身份验证 username webvpn 配置模式命令定义通过无客户端 SSL VPN 会话对文件 URL 和 TCP 应用的访问 它们还标识 ACL 和要过滤的流量类型 默认情况下会禁用无客户端 SSL VPN 这些 webvpn 命令仅适用于从中配置这些命令的用户名 请注意, 提示符会更改以表示现在处于 username webvpn 配置模式 hostname(config-username)# webvpn hostname(config-username-webvpn)# 如要删除在 username webvpn 配置模式下输入的所有命令, 请输入此命令的 no 形式 : hostname(config-username)# no webvpn hostname(config-username)# 无需将无客户端 SSL VPN 配置为使用邮件代理 4-85

160 配置用户属性 第 4 章 连接配置文件 组策略和用户 备注 从全局配置模式进入 webvpn 模式, 即可配置无客户端 SSL VPN 会话的全局设置 通过本节中介绍的 username webvpn 配置模式 ( 从 username 模式进入 ), 可以专门为无客户端 SSL VPN 会话自定义特定用户的配置 在 username webvpn 配置模式下, 可以自定义以下参数, 后续步骤中对其中每个参数进行了说明 : customizations deny message html-content-filter homepage filter url-list port-forward port-forward-name sso server( 单点登录服务器 ) auto-signon AnyConnect 安全移动客户端 keep-alive ignore HTTP 压缩以下示例显示如何进入 username anyuser attributes 的 username webvpn 配置模式 : hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# 指定要从 HTML 过滤的内容 / 对象 如要过滤此用户的无客户端 SSL VPN 会话的 Java ActiveX 图像 脚本和 Cookie, 请在 username webvpn 配置模式下输入 html-content-filter 命令 如要删除内容过滤器, 请输入此命令的 no 形式 如要删除所有内容过滤器, 包括通过发出 html-content-filter none 命令创建的空值, 请输入此命令不带参数的 no 形式 no 选项允许从组策略继承值 如要防止继承 HTML 内容过滤器, 请输入 html-content-filter none 命令 默认情况下会禁用 HTML 过滤 再次使用该命令将覆盖以前的设置 hostname(config-username-webvpn)# html-content-filter {java images scripts cookies none} hostname(config-username-webvpn)# no html-content-filter [java images scripts cookies none] 此命令中使用的关键字如下 : cookies - 从图像删除 Cookie, 提供有限的广告过滤和隐私 images - 删除对图像的引用 ( 删除 <IMG> 标签 ) java - 删除对 Java 和 ActiveX 的引用 ( 删除 <EMBED> <APPLET> 和 <OBJECT> 标签 ) none - 表示不过滤 设置空值, 从而禁用过滤 防止继承过滤值 scripts - 删除对脚本的引用 ( 删除 <SCRIPT> 标签 ) 4-86

161 第 4 章 连接配置文件 组策略和用户 配置用户属性 以下示例显示如何为名为 anyuser 的用户设置 Java ActiveX Cookie 和图像的过滤 : hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# html-content-filter java cookies images hostname(config-username-webvpn)# 指定用户主页 如要指定在此用户登录到无客户端 SSL VPN 会话中时显示的网页的 URL, 请在 username webvpn 配置模式下输入 homepage 命令 如要删除已配置的主页, 包括通过发出 homepage none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从组策略继承值 如要防止继承主页, 请输入 homepage none 命令 none 关键字表示没有无客户端 SSL VPN 主页 它设置空值, 从而禁止使用主页并防止继承主页 关键字 value 后面的 url-string 变量提供主页的 URL 字符串必须以 或 开头 没有默认主页 hostname(config-username-webvpn)# homepage {value url-string none} hostname(config-username-webvpn)# no homepage hostname(config-username-webvpn)# 以下示例显示如何将 指定为名为 anyuser 的用户的主页 : hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# homepage value hostname(config-username-webvpn)# 应用自定义 自定义配置用于确定用户在登录时看到的窗口的外观 可在配置无客户端 SSL VPN 的过程中配置自定义参数 如要应用以前定义的网页自定义来更改用户在登录时看到的网页外观, 请在 username webvpn 配置模式下输入 customization 命令 : hostname(config-username-webvpn)# customization {none value customization_name} hostname(config-username-webvpn)# 例如, 如要使用名为 blueborder 的自定义, 请输入以下命令 : hostname(config-username-webvpn)# customization value blueborder hostname(config-username-webvpn)# 在 webvpn 模式下输入 customization 命令可配置自定义本身 以下示例显示一个命令序列, 它首先建立名为 123 的自定义来定义密码提示 然后, 该示例定义名为 test 的隧道组, 并使用 customization 命令指定使用名为 123 的自定义 : hostname(config)# webvpn hostname(config-webvpn)# customization 123 hostname(config-webvpn-custom)# password-prompt Enter password hostname(config-webvpn)# exit hostname(config)# username testuser nopassword hostname(config)# username testuser attributes hostname(config-username-webvpn)# webvpn hostname(config-username-webvpn)# customization value 123 hostname(config-username-webvpn)# 4-87

162 配置用户属性 第 4 章 连接配置文件 组策略和用户 指定 拒绝 消息 可以在 username webvpn 配置模式下输入 deny-message 命令指定向成功登录无客户端 SSL VPN 会话但没有 VPN 特权的远程用户传输的消息 : hostname(config-username-webvpn)# deny-message value "message" hostname(config-username-webvpn)# no deny-message value "message" hostname(config-username-webvpn)# deny-message none no deny-message value 命令删除消息字符串, 以便远程用户不会接收消息 no deny-message none 命令从连接配置文件策略配置中删除该属性 策略继承属性值 消息长度可以是最多 491 个字母数字字符, 包括特殊字符 空格和标点符号, 但是不计入附带的引号 文本在远程用户登录时显示在其浏览器上 在 deny-message value 命令中键入字符串时, 即使命令被截断显示也要继续键入 默认拒绝消息为 : Login was successful, but because certain criteria have not been met or due to some specific group policy, you do not have permission to use any of the VPN features. Contact your IT administrator for more information. 以下示例中的第一个命令进入 username 模式并配置名为 anyuser 的用户的属性 后续命令进入 username webvpn 配置模式并修改与该用户关联的拒绝消息 hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# deny-message value "Your login credentials are OK. However, you have not been granted rights to use the VPN features. Contact your administrator for more information." hostname(config-username-webvpn) 指定无客户端 SSL VPN 会话的 ACL 如要为此用户指定要用于无客户端 SSL VPN 会话的 ACL 的名称, 请在 username webvpn 配置模式下输入 filter 命令 如要删除 ACL, 包括通过发出 filter none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从组策略继承值 如要防止继承过滤器值, 请输入 filter value none 命令 在输入 filter 命令指定无客户端 SSL VPN ACL 之前, 不会应用这些 ACL 可将 ACL 配置为允许或拒绝此用户的各种类型的流量 然后, 输入 filter 命令以对无客户端 SSL VPN 流量应用这些 ACL hostname(config-username-webvpn)# filter {value ACLname none} hostname(config-username-webvpn)# no filter hostname(config-username-webvpn)# none 关键字表示没有 webvpntype ACL 它设置空值, 从而禁止使用 ACL 并防止从其他组策略继承 ACL 关键字 value 后面的 ACLname 字符串提供以前配置的 ACL 的名称 备注无客户端 SSL VPN 不使用 vpn-filter 命令中定义的 ACL 以下示例显示如何为名为 anyuser 的用户设置调用名为 acl_in 的 ACL 的过滤器 : hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# filter acl_in hostname(config-username-webvpn)# 4-88

163 第 4 章 连接配置文件 组策略和用户 配置用户属性 应用 URL 列表 可以为已建立无客户端 SSL VPN 会话的用户指定要在主页上显示的 URL 的列表 首先, 必须在全局配置模式下输入 url-list 命令创建一个或多个命名列表 如要将服务器和 URL 的列表应用于无客户端 SSL VPN 的特定用户, 请在 username webvpn 配置模式下输入 url-list 命令 如要删除列表, 包括通过使用 url-list none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从组策略继承值 如要防止继承 URL 列表, 请输入 url-list none 命令 hostname(config-username-webvpn)# url-list {listname displayname url none} hostname(config-username-webvpn)# no url-list 此命令中使用的关键字和变量如下 : displayname - 指定 URL 的名称 此名称显示在无客户端 SSL VPN 会话中的门户页面上 listname - 标识要按其对 URL 进行分组的名称 none - 表示没有 URL 列表 设置空值, 从而禁止使用 URL 列表 防止继承 URL 列表值 url - 指定无客户端 SSL VPN 的用户可访问的 URL 没有默认 URL 列表 再次使用该命令将覆盖以前的设置 以下示例显示如何为名为 anyuser 的用户设置名为 AnyuserURLs 的 URL 列表 : hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# url-list value AnyuserURLs hostname(config-username-webvpn)# 为用户启用 ActiveX 中继 通过 ActiveX 中继, 已建立无客户端 SSL VPN 会话的用户可以使用浏览器来启动 Microsoft Office 应用 应用使用会话下载和上传 Microsoft Office 文档 ActiveX 中继一直有效, 直到无客户端 SSL VPN 会话关闭 如要对无客户端 SSL VPN 会话启用或禁用 ActiveX 控件, 请在 username webvpn 配置模式下输入以下命令 : activex-relay {enable disable} 如要从组策略继承 activex-relay 命令, 请输入以下命令 : no activex-relay 以下命令对与给定用户名关联的无客户端 SSL VPN 会话启用 ActiveX 控件 : hostname(config-username-policy)# webvpn hostname(config-username-webvpn)# activex-relay enable hostname(config-username-webvpn) 启用无客户端 SSL VPN 会话的应用访问 如要为此用户启用应用访问, 请在 username webvpn 配置模式下输入 port-forward 命令 默认情况下会禁用端口转发 如要从配置中删除端口转发属性, 包括通过发出 port-forward none 命令创建的空值, 请输入此命令的 no 形式 no 选项允许从组策略继承列表 如要禁止过滤并防止继承端口转发列表, 请输入带有 none 关键字的 port-forward 命令 4-89

164 配置用户属性 第 4 章 连接配置文件 组策略和用户 hostname(config-username-webvpn)# port-forward {value listname none} hostname(config-username-webvpn)# no port-forward hostname(config-username-webvpn)# 关键字 value 后面的 listname 字符串标识无客户端 SSL VPN 的用户可访问的应用列表 在配置模式下输入 port-forward 命令以定义该列表 再次使用该命令将覆盖以前的设置 必须先定义希望用户能够在无客户端 SSL VPN 会话中使用的应用列表, 然后才能在 username webvpn 配置模式下输入 port-forward 命令来启用应用访问 在全局配置模式下输入 port-forward 命令以定义此列表 以下示例显示如何配置名为 ports1 的端口转发列表 : hostname(config-group-policy)# webvpn hostname(config-username-webvpn)# port-forward value ports1 hostname(config-username-webvpn)# 配置端口转发显示名称 在 username webvpn 配置模式下使用 port-forward-name 命令, 为特定用户配置用于向最终用户标识 TCP 端口转发的显示名称 如要删除显示名称, 包括通过使用 port-forward-name none 命令创建的空值, 请输入该命令的 no 形式 no 选项恢复默认名称 Application Access 如要防止使用显示名称, 请输入 port-forward none 命令 hostname(config-username-webvpn)# port-forward-name {value name none} hostname(config-username-webvpn)# no port-forward-name 以下示例显示如何配置端口转发名称 test: hostname(config-group-policy)# webvpn hostname(config-username-webvpn)# port-forward-name value test hostname(config-username-webvpn)# 配置为更新会话计时器而要忽略的最大对象大小 网络设备交换简短的保持连接消息来确保相互间的虚拟回路仍然处于活动状态 这些消息的长度各异 通过 keep-alive-ignore 命令, 可以指示 ASA 在更新会话计时器时将小于或等于指定大小的所有消息都视为保持连接消息而非流量 范围为 0 至 900 KB 默认值为 4 KB 如要指定每个事务要忽略的 HTTP/HTTPS 流量上限, 请在 group-policy attributes webvpn 配置模式下使用 keep-alive-ignore 命令 : hostname(config-group-webvpn)# keep-alive-ignore size hostname(config-group-webvpn)# 该命令的 no 形式会从配置中删除此规范 : hostname(config-group-webvpn)# no keep-alive-ignore hostname(config-group-webvpn)# 以下示例将要忽略的最大对象大小设置为 5 KB: hostname(config-group-webvpn)# keep-alive-ignore 5 hostname(config-group-webvpn)# 4-90

165 第 4 章 连接配置文件 组策略和用户 配置用户属性 配置自动登录 如要使用 NTLM 和 / 或基本 HTTP 身份验证自动将无客户端 SSL VPN 的特定用户的登录凭证提交到内部服务器, 请在 username webvpn 配置模式下使用 auto-signon 命令 auto-signon 命令是无客户端 SSL VPN 会话用户的单点登录方法 它将登录凭证 ( 用户名和密码 ) 传递到内部服务器以使用 NTLM 身份验证和 / 或基本身份验证进行身份验证 可输入多个 auto-signon 命令并根据输入顺序进行处理 ( 较早的命令优先处理 ) 可以在三种模式下使用自动登录功能 :webvpn 配置模式 webvpn 组配置模式和 webvpn 用户名配置模式 应用典型的优先行为, 其中用户名优先于组, 组优先于全局 选择的模式将取决于所需的身份验证范围 如要禁用特定用户对特定服务器进行自动登录, 请使用该命令的 no 形式及 IP 块或 URI 的原始规范 如要禁用向所有服务器进行身份验证, 请使用不带参数的 no 形式 no 选项允许从组策略继承值 以下示例命令为名为 anyuser 的无客户端 SSL VPN 用户配置使用基本或 NTLM 身份验证自动登录 URI 掩码 所定义的服务器 : hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# auto-signon allow uri auth-type all 以下示例命令为名为 anyuser 的无客户端 SSL VPN 用户配置使用基本或 NTLM 身份验证自动登录 IP 地址为 的服务器 ( 使用子网掩码 ): hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# auto-signon allow ip auth-type all hostname(config-username-webvpn)# 指定 HTTP 压缩 在 username webvpn 配置模式下输入 http-comp 命令, 为特定用户在无客户端 SSL VPN 会话上启用 http 数据压缩 hostname(config-username-webvpn)# http-comp {gzip none} hostname(config-username-webvpn)# 如要从配置中删除该命令并导致继承值, 请使用该命令的 no 形式 : hostname(config-username-webvpn)# no http-comp {gzip none} hostname(config-username-webvpn)# 此命令的语法如下 : gzip - 指定对组或用户启用压缩 这是默认值 none - 指定对组或用户禁用压缩 对于无客户端 SSL VPN 会话, 从全局配置模式配置的 compression 命令会覆盖在 group-policy 和 username webvpn 模式下配置的 http-comp 命令 在以下示例中, 对用户名 testuser 禁用了压缩 : hostname(config)# username testuser internal hostname(config)# username testuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# http-comp none hostname(config-username-webvpn)# 4-91

166 配置用户属性 第 4 章 连接配置文件 组策略和用户 指定 SSO 服务器 通过仅适用于无客户端 SSL VPN 会话的单点登录支持, 用户可以访问不同服务器上的不同安全服务, 而不必多次重新输入用户名和密码 通过在 username-webvpn 模式下输入的 sso-server value 命令, 可以向用户分配 SSO 服务器 如要向用户分配 SSO 服务器, 请在 username-webvpn 配置模式下使用 sso-server value 命令 此命令要求配置包含 CA SiteMinder 命令 hostname(config-username-webvpn)# sso-server value server_name hostname(config-username-webvpn)# 如要删除分配并使用默认策略, 请使用此命令的 no 形式 如要防止继承默认策略, 请使用 sso-server none 命令 hostname(config-username-webvpn)# sso-server {value server_name none} hostname(config-username-webvpn)# [no] sso-server value server_name 分配给 SSO 服务器的默认策略为 DfltGrpPolicy 以下示例将名为 example 的 SSO 服务器分配给名为 anyuser 的用户 : hostname(config)# username anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# sso-server value example hostname(config-username-webvpn)# 4-92

167 第 5 章 VPN 的 IP 地址 配置 IP 地址分配策略 ASA 可使用以下一个或多个方法将 IP 地址分配给远程访问客户端 如已配置多个地址分配方法, 则 ASA 将搜索每一个选项, 直到找到一个 IP 地址为止 默认情况下, 所有方法均已启用 aaa - 从外部身份验证 授权和记帐服务器逐个用户检索 IP 地址 如果使用已配置 IP 地址的身份验证服务器, 建议使用此方法 此方法适用于 IPv4 和 IPv6 分配策略 dhcp - 从 DHCP 服务器获取 IP 地址 如要使用 DHCP, 则必须配置 DHCP 服务器 还必须定义 DHCP 服务器可使用的 IP 地址范围 此方法适用于 IPv4 分配策略 local - 内部配置的地址池是配置地址池分配的最简单方法 如果选择 local, 还必须使用 ip-local-pool 命令定义要使用的 IP 地址范围 此方法适用于 IPv4 和 IPv6 分配策略 允许释放 IP 地址一段时间之后对其重新使用 - 在 IP 地址返回到地址池之后, 延迟一段时间方可重新使用 增加延迟有助于防止防火墙在快速重新分配 IP 地址时遇到的问题 默认情况下 ASA 将不强制执行延迟 此可配置元素适用于 IPv4 分配策略 使用以下方法之一指定将 IP 地址分配给远程访问客户端的方法 配置 IPv4 地址分配 配置 IPv6 地址分配 配置 IPv4 地址分配 启用要供 ASA 在将 IPv4 地址分配给 VPN 连接时使用的地址分配方法 可用的方法是从 AAA 服务器 DHCP 服务器或本地地址池获取 IP 地址 默认情况下, 这些方法均已启用 vpn-addr-assign {aaa dhcp local [reuse-delay minutes]} 例如, 您可以将 IP 地址释放之后重新开始使用的时间配置为 0 至 480 分钟 hostname(config)# vpn-addr-assign aaa hostname(config)# vpn-addr-assign local reuse-delay 180 以下示例使用此命令的 no 形式禁用地址分配方法 hostname(config)# no vpn-addr-assign dhcp 5-1

168 配置 IP 地址分配策略 第 5 章 VPN 的 IP 地址 配置 IPv6 地址分配 启用要供 ASA 在将 IPv6 地址分配给 VPN 连接时使用的地址分配方法 可用的方法是从 AAA 服务器或本地地址池获取 IP 地址 默认情况下, 这两种方法均已启用 ipv6-vpn-addr-assign {aaa local} hostname(config)# ipv6-vpn-addr-assign aaa 以下示例使用此命令的 no 形式禁用地址分配方法 hostname(config)# no ipv6-vpn-addr-assign local 模式 下表显示了可以使用此功能的模式 : 防火墙模式 安全情境 路由 透明 一个 多个情景 系统 查看地址分配方法 使用以下方法之一查看在 ASA 上配置的地址分配方法 : 查看 IPv4 地址分配 显示已配置的地址分配方法 已配置的地址分配方法可能为 aaa dhcp 或 local show running-config all vpn-addr-assign vpn-addr-assign aaa vpn-addr-assign dhcp vpn-addr-assign local hostname(config)# show running-config all vpn-addr-assign 查看 IPv6 地址分配 显示已配置的地址分配方法 已配置的地址分配方法可能为 aaa 或 local show running-config all ipv6-vpn-addr-assign ipv6-vpn-addr-assign aaa ipv6-vpn-addr-assign local reuse-delay 0 hostname(config)# show running-config all ipv6-vpn-addr-assign 5-2

169 第 5 章 VPN 的 IP 地址 配置本地 IP 地址池 配置本地 IP 地址池 如要配置用于 VPN 远程访问隧道的 IPv4 地址池, 请在全局配置模式下输入 ip local pool 命令 如要删除地址池, 请输入此命令的 no 形式 如要配置用于 VPN 远程访问隧道的 IPv6 地址池, 请在全局配置模式下输入 ipv6 local pool 命令 如要删除地址池, 请输入此命令的 no 形式 ASA 根据连接配置文件或连接的组策略使用地址池 地址池的指定顺序非常重要 如已为连接配置文件或组策略配置多个地址池, 则 ASA 将按您向 ASA 添加地址池的顺序使用地址池 如果从非本地子网分配地址, 我们建议添加位于子网边界的地址池, 从而可更轻松地添加这些网络的路由 配置本地 IPv4 地址池 步骤 1 将 IP 地址池配置为地址分配方法 输入参数为 local 的 vpn-addr-assign 命令 vpn-addr-assign local hostname(config)# vpn-addr-assign local 步骤 2 配置地址池 此命令为地址池命名, 并指定 IPv4 地址范围和子网掩码 ip local pool poolname first_address last_address mask mask 第一个示例配置名为 firstpool 的 IP 地址池 起始地址为 , 结束地址为 网络掩码为 hostname(config)# ip local pool firstpool mask 第二个示例删除名为 firstpool 的 IP 地址池 hostname(config)# no ip local pool firstpool 配置本地 IPv6 地址池 步骤 1 将 IP 地址池配置为地址分配方法, 输入参数为 local 的 ipv6-vpn-addr-assign 命令 ipv6-vpn-addr-assign local hostname(config)# ipv6-vpn-addr-assign local 步骤 2 配置地址池 此命令为地址池命名, 并确定起始 IPv6 地址 前缀长度 ( 位数 ) 和要在相应地址范围中使用的地址数量 ipv6 local pool pool_name starting_address prefix_length number_of_addresses 5-3

170 配置 AAA 寻址 第 5 章 VPN 的 IP 地址 第一个示例配置名为 ipv6pool 的 IP 地址池 起始地址为 2001:DB8::1, 前缀长度为 32 位, 要在地址池中使用的地址数量为 100 hostname(config)# ipv6 local pool ipv6pool 2001:DB8::1/ 第二个示例删除名为 ipv6pool 的 IP 地址池 hostname(config)# no ipv6 local pool ipv6pool 配置 AAA 寻址 如要使用 AAA 服务器为 VPN 远程访问客户端分配地址, 必须首先配置 AAA 服务器或服务器组 请参阅 命令参考 中的 aaa-server protocol 命令 此外, 用户必须匹配为 RADIUS 身份验证配置的连接配置文件 以下示例说明如何为名为 firstgroup 的隧道组定义名为 RAD2 的 AAA 服务器组 此过程还包括一个必须执行的步骤, 在该步骤中, 您可能已经为隧道组命名并定义隧道组类型 该步骤在以下示例中显示为一则提醒, 提示您只有先设置这些值, 然后才有权访问后续 tunnel-group 命令 这些示例创建的配置概述如下 : hostname(config)# vpn-addr-assign aaa hostname(config)# tunnel-group firstgroup type ipsec-ra hostname(config)# tunnel-group firstgroup general-attributes hostname(config-general)# authentication-server-group RAD2 如要配置用于 IP 寻址的 AAA, 请执行以下步骤 : 步骤 1 如要将 AAA 配置为地址分配方法, 请输入参数为 aaa 的 vpn-addr-assign 命令 : hostname(config)# vpn-addr-assign aaa hostname(config)# 步骤 2 步骤 3 步骤 4 如要建立用作远程访问的名为 firstgroup 的隧道组或 LAN 到 LAN 隧道组, 请输入关键字为 type 的 tunnel-group 命令 以下示例配置远程访问隧道组 hostname(config)# tunnel-group firstgroup type ipsec-ra hostname(config)# 如要进入通用属性配置模式, 在该模式下可为名为 firstgroup 的隧道组定义 AAA 服务器组, 请输入参数为 general-attributes 的 tunnel-group 命令 hostname(config)# tunnel-group firstgroup general-attributes hostname(config-general)# 如要指定用于身份验证的 AAA 服务器组, 请输入 authentication-server-group 命令 hostname(config-general)# authentication-server-group RAD2 hostname(config-general)# 此命令包含的参数比此示例中的参数要多 有关详细信息, 请参阅 命令参考 5-4

171 第 5 章 VPN 的 IP 地址 配置 DHCP 寻址 配置 DHCP 寻址 如要使用 DHCP 为 VPN 客户端分配地址, 必须首先配置 DHCP 服务器和 DHCP 服务器可使用的 IP 地址范围 然后根据连接配置文件定义 DHCP 服务器 或者, 也可在与连接配置文件或用户名关联的组策略中定义 DHCP 网络范围 它可能是 IP 网络编号, 也可能是 IP 地址, 用于向 DHCP 服务器标识要使用的 IP 地址池 以下示例为名为 firstgroup 的连接配置文件定义 IP 地址为 的 DHCP 服务器 这些示例还为名为 remotegroup 的组策略将 DHCP 网络范围定义为 ( 名为 remotegroup 的组策略与名为 firstgroup 的连接配置文件关联 ) 如未定义网络范围, 则 DHCP 服务器将按地址池配置顺序分配 IP 地址 它将检查各个池, 直到发现未分配的地址为止 以下配置包括多个必须执行的步骤, 在这些步骤中, 您可能已经为连接配置文件类型命名并将其定义为远程访问, 同时为组策略命名并将其标识为内部或外部组策略 这些步骤在以下示例中显示为一则提醒, 提示您只有先设置这些值, 然后才有权访问后续 tunnel-group 和 group-policy 命令 指南和限制您只能使用 IPv4 地址标识要分配客户端地址的 DHCP 服务器 配置 DHCP 寻址 步骤 1 步骤 2 步骤 3 步骤 4 将 IP 地址池配置为地址分配方法 输入参数为 dhcp 的 vpn-addr-assign 命令 vpn-addr-assign dhcp 建立名为 firstgroup 的连接配置文件作为远程访问连接配置文件 输入关键字为 type 且参数为 remote-access 的 tunnel-group 命令 tunnel-group firstgroup type remote-access 进入连接配置文件的通用属性配置模式, 以便配置 DHCP 服务器 输入参数为 general-attributes 的 tunnel-group 命令 tunnel-group firstgroup general-attributes 用 IPv4 地址定义 DHCP 服务器 不能用 IPv6 地址定义 DHCP 服务器 可为连接配置文件指定多个 DHCP 服务器地址 输入 dhcp-server 命令 您可通过此命令将 ASA 配置为在其尝试获取 VPN 客户端的 IP 地址时向指定的 DHCP 服务器发送附加选项 dhcp-server IPv4_address_of_DHCP_server 以下示例配置 IP 地址为 的 DHCP 服务器 hostname(config-general)# dhcp-server hostname(config-general)# 步骤 5 步骤 6 退出隧道组模式 hostname(config-general)# exit hostname(config)# 创建名为 remotegroup 的内部组策略 输入参数为 internal 的 group-policy 命令, 以创建内部组策略 以下示例配置一个内部组 hostname(config)# group-policy remotegroup internal 5-5

172 配置 DHCP 寻址 第 5 章 VPN 的 IP 地址 步骤 7 ( 可选 ) 进入组策略属性配置模式, 通过此模式可为要使用的 DHCP 服务器配置 IP 地址的子网 输入关键字为 attributes 的 group-policy 命令 hostname(config)# group-policy remotegroup attributes 以下示例进入 remotegroup 组策略的组策略属性配置模式 hostname(config)# group-policy remotegroup attributes hostname(config-group-policy)# 步骤 8 ( 可选 ) 如要指定 DHCP 服务器在将地址分配给名为 remotegroup 的组策略用户时要使用的 IP 地址范围, 请输入 dhcp-network-scope 命令 hostname(config-group-policy)# dhcp-network-scope hostname(config-group-policy)# 此示例配置网络范围 备注 dhcp-network-scope 必须是可路由 IP 地址, 而非 DHCP 地址池的子集 DHCP 服务器确定此 IP 地址所属的子网并从该地址池分配 IP 地址 出于路由原因, 我们建议您使用 ASA 的接口作为 dhcp-network-scope 当然, 您可以使用任意 IP 地址作为 dhcp-network-scope, 但是可能需要将静态路由添加至网络 示例这些示例创建的配置摘要如下 : hostname(config)# vpn-addr-assign dhcp hostname(config)# tunnel-group firstgroup type remote-access hostname(config)# tunnel-group firstgroup general-attributes hostname(config-general)# dhcp-server hostname(config-general)# exit hostname(config)# group-policy remotegroup internal hostname(config)# group-policy remotegroup attributes hostname(config-group-policy)# dhcp-network-scope 后续操作 有关详细信息, 请参阅 思科安全设备命令参考 指南中的 dhcp-server 命令 5-6

173 第 6 章 远程访问 IPsec VPN 本章介绍如何配置远程访问 IPsec VPN, 包括以下各节 : 关于远程访问 IPsec VPN( 第 6-1 页 ) 3.1 版的远程访问 IPsec VPN 许可要求 ( 第 6-2 页 ) IPsec VPN 的限制 ( 第 6-3 页 ) 配置远程访问 IPsec VPN( 第 6-3 页 ) 远程访问 IPsec VPN 配置示例 ( 第 6-9 页 ) 远程访问 VPN 的功能历史记录 ( 第 6-10 页 ) 关于远程访问 IPsec VPN 远程访问 VPN 使用户可以通过安全的 TCP/IP 网络连接与中心站点相连接 互联网安全关联和密钥管理协议 ( 又称为 IKE) 是一种协商协议, 让远程 PC 上的 IPsec 客户端和 ASA 可以协商如何构建 IPSec 安全关联 每个 ISAKMP 协商分为两个部分, 分别称为阶段 1 和阶段 2 阶段 1 创建第一条隧道, 用于保护随后的 ISAKMP 协商消息 阶段 2 创建的隧道用于保护通过安全连接传输的数据 如要设置 ISAKMP 协商条款, 可以创建 ISAKMP 策略 ISAKMP 策略包括以下部分 : 身份验证方法, 用于确保对等体的身份 加密方法, 用于保护数据并确保隐私 散列消息身份验证代码 (HMAC) 方法, 用于确保发送方的身份, 以及确保消息在传输过程中未发生修改 Diffie-Hellman 群, 用于设置加密密钥的大小 时长限制,ASA 使用加密密钥达到此时间后, 就要更换该加密密钥 转换集由加密方法和身份验证方法组成 在与 ISAKMP 进行 IPsec 安全关联协商期间, 对等体同意使用特定转换集来保护特定数据流 转换集对于两个对等体必须相同 转换集保护关联的加密映射条目中指定的 ACL 的数据流 您可以在 ASA 配置中创建转换集, 然后在加密映射条目或动态加密映射条目中指定最多 11 个转换集 有关更多概述信息 ( 包括有效的加密方法和身份验证方法的列表 ), 请参阅本指南的第 8 章 LAN 到 LAN IPsec VPN 中的创建 IKEv1 转换集 ( 第 8-6 页 ) 通过在 ASA 上创建内部地址池, 或者通过向 ASA 上的本地用户分配专用地址, 您可以将 ASA 配置为向 AnyConnect 客户端分配 IPv4 地址和 / 或 IPv6 地址 6-1

174 3.1 版的远程访问 IPsec VPN 许可要求 第 6 章 远程访问 IPsec VPN 终端必须已在其操作系统中实现双栈协议, 才有资格分配得到这两种地址 在上述两种场景中, 如果没有 IPv6 地址池但有 IPv4 地址可用, 或者没有 IPv4 地址池但有 IPv6 地址可用, 仍会进行连接 但是, 不会通知客户端 ; 因此, 管理员必须查看 ASA 日志才能了解详细信息 SSL 协议支持向客户端分配 IPv6 地址 IKEv2/IPsec 协议不支持此功能 3.1 版的远程访问 IPsec VPN 许可要求 备注 此功能不适用于无负载加密型号 使用 IKEv2 的 IPsec 远程访问 VPN 需要 AnyConnect Plus 或 Apex 许可证, 可单独购买 购买 AnyConnect 许可证时, 请参阅以下最大值 使用 IKEv1 的 IPsec 远程访问 VPN 和使用 IKEv1 或 IKEv2 的 IPsec 站点到站点 VPN 使用基本许可证随附的其他 VPN 许可证 所有类型的最大组合 VPN 会话数量不能超过此表中所示的最大会话数 建模许可证要求 ASA 5506-X 使用 IKEv2 的 IPsec 远程访问 VPN:50 个会话 5506H-X 5506W-X 使用 IKEv1 的 IPsec 远程访问 VPN 和使用 IKEv1 或 IKEv2 的 IPsec 站点到站点 VPN: ASA 5508-X ASA 5512-X ASA 5515-X ASA 5516-X ASA 5525-X ASA 5545-X ASA 5555-X ASA 5585-X, 带 SSP-10 ASA 5585-X, 带 SSP-20 SSP-40 和 SSP-60 ASASM ASAv5 ASAv10 ASAv30 基本许可证 :10 个会话 增强型安全许可证 :50 个会话 100 个会话 250 个会话 250 个会话 300 个会话 750 个会话 2500 个会话 5000 个会话 5000 个会话 10,000 个会话 10,000 个会话 250 个会话 250 个会话 750 个会话 6-2

175 第 6 章 远程访问 IPsec VPN IPsec VPN 的限制 IPsec VPN 的限制 情景模式规定 - 仅支持单情景模式, 不支持多情景模式 防火墙模式规定 - 仅在路由防火墙模式中受支持, 不支持透明模式 故障切换规定 - 仅在主用 / 备用故障切换配置中复制 IPsec VPN 会话, 不支持主用 / 主用故障切换配置 配置远程访问 IPsec VPN 配置接口 本章介绍如何配置远程访问 VPN, 包括以下主题 : 配置接口 ( 第 6-3 页 ) 在外部接口上配置 ISAKMP 策略和启用 ISAKMP( 第 6-4 页 ) 配置地址池 ( 第 6-5 页 ) 添加用户 ( 第 6-5 页 ) 创建 IKEv1 转换集或 IKEv2 提议 ( 第 6-6 页 ) 定义隧道组 ( 第 6-7 页 ) 创建动态加密映射 ( 第 6-8 页 ) 创建加密映射条目以使用动态加密映射 ( 第 6-8 页 ) ASA 具有至少两个接口, 此处称为外部和内部 通常, 外部接口连接到公共互联网, 内部接口连接到专用网络且不接受公共访问 首先, 请在 ASA 上配置并启用两个接口 然后, 为接口分配名称 IP 地址和子网掩码 或者, 在安全设备上配置接口的安全级别 速度和双工操作 步骤 1 从全局配置模式进入接口配置模式 interface {interface} 步骤 2 hostname(config)# interface ethernet0 hostname(config-if)# 设置接口的 IP 地址和子网掩码 ip address ip_address [mask] [standby ip_address] hostname(config)# interface ethernet0 hostname(config-if)# hostname(config-if)# ip address 步骤 3 为接口指定名称 ( 最多包含 48 个字符 ) 设置此名称后, 不能对其进行更改 nameif name hostname(config-if)# nameif outside hostname(config-if)# 6-3

176 配置远程访问 IPsec VPN 第 6 章 远程访问 IPsec VPN 步骤 4 启用接口 默认情况下, 接口处于禁用状态 shutdown hostname(config-if)# no shutdown hostname(config-if)# 在外部接口上配置 ISAKMP 策略和启用 ISAKMP 本节介绍在外部接口上配置和启用 ISAKMP 策略的程序 步骤 1 步骤 2 指定要在 IKEv1 协商过程中使用的身份验证方法和一组参数 Priority 唯一标识互联网密钥交换 (IKE) 策略并向该策略分配优先级 请使用一个介于 1 到 65,534 之间的整数,1 表示最高优先级,65534 表示最低优先级 在本示例及后续步骤中, 我们将优先级设置为 1 指定要在 IKE 策略中使用的加密方法 crypto ikev1 policy priority encryption {aes aes-192 aes-256 des 3des} hostname(config)# crypto ikev1 policy 1 encryption 3des hostname(config)# 步骤 3 为 IKE 策略指定散列算法 ( 又称为 HMAC 变体 ) crypto ikev1 policy priority hash {md5 sha} hostname(config)# crypto ikev1 policy 1 hash sha hostname(config)# 步骤 4 为 IKE 策略指定 Diffie-Hellman 群 - 支持 IPsec 客户端与 ASA 建立共享密钥的加密协议 crypto ikev1 policy priority group {1 2 5} hostname(config)# crypto ikev1 policy 1 group 2 hostname(config)# 步骤 5 指定加密密钥寿命 - 每个安全关联在到期之前应存在的时长, 以秒为单位 有限寿命为 120 到 秒 要设置无限寿命, 请使用 0 秒 crypto ikev1 policy priority lifetime {seconds} hostname(config)# crypto ikev1 policy 1 lifetime hostname(config)# 步骤 6 在名为 outside 的接口上启用 ISAKMP crypto ikev1 enable interface-name hostname(config)# crypto ikev1 enable outside hostname(config)# 6-4

177 第 6 章 远程访问 IPsec VPN 配置远程访问 IPsec VPN 步骤 7 保存配置更改 write memory hostname(config-if)# write memory Building configuration... Cryptochecksum: 0f80bf a231 63f27ccf 8700ca6d bytes copied in secs (3893 bytes/sec) [OK] hostname(config-if)# 配置地址池 ASA 需要有用于向用户分配 IP 地址的方法 本节以地址池为例 步骤 1 使用一系列 IP 地址创建地址池,ASA 会从该地址池向客户端分配地址 地址掩码是可选的 但是, 如果将 IP 地址分配给属于非标准网络的 VPN 客户端, 则必须提供掩码值 ; 如果使用默认掩码, 数据路由可能会出错 这种情况的一个典型例子是本地 IP 地址池包含 / 地址, 因为默认情况下这是 A 类网络 当 VPN 客户端需要通过不同接口访问 10 网络中的不同子网时, 可能会导致路由问题 ip local pool poolname first-address last-address [mask mask] hostname(config)# ip local pool testpool hostname(config)# 添加用户 本节介绍如何配置用户名和密码 可将以下示例中所示的命令语法作为指导 步骤 1 创建用户 密码和权限级别 username name {nopassword password password [mschap encrypted nt-encrypted]} [privilege priv_level] hostname(config)# username testuser password

178 配置远程访问 IPsec VPN 第 6 章 远程访问 IPsec VPN 创建 IKEv1 转换集或 IKEv2 提议 本节介绍如何配置转换集 (IKEv1) 或提议 (IKEv2)( 由加密方法和身份验证方法组成 ) 以下步骤显示如何创建 IKEv1 和 IKEv2 提议 步骤 1 配置 IKEv1 转换集, 用于指定为确保数据完整性而要使用的 IPsec IKEv1 加密和散列算法 对 encryption 使用以下其中一个值 : esp-aes 使用带 128 位密钥的 AES esp-aes-192 使用带 192 位密钥的 AES esp-aes-256 使用带 256 位密钥的 AES esp-des 使用 56 位 DES-CBC esp-3des 使用三重 DES 算法 esp-null 不使用加密 对 authentication 使用以下其中一个值 : esp-md5-hmac 使用 MD5/HMAC-128 作为散列算法 esp-sha-hmac 使用 SHA/HMAC-160 作为散列算法 esp-none 不使用 HMAC 身份验证 如要配置 IKEv1 转换集, 请使用以下命令 : crypto ipsec ikev1 transform-set transform-set-name encryption-method [authentication] hostname(config)# crypto ipsec transform set FirstSet esp-3des esp-md5-hmac hostname(config)# 步骤 2 配置 IKEv2 提议集, 用于指定要使用的 IPsec IKEv2 协议 加密和完整性算法 esp 指定封装安全负载 (ESP) IPsec 协议 ( 目前唯一支持的 IPsec 协议 ) 对 encryption 使用以下其中一个值 : des - 对 ESP 使用 56 位 DES-CBC 加密 3des -( 默认值 ) 对 ESP 使用三重 DES 加密算法 aes - 对 ESP 结合使用 AES 和 128 位密钥加密 aes 对 ESP 结合使用 AES 和 192 位密钥加密 aes 对 ESP 结合使用 AES 和 256 位密钥加密 null - 不对 ESP 使用加密 对 integrity 使用以下其中一个值 : md5 - 为 ESP 完整性保护指定 md5 算法 sha-1 ( 默认值 ) 为 ESP 完整性保护指定美国联邦信息处理标准 (FIPS) 中定义的安全散列算法 (SHA) SHA-1 如要配置 IKEv2 提议, 请使用以下命令 : crypto ipsec ikev2 ipsec-proposal proposal_name 6-6

179 第 6 章 远程访问 IPsec VPN 配置远程访问 IPsec VPN 然后 : protocol {esp} {encryption {des 3des aes aes-192 aes-256 null} integrity {md5 sha-1} hostname(config)# crypto ipsec ikev2 ipsec-proposal secure_proposal hostname(config-ipsec-proposal)# protocol esp encryption des integrity md5 定义隧道组 隧道组是一组隧道连接策略 您可以配置隧道组来标识 AAA 服务器, 指定连接参数, 以及定义默认组策略 ASA 在内部存储隧道组 ASA 系统中有两个默认隧道组 :DefaultRAGroup 和 DefaultL2Lgroup, 前者是默认的远程访问隧道组, 后者是默认的 LAN 到 LAN 隧道组 可以更改这些组, 但不能将其删除 如果在隧道协商过程中没有标识特定隧道组,ASA 将会使用这两个隧道组来配置远程访问隧道组和 LAN 到 LAN 隧道组的默认隧道参数 步骤 1 创建 IPsec 远程访问隧道组 ( 又称为连接配置文件 ) tunnel-group name type type hostname(config)# tunnel-group testgroup type ipsec-ra hostname(config)# 步骤 2 进入隧道组常规属性模式 ( 在该模式下可输入身份验证方法 ) tunnel-group name general-attributes hostname(config)# tunnel-group testgroup general-attributes hostname(config-tunnel-general)# 步骤 3 指定要用于隧道组的地址池 address-pool [(interface name)] address_pool1 [...address_pool6] hostname(config-general)# address-pool testpool 步骤 4 进入隧道组 IPsec 属性模式 ( 在该模式下可输入用于 IKEv1 连接的 IPsec 特定属性 ) tunnel-group name ipsec-attributes 步骤 5 hostname(config)# tunnel-group testgroup ipsec-attributes hostname(config-tunnel-ipsec)# ( 可选 ) 配置预共享密钥 ( 仅限 IKEv1) 该密钥可以是包含 1 到 128 个字符的字母数字字符串 用于自适应安全设备和客户端的密钥必须相同 如果具有不同预共享密钥大小的思科 VPN 客户端尝试连接, 该客户端将会记录错误消息, 表明其无法对对等体进行身份验证 ikev1 pre-shared-key key 6-7

180 配置远程访问 IPsec VPN 第 6 章 远程访问 IPsec VPN hostname(config-tunnel-ipsec)# pre-shared-key 44kkaol59636jnfx 创建动态加密映射 动态加密映射定义的策略模板并未配置所有参数 这样,ASA 就可以接受来自 IP 地址未知的对等体 ( 例如远程访问客户端 ) 的连接 动态加密映射条目标识用于连接的转换集 您还可以启用反向路由, 让 ASA 可以获悉所连接客户端的路由信息, 并通过 RIP 或 OSPF 通告这些信息 请执行以下任务 : 步骤 1 创建动态加密映射并为其指定 IKEv1 转换集或 IKEv2 提议 对于 IKEv1, 请使用以下命令 : crypto dynamic-map dynamic-map-name seq-num set ikev1 transform-set transform-set-name hostname(config)# crypto dynamic-map dyn1 1 set ikev1 transform-set FirstSet hostname(config)# 对于 IKEv2, 请使用以下命令 : crypto dynamic-map dynamic-map-name seq-num set ikev2 ipsec-proposal proposal-name hostname(config)# crypto dynamic-map dyn1 1 set ikev2 ipsec-proposal FirstSet hostname(config)# 步骤 2 ( 可选 ) 根据此加密映射条目为任何连接启用反向路由注入 crypto dynamic-map dynamic-map-name dynamic-seq-num set reverse-route hostname(config)# crypto dynamic-map dyn1 1 set reverse route hostname(config)# 创建加密映射条目以使用动态加密映射 创建加密映射条目, 让 ASA 可以使用动态加密映射来设置 IPsec 安全关联的参数 在以下命令示例中, 加密映射的名称是 mymap, 序号是 1, 动态加密映射的名称是 dyn1( 是在上一节 创建动态加密映射 中创建的 ) 步骤 1 创建使用动态加密映射的加密映射条目 crypto map map-name seq-num ipsec-isakmp dynamic dynamic-map-name 6-8

181 第 6 章 远程访问 IPsec VPN 远程访问 IPsec VPN 配置示例 hostname(config)# crypto map mymap 1 ipsec-isakmp dynamic dyn1 步骤 2 将加密映射应用于外部接口 crypto map map-name interface interface-name hostname(config)# crypto map mymap interface outside 步骤 3 保存配置更改 write memory hostname(config-if)# write memory Building configuration... Cryptochecksum: 0f80bf a231 63f27ccf 8700ca6d bytes copied in secs (3893 bytes/sec) [OK] hostname(config-if)# 远程访问 IPsec VPN 配置示例 以下示例显示如何配置远程访问 IPsec/IKEv1 VPN: hostname(config)# interface ethernet0 hostname(config-if)# ip address hostname(config-if)# nameif outside hostname(config-if)# no shutdown hostname(config)# crypto ikev1 policy 1 hostname(config-ikev1-policy)# authentication pre-share hostname(config-ikev1-policy)# encryption 3des hostname(config-ikev1-policy)# hash sha hostname(config-ikev1-policy)# group 2 hostname(config-ikev1-policy)# lifetime hostname(config)# crypto ikev1 outside hostname(config)# ip local pool testpool hostname(config)# username testuser password hostname(config)# crypto ipsec ikev1 transform set FirstSet esp-3des esp-md5-hmac hostname(config)# tunnel-group testgroup type remote-access hostname(config)# tunnel-group testgroup general-attributes hostname(config-general)# address-pool testpool hostname(config)# tunnel-group testgroup ipsec-attributes hostname(config-ipsec)# ikev1 pre-shared-key 44kkaol59636jnfx hostname(config)# crypto dynamic-map dyn1 1 set ikev1 transform-set FirstSet hostname(config)# crypto dynamic-map dyn1 1 set reverse-route hostname(config)# crypto map mymap 1 ipsec-isakmp dynamic dyn1 hostname(config)# crypto map mymap interface outside hostname(config)# write memory 6-9

182 远程访问 VPN 的功能历史记录 第 6 章 远程访问 IPsec VPN 以下示例显示如何配置远程访问 IPsec/IKEv2 VPN: hostname(config)# interface ethernet0 hostname(config-if)# ip address hostname(config-if)# nameif outside hostname(config-if)# no shutdown hostname(config)# crypto ikev2 policy 1 hostname(config-ikev2-policy)# group 2 hostname(config-ikev2-policy)# integrity sha hostname(config-ikev2-policy)# lifetime hostname(config-ikev2-policy)# prf sha hostname(config)# crypto ikev2 outside hostname(config)# ip local pool testpool hostname(config)# username testuser password hostname(config)# crypto ipsec ikev2 ipsec-proposal FirstSet hostname(config-ipsec-proposal)# protocol esp encryption 3des aes hostname(config)# tunnel-group testgroup type remote-access hostname(config)# tunnel-group testgroup general-attributes hostname(config-general)# address-pool testpool hostname(config)# tunnel-group testgroup webvpn-attributes hostname(config-webvpn)# authentication aaa certificate hostname(config)# crypto dynamic-map dyn1 1 set ikev2 ipsec-proposal FirstSet hostname(config)# crypto dynamic-map dyn1 1 set reverse-route hostname(config)# crypto map mymap 1 ipsec-isakmp dynamic dyn1 hostname(config)# crypto map mymap interface outside hostname(config)# write memory 远程访问 VPN 的功能历史记录 功能名称 版本 功能信息 用于 IPsec IKEv1 和 SSL 的远程访问 VPN 7.0 远程访问 VPN 使用户可以通过安全的 TCP/IP 网络连接 ( 例如互联网 ) 连接到中心站点 用于 IPsec IKEv2 的远程访问 VPN 8.4(1) 增加了对 AnyConnect 安全移动客户端的 IPsec IKEv2 支持 6-10

183 第 7 章 网络准入控制 本章包含以下小节 : 有关网络准入控制的信息 ( 第 7-1 页 ) 许可要求 ( 第 7-2 页 ) NAC 必备条件 ( 第 7-3 页 ) 规定和限制 ( 第 7-3 页 ) 查看安全设备上的 NAC 策略 ( 第 7-3 页 ) 添加 访问或删除 NAC 策略 ( 第 7-5 页 ) 配置 NAC 策略 ( 第 7-5 页 ) 将 NAC 策略分配给组策略 ( 第 7-9 页 ) 更改全局 NAC 框架设置 ( 第 7-9 页 ) 有关网络准入控制的信息 网络准入控制会执行终端合规性和漏洞检查, 并以此作为网络生产访问的条件, 从而防止企业网络遭受蠕虫 病毒和欺诈应用的入侵和感染 我们将这些检查称为安全状态验证 您可以配置安全状态验证来确保建立了 IPsec 或 WebVPN VPN 会话的主机上的防病毒文件 个人防火墙规则或入侵防御软件均为最新, 然后再向内联网上的易受攻击主机提供访问权限 安全状态验证可包括验证远程主机上运行的应用是否已使用最新修补程序进行更新 NAC 仅在用户身份验证和隧道建立之后进行 NAC 对于防止不受自动网络策略实施约束的主机 ( 例如家用 PC) 访问企业网络特别有用 终端和 ASA 之间的隧道建立会触发安全状态验证 您可以将 ASA 配置为在客户端不响应安全状态验证请求时将客户端的 IP 地址传送到可选的审核服务器 审核服务器 ( 例如 Trend 服务器 ) 使用主机 IP 地址直接质询主机, 以评估其运行状态 例如, 它可能会质询主机来确定主机的病毒检查软件是否处于活动和最新状态 审核服务器完成与远程主机后的交互后, 会向安全状态验证服务器传送标记, 表明远程主机的运行状况 安全状态验证成功或收到表明远程主机运行状况良好的标记后, 安全状态验证服务器会将一个网络访问策略发送到 ASA, 以便应用于隧道上的流量 在涉及 ASA 的 NAC 框架配置中, 只有在客户端上运行的思科信任代理可以履行安全状态代理角色, 而且只有思科访问控制服务器 (ACS) 可以履行安全状态验证服务器角色 ACS 使用动态 ACL 确定每个客户端的访问策略 作为 RADIUS 服务器, 除了履行安全状态验证服务器的角色外,ACS 还可以对建立隧道所需的登录凭证进行身份验证 7-1

184 许可要求 第第 7 章 网络准入控制章 备注 只有 ASA 上配置的 NAC 框架策略支持使用审核服务器 作为安全状态验证服务器时,ACS 使用访问控制列表 如果安全状态验证成功, 且 ACS 指定一个重定向 URL 作为其发到 ASA 的访问策略的一部分,ASA 会将所有 HTTP 和 HTTPS 请求从远程主机重定向至重定向 URL 一旦安全状态验证服务器将访问策略上传到 ASA, 所有关联的流量都必须通过安全设备和 ACS( 反之亦然 ) 才能到达其目标 如果 NAC 框架策略被分配给组策略,IPsec 或 WebVPN 客户端和 ASA 之间的隧道建立会触发安全状态验证 但是,NAC 策略框架可以确定豁免安全状态验证的操作系统并指定筛选此类流量的可选 ACL 许可要求 备注 此功能不适用于无负载加密型号 VPN 许可证需要 AnyConnect Plus 或 Apex 许可证, 可单独购买 购买 AnyConnect 许可证时, 请参阅以下最大值 所有类型的最大组合 VPN 会话数量不能超过此表中所示的最大会话数 建模 许可证要求 ASA 5506-X 50 个会话 5506H-X 5506W-X 不支持共享许可证 ASA 5508-X 100 个会话 不支持共享许可证 ASA 5512-X 250 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASA 5515-X 250 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASA 5516-X 300 个会话 不支持共享许可证 ASA 5525-X 750 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASA 5545-X 2500 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASA 5555-X 5000 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,

185 第第 7 章 网络准入控制章 NAC 必备条件 建模 ASA 5585-X, 带 SSP-10 ASA 5585-X, 带 SSP-20 SSP-40 和 SSP 个会话 ASASM 10,000 个会话 ASAv5 ASAv10 ASAv30 许可证要求 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 10,000 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, , 个会话 250 个会话 750 个会话 如果您启动无客户端 SSL VPN 会话, 然后从门户启动 AnyConnect 客户端会话, 总计使用的是 1 个会话 但是, 如果先启动 AnyConnect 客户端 ( 例如从独立客户端启动 ), 然后登录无客户端 SSL VPN 门户, 则使用的是 2 个会话 NAC 必备条件 当 ASA 配置为支持 NAC 时, 它作为思科安全访问控制服务器的一个客户端, 需要您在网络中安装至少一个访问控制服务器来提供 NAC 身份验证服务 规定和限制 在网络上配置一个或多个访问控制服务器后, 必须使用 aaa-server 命令来命名访问控制服务器组 然后, 请遵循 配置 NAC 策略 程序 ( 第 7-5 页 ) 中的说明 NAC 框架的 ASA 支持只限于远程访问 IPsec 和 WebVPN VPN 客户端会话 NAC 框架配置只支持单一模式 ASA 上的 NAC 不支持第 3 层 ( 非 VPN) 流量和 IPv6 流量 查看安全设备上的 NAC 策略 在配置要分配给组策略的 NAC 策略之前, 我们建议您查看 ASA 上可能已经设置的任何 NAC 策略 由于默认配置不包含 NAC 策略, 如要确定是否有人已添加任何此策略, 输入此命令是一种很实用的方法 如果您可以确定已配置的策略是适当的, 则可忽略有关配置 NAC 策略一节 7-3

186 查看安全设备上的 NAC 策略 第第 7 章 网络准入控制章 详细步骤 步骤 1 命令 show running-config nac-policy hostname# show running-config nac-policy nac-policy nacframework1 nac-framework default-acl acl-1 reval-period sq-period 300 exempt-list os "Windows XP" filter acl-2 hostname# 目的查看已在 ASA 上设置的所有 NAC 策略 显示名为 nac-framework1 的 NAC 策略的配置 步骤 2 default-acl - 安全状态验证之前应用的 NAC 默认 ACL 在安全状态验证后, 安全设备使用从远程主机的访问控制服务器获得的 ACL 替换默认 ACL 如果安全状态验证失败,ASA 将保留默认 ACL 步骤 3 reval-period - NAC 框架会话中每次成功的安全状态验证之间间隔的秒数 sq-period - NAC 框架会话中每次成功的安全状态验证与下一次主机安全状态更改查询之间间隔的秒数 exempt-list - 豁免安全状态验证的操作系统名称 此外, 如果远程计算机操作系统与该名称匹配, 还会显示用于过滤流量的可选 ACL authentication-server-group - 要用于 NAC 安全状态验证的身份验证服务器组的名称 show nac-policy asa2(config)# show nac-policy nac-policy framework1 nac-framework applied session count = 0 applied group-policy count = 2 group-policy list: GroupPolicy2 GroupPolicy1 nac-policy framework2 nac-framework is not in use. asa2(config)# 显示 nac-framework 属性 显示组策略的 NAC 策略分配 显示未分配的 NAC 策略以及每个 NAC 策略的使用计数 步骤 4 applied session count - 此 ASA 对其应用 NAC 策略的 VPN 会话的累计数量 applied group-policy count - 此 ASA 对其应用 NAC 策略的组策略的累计数量 group-policy list - 向其分配此 NAC 策略的组策略的列表 在此情况下, 是否使用组策略并不能决定其是否显示于此列表中 ; 如果在运行配置中将 NAC 策略分配到组策略, 则该组策略将显示于此列表中 解释 show nac-policy 命令中的字段 备注 策略未被分配给任何组策略时, 策略类型旁边将显示 is not in use 请参考以下几节, 创建 NAC 策略或修改已有的 NAC 策略 7-4

187 第第 7 章 网络准入控制章 添加 访问或删除 NAC 策略 添加 访问或删除 NAC 策略 详细步骤 命令 输入以下命令添加或修改 NAC 策略 : 步骤 1 global 切换成全局配置模式 步骤 2 nac-policy nac-policy-name nac-framework 添加或修改 NAC 策略 nac-policy-name 是新的或已有的 NAC 策略的名 称 该名称为最多 64 个字符的字符串 hostname(config)# nac-policy nac-framework1 nac-framework hostname(config-nac-policy-nac-framework) 步骤 3 ( 可选 ) [no] nac-policy nac-policy-name nac-framework 步骤 4 ( 可选 ) clear configure nac-policy 目的 nac-framework 指定 NAC 框架配置将为远程主机提供网络访问策略 该网络上必须有思科访问控制服务器才能为 ASA 提供 NAC 框架服务 指定此类型时, 提示符将表明您处于 nac-policy-nac-framework 配置模式下 此模式允许配置 NAC 框架策略 备注 您可以创建多个 NAC 框架策略, 但是一个组策略所分配的 NAC 框架策略不能超过一个 创建并访问名称为 NAC framework1 的 NAC 框架策略 从配置中删除 NAC 策略 必须同时指定策略的名称和类型 从配置中删除所有 NAC 策略, 但已分配给组策略的那些除外 步骤 5 show running-config nac-policy 显示安全设备上已有的每个 NAC 策略的名称和 配置 配置 NAC 策略 使用 nac-policy 命令命名 NAC 框架策略之后, 请根据以下几节的内容为其属性赋值, 再将其分配给组策略 指定访问控制服务器组 您必须至少配置一个思科访问控制服务器来支持 NAC 7-5

188 配置 NAC 策略 第第 7 章 网络准入控制章 详细步骤 命令 目的 步骤 1 aaa-server host 命名访问控制服务器组, 即使该组只包含一个服务器 步骤 2 ( 可选 ) show running-config aaa-server 显示 AAA 服务器配置 hostname(config)# show running-config aaa-server aaa-server acs-group1 protocol radius aaa-server acs-group1 (outside) host key secret radius-common-pw secret hostname(config)# 步骤 3 nac-policy-nac-framework 切换为 nac-policy-nac-framework 配置模式 步骤 4 authentication-server-group server-group 指定用于 NAC 安全状态验证的组 server-group 必须与 aaa-server host 命令中指定的 server-tag 变量匹配 如果使用的是该命令的 no 版 本, 则此要求是可选的 hostname(config-nac-policy-nac-framework)# authentication-server-group acs-group1 hostname(config-nac-policy-nac-framework) 步骤 5 ( 可选 ) [no] authentication-server-group server-group 将 acs-group1 指定为用于 NAC 安全状态验证的身份验证服务器组 从 NAC 策略删除该命令 设置安全状态更改查询计时器 详细步骤 每次安全状态验证成功之后,ASA 将启动状态查询计时器 此计时器到期会触发向远程主机查询上次安全状态验证之后的安全状态更改 如果响应表明没有更改, 则会重置状态查询计时器 如果响应表明安全状态更改, 则会触发无条件的安全状态重新验证 ASA 在重新验证期间保持当前的访问策略 默认情况下, 每次成功的安全状态验证和状态查询与每个后续状态查询之间的间隔是 300 秒 (5 分钟 ) 请按照以下步骤更改状态查询间隔: 命令 目的 步骤 1 nac-policy-nac-framework 切换为 nac-policy-nac-framework 配置模式 步骤 2 sq-period seconds hostname(config-group-policy)# sq-period 1800 hostname(config-group-policy) 更改状态查询间隔 seconds 必须在 30 至 1800 秒 (5 至 30 分钟 ) 的范围内 将查询计时器改为 1800 秒 步骤 3 ( 可选 ) [no] sq-period seconds 关闭状态查询计时器 步骤 4 show running-config nac-policy 在 sq-period 属性旁边显示 0, 表示计时器已关闭 7-6

189 第第 7 章 网络准入控制章 配置 NAC 策略 设置重新验证计时器 详细步骤 命令 每次安全状态验证成功之后,ASA 将启动重新验证计时器 此计时器到期会触发下一次无条件的安全状态验证 ASA 在重新验证期间保持当前的访问策略 默认情况下, 每次成功的安全状态验证之间的间隔为 秒 (10 小时 ) 要更改此间隔, 请在 nac-policy-nac-framework 配置模式下输入以下命令 : 步骤 1 nac-policy-nac-framework 切换为 nac-policy-nac-framework 步骤 2 reval-period seconds 更改每次成功的安全状态验证之间的间隔 hostname(config-nac-policy-nac-framework)# reval-period hostname(config-nac-policy-nac-framework) 步骤 3 ( 可选 ) [no] reval-period seconds 目的 seconds 必须在 300 至 秒 (5 分钟至 24 小时 ) 的范围内 关闭状态查询计时器 步骤 4 show running-config nac-policy 在 sq-period 属性旁边显示 0, 表示计时器已关闭 配置 NAC 的默认 ACL 详细步骤 命令 每个组策略指向要应用到与策略匹配且适用于 NAC 的主机的默认 ACL ASA 在安全状态验证之前应用 NAC 默认 ACL 在安全状态验证后,ASA 使用从远程主机的访问控制服务器获得的 ACL 替换默认 ACL 如果安全状态验证失败,ASA 将保留默认 ACL ASA 在无客户端身份验证启用 ( 默认设置 ) 时也会应用 NAC 默认 ACL 步骤 1 nac-policy-nac-framework 切换为 nac-policy-nac-framework 配置模式 步骤 2 default-acl acl-name 指定使用哪个 ACL 作为用于 NAC 会话的默认 ACL acl-name 是要应用于会话的访问控制列表的名称 目的 hostname(config-nac-policy-nac-framework)# default-acl acl-2 hostname(config-nac-policy-nac-framework) 步骤 3 ( 可选 ) [no] default-acl acl-name 将 ac1-2 标识为在安全状态验证成功之前应用的 ACL 从 NAC 框架策略删除该命令 指定 acl-name 是可选的 7-7

190 配置 NAC 策略 第第 7 章 网络准入控制章 配置 NAC 豁免 ASA 配置存储豁免 NAC 安全状态验证的列表 可以指定豁免的操作系统 如果指定 ACL, 运行该指定操作系统的客户端将豁免安全状态验证, 并且该客户端的流量受该 ACL 限制 要向豁免 NAC 安全状态验证的远程计算机类型列表中添加条目, 请在 nac-policy-nac-framework 配置模式下输入以下命令 : 详细步骤 命令 目的 步骤 1 nac-policy-nac-framework 切换为 nac-policy-nac-framework 配置模式 步骤 2 exempt-list os "os-name" [ disable filter acl-name 向豁免 NAC 安全状态验证的远程计算机类型列表 [ disable ] 添加条目 hostname(config-group-policy)# exempt-list os "Windows XP" hostname(config-group-policy) os-name 是操作系统名称 如果该名称包含空格, 请使用引号 ( 例如 Windows XP ) 如果计算机操作系统与 os name 匹配,filter 将应用 ACL 来过滤流量 该 filter/acl-name 对是可选的 disable 执行如下两个功能之一 : 如果在 os-name 后面输入此部分, ASA 会忽略豁免项, 并将 NAC 安全状态验证应用于运行该操作系统的远程主机 如果在 acl-name 后面输入此部分,ASA 会豁免该操作系统, 但是不会对关联的流量应用 ACL acl-name 是 ASA 配置中已有的 ACL 的名称 如果指定该名称, 它必须跟在 filter 关键字后面 向豁免安全状态验证的计算机列表中添加运行 Windows XP 的所有主机 hostname(config-nac-policy-nac-framework)# exempt-list os "Windows XP" filter acl-2 hostname(config-nac-policy-nac-framework) hostname(config-nac-policy-nac-framework)# no exempt-list os "Windows XP" filter acl-2 hostname(config-nac-policy-nac-framework) 步骤 3 ( 可选 ) [no] exempt-list os "os-name" [ disable filter acl-name [ disable ] ] 豁免运行 Windows XP 的所有主机并对来自这些主机的流量应用 ACL acl-2 从豁免列表中删除相同条目 从 NAC 框架策略删除所有豁免项 在发出 no 版本的该命令时指定一个条目会将此条目从豁免列表中删除 hostname(config-nac-policy-nac-framework)# no exempt-list hostname(config-nac-policy-nac-framework) 从豁免列表中删除所有条目 7-8

191 第第 7 章 网络准入控制章 将 NAC 策略分配给组策略 备注 当该命令指定一个操作系统时, 它不会覆盖之前添加到豁免列表中的条目 ; 为您想要豁免的每个操作系统和 ACL 分别输入一次该命令 将 NAC 策略分配给组策略 每次隧道建立完毕时,ASA 会将 NAC 策略 ( 如果其已分配到组策略 ) 应用到该会话 默认情况下, 每个组策略的配置中没有 nac-settings 命令 当您将 NAC 策略分配给组策略时,ASA 将自动为该组策略启用 NAC 详细步骤 命令 目的 步骤 1 group-policy 切换为 group-policy 配置模式 步骤 2 nac-settings { value nac-policy-name none } 将 NAC 策略分配到组策略 nac-settings none 将从组策略中删除 nac-policy-name 并为该组策略禁用 NAC 策略 组策略不会从默认组策略继承 nac-settings 值 hostname(config-group-policy)# nac-settings value framework1 hostname(config-group-policy) 步骤 3 ( 可选 ) [no] nac-settings { value nac-policy-name none } 步骤 4 ( 可选 ) show running-config nac-policy nac-settings value 将您命名的 NAC 策略分配给组策略 将名称为 framework1 的 NAC 策略分配给组策略 从组策略删除 nac-policy-name 组策略继承默认组策略的 nac-settings 值 显示每个 NAC 策略的名称和配置 更改全局 NAC 框架设置 ASA 为 NAC 框架配置提供默认设置 使用本节的说明调整这些设置, 以便遵守您的网络中有效的策略 更改无客户端身份验证设置 可以为无客户端身份验证配置 NAC 框架支持 其适用于不具备思科信任代理的主机, 履行安全状态代理角色 ASA 应用默认访问策略, 为安全状态验证发送 EAP over UDP 请求, 然后请求超时 如果没有将 ASA 配置为向访问控制服务器请求无客户端主机的策略, 它将保持无客户端主机中已经在用的默认访问策略 如果已将 ASA 配置为向访问控制服务器请求无客户端主机的策略, 它将执行此请求并且访问控制服务器将下载要由 ASA 执行的访问策略 7-9

192 更改全局 NAC 框架设置 第第 7 章 网络准入控制章 启用和禁用无客户端身份验证 无客户端身份验证在默认情况下处于启用状态 默认配置包含 eou allow clientless 配置 限制 eou 命令只适用于 NAC 框架会话 详细步骤 按照以下步骤为 NAC 框架配置启用无客户端身份验证 : 命令 步骤 1 global 切换成全局配置模式 步骤 2 eou allow {audit clientless none} 为 NAC 框架配置启用无客户端身份验证 目的 audit 使用审核服务器执行无客户端身份验证 clientless 使用思科访问控制服务器执行无客户端身份验证 none 禁用无客户端身份验证 步骤 3 hostname(config)# eou allow audit hostname(config)# [no] eou allow {audit clientless none} 显示如何配置 ASA 以使用审核服务器执行无客户端身份验证 从配置中删除命令 hostname(config)# no eou allow audit hostname(config)# 禁用审核服务器 更改用于无客户端身份验证的登录凭证 必备条件 启用无客户端身份验证时, 如果 ASA 未收到远程主机对验证请求的响应, 其将代表远程主机向访问控制服务器发送无客户端身份验证请求 该请求包括与访问控制服务器上为无客户端身份验证配置的登录凭证相匹配的登录凭证 ASA 上用于无客户端身份验证的默认用户名和密码与访问控制服务器上的默认用户名和密码匹配 ; 默认用户名和密码均为 clientless 如果在访问控制服务器上更改这些值, 则必须在 ASA 上也执行这些更改 7-10

193 第第 7 章 网络准入控制章 更改全局 NAC 框架设置 详细步骤 输入以下命令更改用于无客户端身份验证的用户名 : 命令 步骤 1 global 切换成全局配置模式 步骤 2 eou clientless username username 更改用于无客户端身份验证的用户名 username 必须与访问控制服务器上配置的用户名 匹配才能支持无客户端主机 输入 1 至 64 个 ASCII 字符, 不包括前导和尾部空格 井号 (#) 问号 (?) 引号 (") 星号 (*) 以及尖括号 (< 和 >) hostname(config)# eou clientless username sherlock hostname(config)# eou clientless password 221B-baker hostname(config)# 目的 将无客户端身份验证的用户名和密码分别改为 sherlock 和 221B-baker 您可以仅指定用户名 仅指定密码或同时指定二者 步骤 3 eou clientless password password 更改用于无客户端身份验证的密码 password 必须与访问控制服务器上配置的密码匹配才能支持无客户端主机 请输入 4 至 32 个 ASCII 字符 步骤 4 ( 可选 ) 将用户名改为其默认值 no eou clientless username hostname(config)# no eou clientless username hostname(config)# 步骤 5 ( 可选 ) no eou clientless password 将密码改为其默认值 hostname(config)# no eou clientless password hostname(config)# 7-11

194 更改全局 NAC 框架设置 第第 7 章 网络准入控制章 更改 NAC 框架会话属性 ASA 为指定 ASA 和远程主机之间通信的属性提供默认设置 这些属性指定与远程主机上的安全状态代理通信的端口号, 以及对与安全状态代理的通信进行限制的到期计数器 这些属性 默认设置以及可以输入以对其进行更改的命令如下 : 详细步骤 命令 目的 步骤 1 global 切换成全局配置模式 步骤 2 eou port port_number 默认端口号为 该命令将更改与安全状态 代理的 EAP over UDP 通信所使用的端口号 ( 在客 户端终端上 ) port_number 必须与 CTA 上配置的端口号匹配 输入 1024 至 范围内的值 hostname(config)# eou port hostname(config)# 步骤 3 ( 可选 ) no eou port 将 EAP over UDP 通信的端口号改为 将端口号改为其默认值 步骤 4 hostname(config)# no eou port hostname(config)# eou timeout retransmit seconds hostname(config)# eou timeout retransmit 6 hostname(config)# 步骤 5 ( 可选 ) no eou timeout retransmit 更改重新传输重试计时器 当 ASA 向远程主机发送 EAP over UDP 消息时, 它将等待响应 如果在 n 秒内未收到响应, 它将重新发送 EAP over UDP 消息 默认情况下, 重新传输计时器为 3 秒 seconds 是 1 至 60 范围内的一个值 将重新传输计时器改为 6 秒 将重新传输重试计时器改为其默认值 步骤 6 hostname(config)# no eou timeout retransmit hostname(config)# eou max-retry retries hostname(config)# eou max-retry 1 hostname(config)# 更改重新传输重试次数 当 ASA 向远程主机发送 EAP over UDP 消息时, 它将等待响应 如果未收到响应, 它将重新发送 EAP over UDP 消息 默认情况下, 它最多重试 3 次 retries 是 1 至 3 范围内的一个值 将 EAP over UDP 重新传输的次数限制为 1 次 7-12

195 第第 7 章 网络准入控制章 更改全局 NAC 框架设置 命令 步骤 7 ( 可选 ) no eou max-retry 目的将最大重新传输重试次数改为其默认值 步骤 8 hostname(config)# no eou max-retry hostname(config)# eou timeout hold-period seconds 更改会话重新初始化计时器 重新传输重试次数计数器与最大重试次数值匹配时,ASA 将终止与远程主机的 EAP over UDP 会话并启动保持计时器 当保持计时器等于 n 秒时,ASA 将与远程主机建立新的 EAP over UDP 会话 默认情况下, 建立新会话之前等待的最长时间为 180 秒 seconds 是 60 至 范围内的一个值 hostname(config)# eou timeout hold-period 120 hostname(config)# 步骤 9 ( 可选 ) no eou timeout hold-period 将发起新的 EAP over UDP 关联之前的等待时间改为 120 秒将会话重新初始化改为其默认值 hostname(config)# no eou timeout hold-period hostname(config)# 7-13

196 更改全局 NAC 框架设置 第第 7 章 网络准入控制章 7-14

197 第 8 章 LAN 到 LAN IPsec VPN LAN 到 LAN VPN 可连接不同地理位置的网络 当两个思科或第三方对等体具有 IPv4 内部和外部网络 (IPv4 地址位于内部和外部接口上 ) 时, ASA 支持与这些对等体的 LAN 到 LAN VPN 连接 对于使用混合 IPv4 和 IPv6 寻址或全 IPv6 寻址的 LAN 到 LAN 连接, 如果两个对等体均是 ASA, 并且如果两个内部网络均具有匹配的寻址方案 ( 均为 IPv4 或均为 IPv6), 则 ASA 支持 VPN 隧道 具体而言, 当两个对等体均是 ASA 时, 支持以下拓扑 : ASA 具有 IPv4 内部网络且外部网络是 IPv6(IPv4 地址位于内部接口上且 IPv6 地址位于外部接口上 ) ASA 具有 IPv6 内部网络且外部网络是 IPv4(IPv6 地址位于内部接口上且 IPv4 地址位于外部接口上 ) ASA 具有 IPv6 内部网络且外部网络是 IPv6(IPv6 地址位于内部和外部接口上 ) 备注 ASA 支持与思科对等体以及与符合所有相关标准的第三方对等体的 LAN 到 LAN IPsec 连接 本章介绍如何构建 LAN 到 LAN VPN 连接 其中包括以下各节 : 配置摘要 ( 第 8-2 页 ) 在多情景模式下配置站点到站点 VPN( 第 8-2 页 ) 配置接口 ( 第 8-3 页 ) 在外部接口上配置 ISAKMP 策略和启用 ISAKMP( 第 8-3 页 ) 创建 IKEv1 转换集 ( 第 8-6 页 ) 创建 IKEv2 提议 ( 第 8-6 页 ) 配置 ACL( 第 8-7 页 ) 定义隧道组 ( 第 8-8 页 ) 创建加密映射并将其应用于接口 ( 第 8-9 页 ) 8-1

198 配置摘要 第 8 章 LAN 到 LAN IPsec VPN 配置摘要 本节提供本章介绍的示例 LAN 到 LAN 配置的摘要 后面各节提供分步说明 hostname(config)# interface ethernet0/0 hostname(config-if)# ip address hostname(config-if)# nameif outside hostname(config-if)# no shutdown hostname(config)# crypto ikev1 policy 1 hostname(config-ikev1-policy)# authentication pre-share hostname(config-ikev1-policy)# encryption 3des hostname(config-ikev1-policy)# hash sha hostname(config-ikev1-policy)# group 2 hostname(config-ikev1-policy)# lifetime hostname(config)# crypto ikev1 enable outside hostname(config)# crypto ikev2 policy 1 hostname(config-ikev2-policy)# encryption 3des hostname(config-ikev2-policy)# group 2 hostname(config-ikev12-policy)# prf sha hostname(config-ikev2-policy)# lifetime hostname(config)# crypto ikev2 enable outside hostname(config)# crypto ipsec ikev1 transform-set FirstSet esp-3des esp-md5-hmac hostname(config)# crypto ipsec ikev2 ipsec-proposal secure hostname(config-ipsec-proposal)# protocol esp encryption 3des aes des hostname(config-ipsec-proposal)# protocol esp integrity sha-1 hostname(config)# access-list l2l_list extended permit ip hostname(config)# tunnel-group type ipsec-l2l hostname(config)# tunnel-group ipsec-attributes hostname(config-tunnel-ipsec)# ikev1 pre-shared-key 44kkaol59636jnfx hostname(config)# crypto map abcmap 1 match address l2l_list hostname(config)# crypto map abcmap 1 set peer hostname(config)# crypto map abcmap 1 set ikev1 transform-set FirstSet hostname(config)# crypto map abcmap 1 set ikev2 ipsec-proposal secure hostname(config)# crypto map abcmap interface outside hostname(config)# write memory 在多情景模式下配置站点到站点 VPN 步骤 1 按照以下步骤在多情景模式下允许站点到站点支持 通过执行这些步骤, 可以了解资源分配如何划分 如要在多情景模式下配置 VPN, 请配置资源类, 然后选择 VPN 许可证作为允许的资源的一部分 为资源管理配置类 提供这些配置步骤 以下是示例配置 : class ctx1 limit-resource VPN Burst Other 100 limit-resource VPN Other 1000 步骤 2 配置情景并使其成为已配置的允许 VPN 许可证的类的成员 以下是示例配置 : context context1 member ctx1 allocate-interface GigabitEthernet3/0.2 allocate-interface GigabitEthernet3/1.2 allocate-interface Management0/0 config-url disk0:/sm_s2s_ik1_ip4_no_webvpn.txt join-failover-group 1 8-2

199 第 8 章 LAN 到 LAN IPsec VPN 配置接口 步骤 3 配置连接配置文件 策略 加密映射等, 如同对使用站点到站点 VPN 的单情景 VPN 配置进行配置一样 配置接口 ASA 具有至少两个接口, 此处称为外部和内部 通常, 外部接口连接到公共互联网, 内部接口连接到专用网络且不接受公共访问 首先, 请在 ASA 上配置并启用两个接口 然后, 为接口分配名称 IP 地址和子网掩码 或者, 在安全设备上配置接口的安全级别 速度和双工操作 注意 ASA 的外部接口地址 ( 适用于 IPv4/IPv6) 不能与专用端地址空间重叠 步骤 1 步骤 2 步骤 3 步骤 4 如要进入接口配置模式, 请在全局配置模式下输入含有要配置的接口的默认名称的 interface 命令 在以下示例中, 该接口为 ethernet0 hostname(config)# interface ethernet0/0 hostname(config-if)# 如要设置接口的 IP 地址和子网掩码, 请输入 ip address 命令 在以下示例中,IP 地址为 , 子网掩码为 hostname(config-if)# ip address hostname(config-if)# 如要命名接口, 请输入 nameif 命令, 最多 48 个字符 设置此名称后, 不能对其进行更改 在以下示例中,ethernet0 接口的名称为 outside hostname(config-if)# nameif outside hostname(config-if)## 如要启用接口, 请输入 shutdown 命令的 no 版本 默认情况下, 接口处于禁用状态 hostname(config-if)# no shutdown hostname(config-if)# 步骤 5 如要保存更改, 请输入 write memory 命令 : hostname(config-if)# write memory hostname(config-if)# 步骤 6 如要配置其他接口, 请使用相同程序 在外部接口上配置 ISAKMP 策略和启用 ISAKMP ISAKMP 是使两台主机商定如何构建 IPsec 安全关联 (SA) 的协商协议 它提供用于商定 SA 属性的格式的公共框架 这包括与对等体协商 SA, 以及修改或删除 SA ISAKMP 将协商分为两个阶段 : 阶段 1 和阶段 2 阶段 1 创建第一条隧道, 其将保护随后的 ISAKMP 协商消息 阶段 2 创建保护数据的隧道 IKE 使用 ISAKMP 为要使用的 IPsec 设置 SA IKE 创建用于对对等体进行身份验证的加密密钥 8-3

200 在外部接口上配置 ISAKMP 策略和启用 ISAKMP 第 8 章 LAN 到 LAN IPsec VPN ASA 对于来自旧版思科 VPN 客户端的连接支持 IKEv1, 对于 AnyConnect VPN 客户端支持 IKEv2 要设置 ISAKMP 协商的条款, 请创建 IKE 策略, 其中包含以下内容 : IKEv1 对等体必需的身份验证类型 : 使用证书的 RSA 签名或预共享密钥 (PSK) 加密方法, 用于保护数据并确保隐私 散列消息身份验证代码 (HMAC) 方法, 用于确保发送方的身份, 以及确保消息在传输过程中未发生修改 Diffie-Hellman 群, 用于确定 encryption-key-determination 算法的强度 ASA 使用此算法派生加密密钥和散列密钥 对于 IKEv2, 使用单独的伪随机函数 (PRF) 作为派生 IKEv2 隧道加密所要求的密钥内容和散列运算的算法 对 ASA 替换加密密钥之前使用加密密钥的时间的限制 通过 IKEv1 策略, 可以为每个参数设置一个值 对于 IKEv2, 您可以为单个策略配置多个加密和身份验证类型以及多个完整性算法 ASA 将按最安全到最不安全的顺序对设置进行排序, 并使用该顺序与对等体进行协商 利用这种排序, 您可以发送单个提议来传达所有允许的转换, 而无需像对 IKEv1 一样发送每个允许的组合 以下各节提供在接口上创建 IKEv1 和 IKEv2 策略并将其启用的操作步骤 : 为 IKEv1 连接配置 ISAKMP 策略 ( 第 8-4 页 ) 为 IKEv2 连接配置 ISAKMP 策略 ( 第 8-5 页 ) 为 IKEv1 连接配置 ISAKMP 策略 如要为 IKEv1 连接配置 ISAKMP 策略, 请使用 crypto ikev1 policy priority 命令进入 IKEv1 策略配置模式, 在此模式下可以配置 IKEv1 参数 步骤 1 进入 IPsec IKEv1 策略配置模式 例如 : hostname(config)# crypto ikev1 policy 1 hostname(config-ikev1-policy)# 步骤 2 设置身份验证方法 以下示例配置预共享密钥 : hostname(config-ikev1-policy)# authentication pre-share hostname(config-ikev1-policy)# 步骤 3 步骤 4 设置加密方法 以下示例配置 3DES: hostname(config-ikev1-policy)# encryption 3des hostname(config-ikev1-policy)# 设置 HMAC 方法 以下示例配置 SHA-1: hostname(config-ikev1-policy)# hash sha hostname(config-ikev1-policy)# 步骤 5 设置 Diffie-Hellman 群 以下示例配置群 2: hostname(config-ikev1-policy)# group 2 hostname(config-ikev1-policy)# 步骤 6 设置加密密钥寿命 以下示例配置 43,200 秒 (12 小时 ): hostname(config-ikev1-policy)# lifetime hostname(config-ikev1-policy)# 8-4

201 第 8 章 LAN 到 LAN IPsec VPN 在外部接口上配置 ISAKMP 策略和启用 ISAKMP 步骤 7 在单情景或多情景模式下于名为 outside 的接口上启用 IKEv1: hostname(config)# crypto ikev1 enable outside hostname(config)# 步骤 8 如要保存更改, 请输入 write memory 命令 : hostname(config)# write memory hostname(config)# 为 IKEv2 连接配置 ISAKMP 策略 如要为 IKEv2 连接配置 ISAKMP 策略, 请使用 crypto ikev2 policy priority 命令进入 IKEv2 策略配置模式, 在此模式下可以配置 IKEv2 参数 步骤 1 进入 IPsec IKEv2 策略配置模式 例如 : hostname(config)# crypto ikev2 policy 1 hostname(config-ikev2-policy)# 步骤 2 设置加密方法 以下示例配置 3DES: hostname(config-ikev2-policy)# encryption 3des hostname(config-ikev2-policy)# 步骤 3 设置 Diffie-Hellman 群 以下示例配置群 2: hostname(config-ikev2-policy)# group 2 hostname(config-ikev2-policy)# 步骤 4 设置用作派生 IKEv2 隧道加密所要求的密钥内容和散列运算的算法的伪随机函数 (PRF) 以下示例配置 SHA-1(HMAC 变体 ): hostname(config-ikev12-policy)# prf sha hostname(config-ikev2-policy)# 步骤 5 设置加密密钥寿命 以下示例配置 43,200 秒 (12 小时 ): hostname(config-ikev2-policy)# lifetime seconds hostname(config-ikev2-policy)# 步骤 6 在名为 outside 的接口上启用 IKEv2: hostname(config)# crypto ikev2 enable outside hostname(config)# 步骤 7 如要保存更改, 请输入 write memory 命令 : hostname(config)# write memory hostname(config)# 8-5

202 创建 IKEv1 转换集 第 8 章 LAN 到 LAN IPsec VPN 创建 IKEv1 转换集 IKEv1 转换集由加密方法和身份验证方法组成 在与 ISAKMP 进行 IPsec 安全关联协商期间, 对等体同意使用特定转换集来保护特定数据流 转换集对于两个对等体必须相同 转换集保护关联的加密映射条目中指定的 ACL 的数据流 您可以在 ASA 配置中创建转换集, 然后在加密映射条目或动态加密映射条目中指定最多 11 个转换集 下表列出了有效的加密和身份验证方法 表 8-1 有效的加密和身份验证方法 有效加密方法有效身份验证方法 esp-des esp-md5-hmac esp-3des( 默认 ) esp-sha-hmac( 默认 ) esp-aes(128 位加密 ) esp-aes-192 esp-aes-256 esp-null 在通过不可信网络 ( 例如公共互联网 ) 连接的两个 ASA 之间, 通常采用隧道模式实施 IPsec 隧道模式是默认模式, 无需配置 如要配置转换集, 请在单情景或多情景模式下执行以下站点到站点任务 : 步骤 1 在全局配置模式下, 输入 crypto ipsec ikev1 transform-set 命令 以下示例使用名称 FirstSet esp-3des 加密和 esp-md5-hmac 身份验证配置转换集 语法如下 : crypto ipsec ikev1 transform-set transform-set-name encryption-method authentication-method hostname(config)# crypto ipsec transform-set FirstSet esp-3des esp-md5-hmac hostname(config)# 步骤 2 保存更改 hostname(config)# write memory hostname(config)# 创建 IKEv2 提议 对于 IKEv2, 您可以为单个策略配置多个加密和身份验证类型以及多个完整性算法 ASA 将按最安全到最不安全的顺序对设置进行排序, 并使用该顺序与对等体进行协商 利用这种排序, 您可以发送单个提议来传达所有允许的转换, 而无需像对 IKEv1 一样发送每个允许的组合 下表列出了有效的 IKEv2 加密和身份验证方法 8-6

203 第 8 章 LAN 到 LAN IPsec VPN 配置 ACL 表 8-2 有效的 IKEv2 加密和完整性方法 有效加密方法有效完整性方法 des sha( 默认 ) 3des( 默认 ) md5 aes aes-192 aes-256 如要配置 IKEv2 提议, 请在单情景或多情景模式下执行以下任务 : 步骤 1 在全局配置模式下, 使用 crypto ipsec ikev2 ipsec-proposal 命令进入 ipsec 提议配置模式, 在此模式下可以为提议指定多个加密和完整性类型 在以下示例中,secure 是提议的名称 : hostname(config)# crypto ipsec ikev2 ipsec-proposal secure hostname(config-ipsec-proposal)# 步骤 2 然后, 输入协议和加密类型 ESP 是唯一支持的协议 例如 : hostname(config-ipsec-proposal)# protocol esp encryption 3des aes des hostname(config-ipsec-proposal)# 步骤 3 输入完整性类型 例如 : hostname(config-ipsec-proposal)# protocol esp integrity sha-1 hostname(config-ipsec-proposal)# 步骤 4 保存更改 配置 ACL ASA 使用访问控制列表来控制网络访问 默认情况下, 自适应安全设备拒绝所有流量 您需要配置允许流量的 ACL 有关详细信息, 请参阅一般操作配置指南中的 有关访问控制列表的信息 为此 LAN 到 LAN VPN 控制连接配置的 ACL 基于源 IP 地址和转换的目标 IP 地址 配置在连接两端相互镜像的 ACL VPN 流量的 ACL 使用转换的地址 步骤 1 输入 access-list extended 命令 以下示例配置名为 l2l_list 的 ACL, 允许来自 网络中 IP 地址的流量传送到 网络 语法为 access-list listname extended permit ip source-ipaddress source-netmask destination-ipaddress destination-netmask hostname(config)# access-list l2l_list extended permit ip hostname(config)# 8-7

204 定义隧道组 第 8 章 LAN 到 LAN IPsec VPN 步骤 2 在连接的另一端为 ASA 配置一个 ACL, 对该 ACL 进行镜像 在两个不同的加密 ACL 中定义并附加到同一个加密映射中的子网不得重叠 在以下示例中, 对等体的提示符为 hostname2 hostname2(config)# access-list l2l_list extended permit ip hostname(config)# 备注 有关使用 VPN 过滤器配置 ACL 的详细信息, 请参阅为远程访问指定 VLAN 或对组策略应用统一访问控制规则 ( 第 4-41 页 ) 定义隧道组 隧道组是包含隧道连接策略的一组记录 您可以配置隧道组来标识 AAA 服务器, 指定连接参数, 以及定义默认组策略 ASA 在内部存储隧道组 ASA 中有两个默认隧道组 :DefaultRAGroup 和 DefaultL2Lgroup, 前者是默认的 IPsec 远程访问隧道组, 后者是默认的 IPsec LAN 到 LAN 隧道组 可以修改这些隧道组, 但不能将其删除 IKE 版本 1 和 2 之间的主要差异在于其允许的身份验证方法 IKEv1 在 VPN 两端仅允许一种类型的身份验证 ( 即, 预共享密钥或证书 ) 但是,IKEv2 允许分别使用本地和远程身份验证 CLI 配置不对称身份验证方法 ( 即, 对发起方使用预共享密钥身份验证, 但对响应方使用证书身份验证 ) 因此, 通过 IKEv2 可使用不对称身份验证, 其中一端对一个凭证进行身份验证, 另一端使用其他凭证 ( 预共享密钥或证书 ) 您也可以根据环境创建一个或多个新隧道组 如果在隧道协商过程中没有标识特定隧道组,ASA 将会使用这两个隧道组来配置远程访问隧道组和 LAN 到 LAN 隧道组的默认隧道参数 要建立基本 LAN 到 LAN 连接, 必须为隧道组设置两个属性 : 将连接类型设置为 IPsec LAN 到 LAN 配置 IP 地址的身份验证方法 ( 即用于 IKEv1 和 IKEv2 的预共享密钥 ) 步骤 1 如要将连接类型设置为 IPsec LAN 到 LAN, 请输入 tunnel-group 命令 语法为 tunnel-group name type type, 其中 name 是分配给隧道组的名称,type 是隧道的类型 在 CLI 中输入的隧道类型为 : remote-access(ipsec SSL 和无客户端 SSL 远程访问 ) ipsec-l2l(ipsec LAN 到 LAN) 在以下示例中, 隧道组的名称是 LAN 到 LAN 对等体的 IP 地址 hostname(config)# tunnel-group type ipsec-l2l hostname(config)# 注意 仅当隧道身份验证方法为数字证书和 / 或对等体配置为使用积极模式时, 才能使用名称非 IP 地址的 LAN 到 LAN 隧道组 步骤 2 如要将身份验证方法设置为使用预共享密钥, 请进入 ipsec-attributes 模式, 然后输入 ikev1 pre-shared-key 命令以创建预共享密钥 需要在此 LAN 到 LAN 连接的两个 ASA 上均使用同一预共享密钥 密钥是 1 至 128 个字符的字母数字字符串 8-8

205 第 8 章 LAN 到 LAN IPsec VPN 创建加密映射并将其应用于接口 在以下示例中,IKEv1 预共享密钥是 44kkaol59636jnfx: hostname(config)# tunnel-group ipsec-attributes hostname(config-tunnel-ipsec)# ikev1-pre-shared-key 44kkaol59636jnfx 步骤 3 保存更改 hostname(config)# write memory hostname(config)# 如要验证隧道是否启动并正常运行, 请使用 show vpn-sessiondb summary show vpn-sessiondb detail l2l 或 show crypto ipsec sa 命令 创建加密映射并将其应用于接口 加密映射条目组合 IPsec 安全关联的各种元素, 包括以下元素 : IPsec 应保护的流量 ( 在 ACL 中定义 ) 将 IPsec 保护的流量发送到的位置 ( 通过标识对等体 ) 对此流量应用的 IPsec 安全性 ( 由转换集指定 ) IPsec 流量的本地地址 ( 通过对接口应用加密映射进行标识 ) 为使 IPsec 成功, 两个对等体均必须包含具有兼容配置的加密映射条目 为使两个加密映射条目兼容, 它们必须至少符合以下条件 : 加密映射条目必须包含兼容的加密 ACL( 例如, 镜像 ACL) 如果对应的对等体使用动态加密映射, 则对等体的加密 ACL 必须 允许 ASA 加密 ACL 中的条目 加密映射条目必须各自标识另一个对等体 ( 除非对应的对等体使用动态加密映射 ) 加密映射条目必须至少有一个共同的转换集 如果为给定接口创建多个加密映射条目, 请使用每个条目的序号 (seq-num) 将其排名 :seq-num 越低, 优先级越高 在设置有加密映射的接口上,ASA 先按照优先级较高的映射条目评估流量 如果存在以下任意情况, 请为给定接口创建多个加密映射条目 : 不同对等体处理不同数据流 您想要将不同的 IPSec 安全应用于不同类型的流量 ( 面向相同或不同的对等体 ), 例如您希望对一组子网之间的流量进行身份验证, 而对另一组子网之间的流量同时进行身份验证和加密 在此情况下, 请在两个单独的 ACL 中定义不同类型的流量, 并为每个加密 ACL 创建单独的加密映射条目 如要在全局配置模式下创建加密映射并将其应用于外部接口, 请在单情景或多情景模式下执行以下步骤 : 步骤 1 如要将 ACL 分配到加密映射条目, 请输入 crypto map match address 命令 语法为 crypto map map-name seq-num match address aclname 在以下示例中, 映射名称为 abcmap, 序号为 1,ACL 名称为 l2l_list hostname(config)# crypto map abcmap 1 match address l2l_list hostname(config)# 8-9

206 创建加密映射并将其应用于接口 第 8 章 LAN 到 LAN IPsec VPN 步骤 2 步骤 3 如要标识 IPsec 连接的对等体, 请输入 crypto map set peer 命令 语法为 crypto map map-name seq-num set peer {ip_address1 hostname1}[... ip_address10 hostname10] 在以下示例中, 对等体名称为 hostname(config)# crypto map abcmap 1 set peer hostname(config)# 如要为加密映射条目指定 IKEv1 转换集, 请输入 crypto map ikev1 set transform-set 命令 语法为 crypto map map-name seq-num ikev1 set transform-set transform-set-name 在以下示例中, 转换集名称为 FirstSet hostname(config)# crypto map abcmap 1 set transform-set FirstSet hostname(config)# 步骤 4 如要为加密映射条目指定 IKEv2 提议, 请输入 crypto map ikev2 set ipsec-proposal 命令 : 语法为 crypto map map-name seq-num set ikev2 ipsec-proposal proposal-name 在以下示例中, 提议名称为 secure 通过 crypto map 命令, 可以为单个映射索引指定多个 IPsec 提议 在该情况下, 多个提议会在协商过程中传输到 IKEv2 对等体, 并且提议的顺序由管理员在加密映射条目排序时确定 注意如果 IPsec 提议中存在组合模式 (AES-GCM/GMAC) 和普通模式 ( 所有其他类型 ) 算法, 则无法将单个建议发送到对等体 在此情况下必须具有至少两个提议, 一个用于组合模式算法, 另一个用于普通模式算法 hostname(config)# crypto map abcmap 1 set ikev2 ipsec-proposal secure hostname(config)# 将加密映射应用于接口 您必须对 IPsec 流量经过的每个接口应用加密映射集 ASA 在所有接口上都支持 IPsec 对接口应用加密映射集将命令 ASA 按照该加密映射集评估所有接口流量, 并在连接或安全关联协商期间使用指定的策略 将加密映射绑定到接口还会初始化运行时数据结构, 例如安全关联数据库和安全策略数据库 今后以任何方式修改加密映射时,ASA 都会自动将更改应用于运行配置 它将断开任何现有连接, 并在应用新的加密映射后重新建立这些连接 如要将已配置的加密映射应用于外部接口, 请执行以下步骤 : 步骤 1 输入 crypto map interface 命令 语法为 crypto map map-name interface interface-name hostname(config)# crypto map abcmap interface outside hostname(config)# 步骤 2 保存更改 hostname(config)# write memory hostname(config)# 8-10

207 第 9 章 AnyConnect VPN 客户端连接 本节介绍如何配置 AnyConnect VPN 客户端连接, 涵盖了以下主题 : 有关 AnyConnect VPN 客户端连接的信息 ( 第 9-1 页 ) AnyConnect 连接的许可要求 ( 第 9-2 页 ) 规定和限制 ( 第 9-3 页 ) 配置 AnyConnect 连接 ( 第 9-3 页 ) 配置高级 AnyConnect SSL 功能 ( 第 9-12 页 ) 启用 AnyConnect 连接的配置示例 ( 第 9-18 页 ) AnyConnect 连接的功能历史记录 ( 第 9-18 页 ) 有关 AnyConnect VPN 客户端连接的信息 Cisco AnyConnect 安全移动客户端为远程用户提供了与 ASA 的安全的 SSL 和 IPsec/IKEv2 连接 在先前未安装客户端的情况下, 远程用户可以在他们的浏览器中输入配置为接受 SSL 或 IPsec/IKEv2 VPN 连接的接口的 IP 地址 除非 ASA 已配置为将 请求重定向至 否则用户必须以 的形式输入 URL 输入 URL 后, 浏览器连接至该接口, 并显示登录屏幕 如果用户满足登录和身份验证要求, 并且 ASA 将用户确定为需要客户端, 则它会下载与远程计算机的操作系统匹配的客户端 下载后, 客户端进行安装并自行配置, 建立安全的 SSL 或 IPsec/IKEv2 连接, 连接终止时, 客户端会保留或自行卸载 ( 取决于配置 ) 如果先前已安装客户端, 当用户进行身份验证时,ASA 将检查客户端的修订版本并在必要情况下升级客户端 客户端与 ASA 协商 SSL VPN 连接时, 会使用传输层安全 (TLS) 和 ( 可选 ) 数据报传输层安全 (DTLS) 进行连接 DTLS 可避免与某些 SSL 连接关联的延迟和带宽问题, 并可提高对于数据包延迟敏感的实时应用的性能 AnyConnect 客户端可从 ASA 下载, 也可以由系统管理员在远程 PC 上手动安装 有关手动安装客户端的详细信息, 请参阅 Cisco AnyConnect VPN 客户端管理员指南 ASA 基于建立连接的用户的组策略或用户名属性下载客户端 您可以将 ASA 配置为自动下载客户端, 也可以将其配置为提示远程用户是否下载客户端 对于后一种情况, 如果用户不响应, 您可以将 ASA 配置为在超时时段过后下载客户端, 或显示登录页面 9-1

208 AnyConnect 连接的许可要求 第 9 章 AnyConnect VPN 客户端连接 AnyConnect 连接的许可要求 下表显示此功能的许可要求 : 备注 此功能不适用于无负载加密型号 VPN 许可证需要 AnyConnect Plus 或 Apex 许可证, 可单独购买 购买 AnyConnect 许可证时, 请参阅以下最大值 所有类型的最大组合 VPN 会话数量不能超过此表中所示的最大会话数 建模 许可证要求 ASA 5506-X 50 个会话 5506H-X 5506W-X 不支持共享许可证 ASA 5508-X 100 个会话 不支持共享许可证 ASA 5512-X 250 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASA 5515-X 250 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASA 5516-X 300 个会话 不支持共享许可证 ASA 5525-X 750 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASA 5545-X 2500 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASA 5555-X 5000 个会话 ASA 5585-X, 带 SSP-10 ASA 5585-X, 带 SSP-20 SSP-40 和 SSP-60 ASASM 10,000 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, , 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 10,000 个会话 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, ,000 ASAv5 ASAv10 ASAv30 可选共享许可证 : 参与者或服务器 对于服务器许可证, 以 500 为增量, 会话数量为 ,000 个 ; 以 1000 为增量, 会话数量为 50, , 个会话 250 个会话 750 个会话 9-2

209 第 9 章 AnyConnect VPN 客户端连接 规定和限制 如果您启动无客户端 SSL VPN 会话, 然后从门户启动 AnyConnect 客户端会话, 总计使用的是 1 个会话 但是, 如果先启动 AnyConnect 客户端 ( 例如从独立客户端启动 ), 然后登录无客户端 SSL VPN 门户, 则使用的是 2 个会话 规定和限制 本节包括此功能的规定和限制 远程 PC 系统要求 有关对运行 AnyConnect 安全移动客户端的终端计算机的要求, 请参阅您将使用 ASA 部署的 AnyConnect 客户端版本的版本说明 远程 HTTPS 证书限制 ASA 不会验证远程 HTTPS 证书 配置 AnyConnect 连接 本节介绍将 ASA 配置为接受 AnyConnect VPN 客户端连接的必备条件 限制和详细任务 将 ASA 配置为以 Web 方式部署客户端 本节介绍将 ASA 配置为以 Web 方式部署 AnyConnect 客户端的步骤 必备条件使用 TFTP 或其他方法将客户端映像包复制到 ASA 步骤 1 将闪存上的文件标识为 AnyConnect 客户端包文件 ASA 在缓存中展开文件, 以便下载至远程 PC 如果您有多个客户端, 请使用 order 参数给客户端映像分配顺序 ASA 以您指定的顺序下载每个客户端的各个部分, 直到其与远程 PC 的操作系统相匹配 因此, 请给最常见的操作系统使用的映像分配最小的数值 anyconnect image filename order hostname(config-webvpn)#anyconnect image anyconnect-win k9.pkg 1 hostname(config-webvpn)#anyconnect image anyconnect-macosx-i k9.pkg 2 hostname(config-webvpn)#anyconnect image anyconnect-linux k9.pkg 3 备注 使用 anyconnect image xyz 命令配置 AnyConnect 映像后, 必须发出 anyconnect enable 命令 如果没有启用 anyconnect enable 命令,AnyConnect 不会执行预期操作,show webvpn anyconnect 会将 SSL VPN 客户端视为未启用, 而不是列出已安装的 AnyConnect 包 9-3

210 配置 AnyConnect 连接 第 9 章 AnyConnect VPN 客户端连接 步骤 2 在接口上启用 SSL, 以便进行无客户端或 AnyConnect SSL 连接 enable interface hostname(config)# webvpn hostname(config-webvpn)# enable outside 步骤 3 步骤 4 在没有发出此命令的情况下,AnyConnect 不会执行预期操作, 而且 show webvpn anyconnect 命令会返回 SSL VPN is not enabled, 而不是列出已安装的 AnyConnect 包 anyconnect enable ( 可选 ) 创建地址池 您可以使用其他地址分配方法, 如 DHCP 和 / 或用户分配的寻址 ip local pool poolname startaddr-endaddr mask mask hostname(config)# ip local pool vpn_users mask 步骤 5 将地址池分配至隧道组 address-pool poolname hostname(config)# tunnel-group telecommuters general-attributes hostname(config-tunnel-general)# address-pool vpn_users 步骤 6 将默认组策略分配至隧道组 default-group-policy name hostname(config-tunnel-general)# default-group-policy sales 步骤 7 启用在无客户端门户和 AnyConnect GUI 登录页面上显示隧道组列表 该别名列表由 group-alias name enable 命令定义 group-alias name enable hostname(config)# tunnel-group telecommuters webvpn-attributes hostname(config-tunnel-webvpn)# group-alias sales_department enable 步骤 8 将 AnyConnect 客户端指定为组或用户的允许的 VPN 隧道协议 tunnel-group-list enable hostname(config)# webvpn hostname(config-webvpn)# tunnel-group-list enable 步骤 9 将 SSL 指定为组或用户的允许的 VPN 隧道协议 您还可以指定其他协议 有关详细信息, 请参阅 命令参考 中的 vpn-tunnel-protocol 命令 vpn-tunnel-protocol hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# vpn-tunnel-protocol 9-4

211 第 9 章 AnyConnect VPN 客户端连接 配置 AnyConnect 连接 后续操作 有关将用户分配至组策略的详细信息, 请参阅第 6 章 配置连接配置文件 组策略和用户 启用永久性客户端安装 启用永久性客户端安装将会禁用客户端的自动卸载功能 客户端仍安装在远程计算机上以进行后续连接, 从而缩短远程用户的连接时间 如要为特定组或用户启用永久性客户端安装, 可以在组策略或用户名 webvpn 模式下, 使用 anyconnect keep-installer 命令 : anyconnect keep-installer installer 默认设置为启用客户端的永久性安装 客户端在会话结束时仍安装在远程计算机上 以下示例将现有组策略 sales 配置为在会话结束时从远程计算机上删除客户端 hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-policy)# anyconnect keep-installer installed none 配置 DTLS 数据报传输层安全 (DTLS) 允许 AnyConnect 客户端建立 SSL VPN 连接, 以便使用两个并行隧道 - SSL 隧道和 DTLS 隧道 使用 DTLS 可避免与 SSL 连接关联的延迟和带宽问题, 并且提高对于数据包延迟敏感的实时应用的性能 默认情况下, 在接口上启用 SSL VPN 访问时, 则会启用 DTLS 如果禁用 DTLS, 则 SSL VPN 连接只会与 SSL VPN 隧道连接 备注 为使 DTLS 能够回退至 TLS 连接, 必须启用对等体存活检测 (DPD) 如果没有启用 DPD, 则当 DTLS 连接遇到问题时, 连接会终止而不是回退至 TLS 有关启用 DPD 的详细信息, 请参阅启用和调整对等体存活检测 ( 第 9-13 页 ) 您可以在 webvpn 配置模式下使用 enable 命令 tls-only 选项, 为所有 AnyConnect 客户端用户禁用 DTLS: enable <interface> tls-only 例如 : hostname(config-webvpn)# enable outside tls-only 默认情况下, 在组策略 webvpn 或用户名 webvpn 配置模式下, 使用 anyconnect ssl dtls 命令为特定组或用户启用 DTLS: [no] anyconnect ssl dtls {enable interface none} 如果需要禁用 DTLS, 请使用该命令的 no 形式 例如 : hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# no anyconnect ssl dtls none 9-5

212 配置 AnyConnect 连接 第 9 章 AnyConnect VPN 客户端连接 提示远程用户 您可以在组策略 webvpn 或用户名 webvpn 配置模式下, 使用 anyconnect ask 命令来允许 ASA 提示远程 SSL VPN 客户端的用户下载客户端 [no] anyconnect ask {none enable [default {webvpn } timeout value]} anyconnect enable 提示远程用户下载客户端或转至无客户端门户页面, 并且无限期等待用户响应 anyconnect ask enable default 立即下载客户端 anyconnect ask enable default webvpn 立即转至门户页面 anyconnect ask enable default timeout value 提示远程用户下载客户端或转至无客户端门户页面, 并且在采取默认操作 ( 下载客户端 ) 前等待长度为 value 的一段时间 anyconnect ask enable default clientless timeout value 提示远程用户下载客户端或转至无客户端门户页面, 并且在采取默认操作 ( 显示无客户端门户页面 ) 前等待长度为 value 的一段时间 下图显示已配置 default anyconnect timeout value 或 default webvpn timeout value 时, 向远程用户显示的提示 : 图 9-1 向远程用户显示提示, 提示其下载 SSL VPN 客户端 以下示例将 ASA 配置为提示用户下载客户端或转至无客户端门户页面, 并且在下载客户端前等待 10 秒以便用户作出响应 : hostname(config-group-webvpn)# anyconnect ask enable default anyconnect timeout 10 启用 AnyConnect 客户端配置文件下载 您可以在 AnyConnect 配置文件中启用 Cisco AnyConnect 安全移动客户端功能, 这些配置文件是 XML 文件, 包含核心客户端及其 VPN 功能以及可选客户端模块的配置设置 ASA 在 AnyConnect 的安装和更新期间部署配置文件 用户无法管理或修改配置文件 ASDM 或 ISE 中的配置文件编辑器 您可以使用 AnyConnect 配置文件编辑器对配置文件进行配置, 该编辑器是一款从 ASDM 或 ISE 启动的基于 GUI 的便捷配置工具 2.5 版及更高版本的适用于 Windows 的 AnyConnect 软件包提供了该编辑器, 在您于选定的头端设备上加载 AnyConnect 包并将其指定为 AnyConnect 客户端映像时, 该编辑器会激活 独立的配置文件编辑器我们还提供了该配置文件编辑器的适用于 Windows 的独立版本, 您可以将其用作与 ASDM 或 ISE 集成的配置文件编辑器的备选编辑器 如果您要预先部署客户端, 可以使用独立配置文件编辑器为您使用软件管理系统部署至计算机的 VPN 服务和其他模块创建配置文件 有关使用配置文件编辑器的详细信息, 请参阅 Cisco AnyConnect 安全移动客户端管理员指南 9-6

213 第 9 章 AnyConnect VPN 客户端连接 配置 AnyConnect 连接 备注 AnyConnect 客户端协议默认设置为 SSL 如要启用 IPsec IKEv2, 您必须在 ASA 上配置 IKEv2 设置, 并且还要在客户端配置文件中将 IKEv2 配置为主协议 必须将 IKEv2enabled 配置文件部署至终端计算机, 否则客户端会尝试使用 SSL 进行连接 有关详细信息, 请参阅 Cisco AnyConnect 安全移动客户端管理员指南 步骤 1 步骤 2 步骤 3 使用 ASDM/ISE 中的配置文件编辑器或独立配置文件编辑器来创建配置文件 有关详细信息, 请参阅 Cisco AnyConnect 安全移动客户端管理员指南 使用 TFTP 或其他方法将配置文件加载至 ASA 上的闪存 在 webvpn 配置模式下, 使用 anyconnect profiles 命令将文件确定为要加载至缓存的客户端配置文件 以下示例将文件 sales_hosts.xml 和 engineering_hosts.xml 指定为配置文件 : asa1(config-webvpn)# anyconnect profiles sales disk0:/sales_hosts.xml asa1(config-webvpn)# anyconnect profiles engineering disk0:/engineering_hosts.xml 此时, 这些配置文件可供组策略使用 您可以使用 dir cache:stc/profiles 命令查看已在缓存中加载的配置文件 : hostname(config-webvpn)# dir cache:/stc/profiles Directory of cache:stc/profiles/ :54:41 Nov engineering.xml :54:29 Nov sales.xml bytes total ( bytes free) hostname(config-webvpn)# 步骤 4 进入组策略 webvpn 配置模式, 并使用 anyconnect profiles 命令为组策略指定客户端配置文件 : 您可以输入后面带有问号 (?) 的 anyconnect profiles value 命令, 以便查看可用的配置文件 例如 : asa1(config-group-webvpn)# anyconnect profiles value? config-group-webvpn mode commands/options: Available configured profile packages: engineering sales 下一示例将组策略配置为使用客户端配置文件类型为 vpn 的配置文件 sales: asa1(config-group-webvpn)# anyconnect profiles value sales type vpn asa1(config-group-webvpn)# 启用 AnyConnect 客户端延迟升级 延迟升级允许 AnyConnect 用户延迟客户端升级的下载 客户端更新可用时,AnyConnect 打开一个对话框, 询问用户是想要进行更新, 还是想要延迟升级 通过将自定义属性类型和命名值添加至 ASA, 然后在组策略中引用和配置这些属性, 可以启用延迟升级 9-7

214 配置 AnyConnect 连接 第 9 章 AnyConnect VPN 客户端连接 以下自定义属性支持延迟升级 : 表 9-1 适用于延迟升级的自定义属性 自定义属性类型 DeferredUpdateAll owed DeferredUpdateMin imumversion DeferredUpdateDis misstimeout DeferredUpdateDis missresponse 有效 价值观 默认值 备注 true false False True 将启用延迟更新 如果延期更新被禁用 (false), 则会忽略以下设置 x.y.z 必须安装可以延迟更新的最低 AnyConnect 版本 最低版本检查适用于头端上启用的所有模块 如果任何已启用模块 ( 包括 VPN ) 未安装或未达到最低版本, 则连接不符合延迟更新 如果该属性未指定, 则会显示延期提示 ( 或自动取消 ), 无论终端上安装了何种版本 ( 秒 ) defer 更新 无 ( 已禁用 ) 更新 延期更新提示在被自动取消之前显示的秒数 此属性仅当会显示延期更新提示 ( 首先会评估最低版本属性 ) 时才适用 如果缺少此属性, 则自动取消功能被禁用, 并显示一个对话框 ( 如果需要 ), 直到用户响应 若将此属性设置为零, 则允许根据以下条件进行自动延期或强制更新 : DeferredUpdateMinimumVersion 的安装版本和值 DeferredUpdateDismissResponse 的值 DeferredUpdateDismissTimeout 发生时要采取的操作 步骤 1 在 webvpn 配置模式下, 使用 anyconnnect-custom-attr 命令创建自定义属性类型 : [no] anyconnect-custom-attr attr-type [description description] 以下示例显示如何添加自定义属性类型 DeferredUpdateAllowed 和 DeferredUpdateDismissTimeout: hostame(config)# anyconnect-custom-attr DeferredUpdateAllowed description Indicates if the deferred update feature is enabled or not hostame(config)# anyconnect-custom-attr DeferredUpdateDismissTimout 步骤 2 在全局配置模式下, 使用 anyconnect-custom-data 命令为自定义属性添加命名值 : [no] anyconnect-custom-data attr-type attr-name attr-value 以下示例显示如何为自定义属性类型 DeferredUpdateDismissTimout 和启用的 DeferredUpdateAllowed 添加命名值 : hostname(config)# anyconnect-custom-data DeferredUpdateDismissTimout def-timeout 150 hostname(config)# anyconnect-custom-data DeferredUpdateAllowed def-allowed true 步骤 3 使用 anyconnect-custom 命令在组策略中添加或删除自定义属性命名值 : anyconnect-custom attr-type value attr-name anyconnect-custom attr-type none no anyconnect-custom attr-type 9-8

215 第 9 章 AnyConnect VPN 客户端连接 配置 AnyConnect 连接 以下示例显示如何为名为 sales 的组策略启用延迟更新, 并将超时时间设置为 150 秒 : hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-policy)# anyconnect-custom DeferredUpdateAllowed value def-allowed hostname(config-group-policy)# anyconnect-custom DeferredUpdateDismissTimeout value def-timout 启用其他 AnyConnect 客户端功能 如要最大限度缩短下载时间, 客户端可以仅请求下载 ( 从 ASA 或 ISE) 其需要的核心模块 当附加功能可供 AnyConnect 客户端使用时, 您需要更新远程客户端, 以便其能够使用这些功能 如要启用新功能, 您必须在组策略 webvpn 或用户名 webvpn 配置模式下, 使用 anyconnect modules 命令指定新模块的名称 : [no] anyconnect modules {none value string} 使用逗号分隔多个字符串 有关要为每个客户端功能输入的值列表, 请参阅 Cisco AnyConnect VPN 客户端的版本说明 启用登录前开始 登录前开始 (SBL) 支持适用于安装在 Windows PC 上的 AnyConnect 客户端的登录脚本 密码缓存 驱动器映射等 对于 SBL, 您必须允许 ASA 下载可为 AnyConnect 客户端启用图形标识和身份验证 (GINA) 的模块 以下程序显示如何启用 SBL: 步骤 1 步骤 2 步骤 3 在组策略 webvpn 或用户名 webvpn 配置模式下, 使用 anyconnect modules vpngina 命令允许 ASA 将用于 VPN 连接的 GINA 模块下载至特定组或用户 在以下示例中, 用户先进入组策略 telecommuters 的组策略属性模式, 然后进入组策略的 webvpn 配置模式, 最后指定字符串 vpngina: hostname(config)# group-policy telecommuters attributes hostname(config-group-policy)# webvpn hostame(config-group-webvpn)#anyconnect modules value vpngina 检索客户端配置文件 (AnyConnectProfile.tmpl) 的副本 编辑配置文件, 以便指定启用 SBL 以下示例显示配置文件 (AnyConnectProfile.tmpl) 中适用于 Windows 的相关部分 : <Configuration> <ClientInitialization> <UseStartBeforeLogon>false</UseStartBeforeLogon> </ClientInitialization> <UseStartBeforeLogon> 标记确定客户端是否使用 SBL 如要打开 SBL, 请用 true 替换 false 以下示例显示打开 SBL 的标记 : <ClientInitialization> <UseStartBeforeLogon>true</UseStartBeforeLogon> </ClientInitialization> 9-9

216 配置 AnyConnect 连接 第 9 章 AnyConnect VPN 客户端连接 步骤 4 在 webvpn 配置模式下, 使用 profile 命令保存对 AnyConnectProfile.tmpl 的更改, 并为 ASA 上的组或用户更新配置文件 例如 : asa1(config-webvpn)#anyconnect profiles sales disk0:/sales_hosts.xml 转换 AnyConnect 用户消息的语言 了解语言转换 创建转换表 ASA 提供语言转换功能, 此功能适用于向发起基于浏览器的无客户端 SSL VPN 连接的用户所显示的门户和屏幕, 以及向 Cisco AnyConnect VPN 客户端用户所显示的界面 本节介绍如何将 ASA 配置为转换这些用户消息, 其中包括以下部分 : 了解语言转换 ( 第 9-10 页 ) 创建转换表 ( 第 9-10 页 ) 向远程用户显示的功能区域及其消息归入转换域 在 Cisco AnyConnect VPN 客户端的用户界面上显示的所有消息都位于 AnyConnect 域中 ASA 的软件映像包中含有用于 AnyConnect 域的转换表模板 您可以导出此模板, 这会在您提供的 URL 创建此模板的一个 XML 文件 此文件中的消息字段为空 您可以编辑消息并导入模板, 创建位于闪存中的新转换表对象 您还可以导出现有转换表 创建的 XML 文件将显示您之前编辑的消息 重新导入具有相同语言名称的此 XML 文件将创建一个新版的转换表对象, 同时覆盖以前的消息 对 AnyConnect 域的转换表的更改会立即向 AnyConnect 客户端用户显示 以下程序描述如何创建 AnyConnect 域的转换表 : 步骤 1 在特权 EXEC 模式下, 使用 export webvpn translation-table 命令将转换表模板导出到计算机中 在以下示例中,show webvpn translation-table 命令显示可用的转换表模板和转换表 hostname# show import webvpn translation-table Translation Tables' Templates: customization AnyConnect CSD PortForwarder url-list webvpn Citrix-plugin RPC-plugin Telnet-SSH-plugin VNC-plugin Translation Tables: 接着, 用户可以导出 AnyConnect 转换域的转换表 创建的 XML 文件的文件名为 client, 该文件包含有空白的消息字段 : hostname# export webvpn translation-table AnyConnect template tftp:// /client 9-10

217 第 9 章 AnyConnect VPN 客户端连接 配置 AnyConnect 连接 在下一示例中, 用户导出名为 zh 的转换表, 该转换表是先前通过模板导入的 zh 是 Microsoft Internet Explorer 对中文的缩写 hostname# export webvpn translation-table customization language zh tftp:// /chinese_client 步骤 2 编辑转换表 XML 文件 以下示例显示 AnyConnect 模板的部分内容 此输出的末尾包含消息 Connected 的消息 ID 字段 (msgid) 和消息字符串字段 (msgstr), 该消息会在客户端建立 VPN 连接时显示在 AnyConnect 客户端 GUI 上 完整的模板包含许多的消息字段对 : # SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR < @ADDRESS>, YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: : \n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME < @ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=charset\n" "Content-Transfer-Encoding: 8bit\n" #: C:\cygwin\home\<user>\cvc\main\Api\AgentIfc.cpp:23 #: C:\cygwin\home\<user>\cvc\main\Api\check\AgentIfc.cpp:22 #: C:\cygwin\home\<user>\cvc\main\Api\save\AgentIfc.cpp:23 #: C:\cygwin\home\<user>\cvc\main\Api\save\AgentIfc.cpp~:20 #: C:\cygwin\home\<user>\cvc\main\Api\save\older\AgentIfc.cpp:22 msgid "Connected" msgstr "" msgid 包含默认转换 msgid 之后的 msgstr 提供转换 如要创建转换, 请在 msgstr 字符串的引号内输入转换的文本 例如, 如要使用西班牙语转换选项转换消息 Connected, 请在引号内插入西班牙语文本 : msgid "Connected" msgstr "Conectado" 请务必保存文件 步骤 3 在特权 EXEC 模式下, 使用 import webvpn translation-table 命令导入转换表 请确保使用与浏览器兼容的语言缩写来指定新转换表的名称 在以下示例中, 导入了 XML 文件 es-us - Microsoft Internet Explorer 对美国所使用的西班牙语的缩写 hostname# import webvpn translation-table AnyConnect language es-us tftp:// /client hostname#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! hostname# show import webvpn translation-table Translation Tables' Templates: AnyConnect PortForwarder csd customization keepout url-list 9-11

218 配置 AnyConnect 连接 第 9 章 AnyConnect VPN 客户端连接 webvpn Citrix-plugin RPC-plugin Telnet-SSH-plugin VNC-plugin Translation Tables: es-us AnyConnect 配置高级 AnyConnect SSL 功能 下一节介绍可精细调整 AnyConnect SSL VPN 连接的高级功能, 包括下列内容 : 启用重新生成密钥 ( 第 9-12 页 ) 启用和调整对等体存活检测 ( 第 9-13 页 ) 启用保持连接 ( 第 9-13 页 ) 使用压缩 ( 第 9-14 页 ) 调整 MTU 大小 ( 第 9-14 页 ) 更新 AnyConnect 客户端映像 ( 第 9-15 页 ) 启用重新生成密钥 ASA 与 AnyConnect 客户端在 SSL VPN 连接上重新生成密钥时, 它们会重新协商加密密钥和初始化向量, 从而提高连接的安全性 如要允许客户端为特定组或用户在 SSL VPN 连接上重新生成密钥, 请在组策略或用户名 webvpn 模式下使用 anyconnect ssl rekey 命令 [no]anyconnect ssl rekey {method {new-tunnel none ssl} time minutes} method new-tunnel 用于指定客户端在重新生成密钥的过程中建立新的隧道 method ssl 用于指定客户端在重新生成密钥的过程中建立新的隧道 method none 用于禁用重新生成密钥 注意 将重新生成密钥的方法配置为 ssl 或 new-tunnel, 用于指定客户端在重新生成密钥的过程中建立新的隧道, 而不是在重新生成密钥的过程中进行 SSL 重新协商 有关 anyconnect ssl rekey 命令的历史记录, 请参阅 命令参考 time minutes 用于指定从会话开始或上一次重新生成密钥直到重新生成密钥所需经过的分钟数, 取值范围为 1 至 10080(1 周 ) 在以下示例中, 对于现有组策略 sales 来说, 客户端被配置为在重新生成密钥的过程中使用 SSL 进行重新协商, 重新生成密钥在会话开始 30 分钟后进行 : hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# anyconnect ssl rekey method ssl hostname(config-group-webvpn)# anyconnect ssl rekey time

219 第 9 章 AnyConnect VPN 客户端连接 配置 AnyConnect 连接 启用和调整对等体存活检测 对等体存活检测 (DPD) 确保 ASA( 网关 ) 或客户端可以快速检测到对等体无响应且连接已失败的状况 如要在 ASA 或客户端上为特定组或用户启用 DPD, 并设置 ASA 或客户端执行 DPD 的频率, 请在组策略或用户名 webvpn 模式下使用 anyconnect dpd-interval 命令 : anyconnect dpd-interval {[gateway {seconds none}] [client {seconds none}]} 其中 : gateway seconds 用于启用由 ASA( 网关 ) 执行的 DPD, 并指定 ASA( 网关 ) 执行 DPD 的频率, 取值范围为 5 至 3600 秒 gateway none 用于禁用由 ASA 执行的 DPD client seconds 用于启用由客户端执行的 DPD, 并指定客户端执行 DPD 的频率, 取值范围为 5 至 3600 秒 client none 用于禁用由客户端执行的 DPD 如要从配置中移除 anyconnect dpd-interval 命令, 请使用该命令的 no 形式 : no anyconnect dpd-interval {[gateway {seconds none}] [client {seconds none}]} 备注 如果启用 DTLS, 则也要启用对等体存活检测 (DPD) DPD 允许已失败的 DTLS 连接回退至 TLS 否则, 该连接会终止 以下示例为现有组策略 sales 将 ASA 执行的 DPD 的频率设置为 30 秒, 将客户端执行的 DPD 的频率设置为 10 秒 : hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# anyconnect dpd-interval gateway 30 hostname(config-group-webvpn)# anyconnect dpd-interval client 10 启用保持连接 您可以调整保持连接消息的频率, 以确保经由代理 防火墙或 NAT 设备的 SSL VPN 连接保持打开状态, 即使设备限制了连接可处于空闲状态的时间也是如此 调整频率还可以确保客户端在远程用户没有主动运行基于套接字的应用 ( 如 Microsoft Outlook 或 Microsoft Internet Explorer) 时不会断开并重新连接 注意 默认情况下启用保持连接功能 如果禁用保持连接功能, 发生故障切换事件时,SSL VPN 客户端会话不会被切换到备用设备 如要设置保持连接消息的频率, 请在组策略 webvpn 或用户名 webvpn 配置模式下使用 keepalive 命令 : [no] anyconnect ssl keepalive {none seconds} none 用于禁用客户端保持连接消息 seconds 使客户端可以发送保持连接消息, 并指定发送消息的频率, 取值范围为 15 至 600 秒 默认设置为启用保持连接消息 9-13

220 配置 AnyConnect 连接 第 9 章 AnyConnect VPN 客户端连接 使用该命令的 no 形式会将该命令从配置中移除, 并导致该值被继承 : 在以下示例中, 对于现有组策略 sales,asa 被配置为使客户端可以 300 秒 (5 分钟 ) 的频率发送保持连接消息 : hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)#anyconnect ssl keepalive 300 使用压缩 对于低带宽连接, 压缩可以减小要传输的数据包的大小, 从而提高 ASA 与客户端之间的通信性能 默认情况下, 在 ASA 上为全局级别和针对特定组或用户的所有 SSL VPN 连接启用压缩 备注 在宽带连接上实施压缩时, 您必须谨慎考虑压缩依赖于无损连接这一事实 这也正是默认情况下没有在宽带连接上启用压缩的主要原因 压缩必须在全局配置模式下使用 anyconnect ssl compression 命令全局性地打开, 然后在组策略和用户名 webvpn 模式下, 针对特定组或用户, 使用 anyconnect ssl compression 命令进行设置 全局性地更改压缩 如要更改全局压缩设置, 请在全局配置模式下使用 anyconnect ssl compression 命令 : compression no compression 如要从配置中移除该命令, 请使用该命令的 no 形式 在以下示例中, 对所有 SSL VPN 连接全局性地禁用了压缩 : hostname(config)# no compression 更改组和用户的压缩 如要更改特定组或用户的压缩, 请在组策略和用户名 webvpn 模式下使用 anyconnect ssl compression 命令 : anyconnect ssl compression {deflate none} no anyconnect ssl compression {deflate none} 默认情况下, 对于组和用户而言,SSL 压缩被设置为 deflate( 启用 ) 如要从配置中移除 anyconnect ssl compression 命令, 并使该值从全局设置中继承, 可以使用该命令的 no 形式 : 在以下示例中, 对组策略 sales 禁用了压缩 : hostname(config)# group-policy sales attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# no anyconnect ssl compression none 调整 MTU 大小 您可以在组策略 webvpn 或用户名 webvpn 配置模式下, 使用 anyconnect mtu 命令调整客户端建立的 SSL VPN 连接的 MTU 大小 ( 从 256 至 1406 个字节 ): [no]anyconnect mtu size 9-14

221 第 9 章 AnyConnect VPN 客户端连接 配置 AnyConnect 连接 该命令仅影响 AnyConnect 客户端 旧版思科 SSL VPN 客户端 () 不能调整为不同的 MTU 大小 在默认组策略中, 该命令的默认设置为 no anyconnect mtu MTU 大小基于连接使用的接口的 MTU 减去 IP/UDP/DTLS 开销自动进行调整 该命令影响在 SSL 中建立的客户端连接以及在 SSL 中通过 DTLS 建立的客户端连接 示例 以下示例将组策略 telecommuters 的 MTU 大小配置为 1200 个字节 : hostname(config)# group-policy telecommuters attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)#anyconnect mtu 1200 更新 AnyConnect 客户端映像 您可以使用以下程序随时更新 ASA 上的客户端映像 : 步骤 1 在特权 EXEC 模式下使用 copy 命令或者使用其他方法, 将新的客户端映像复制至 ASA 步骤 2 如果新的客户端映像文件与已加载的文件拥有相同的文件名, 请重新输入在配置中的 anyconnect image 命令 如果新文件名不同, 请使用 noanyconnect image 命令卸载旧文件 然后使用 anyconnect image 命令为映像分配顺序, 并使 ASA 加载新的映像 启用 IPv6 VPN 访问 如果您想要配置 IPv6 访问, 则必须使用命令行界面 9.0(x) 版本的 ASA 为其使用 SSL 和 IKEv2/IPsec 协议的外部接口添加了 IPv6 VPN 连接支持 在启用 SSL VPN 连接的过程中, 您可以使用 ipv6 enable 命令启用 IPv6 访问 以下内容为在外部接口上启用 IPv6 的 IPv6 连接 hostname(config)# interface GigabitEthernet0/0 hostname(config-if)# ipv6 enable 如要启用 IPV6 SSL VPN, 请执行以下通用操作 : 1. 在外部接口上启用 IPv6 2. 在内部接口上启用 IPv6 和 IPv6 地址 3. 为客户端分配的 IP 地址配置 IPv6 地址本地池 4. 配置 IPv6 隧道默认网关 步骤 1 配置接口 : interface GigabitEthernet0/0 nameif outside security-level 0 ip address ipv6 enable ; Needed for IPv6.! 9-15

222 监控 AnyConnect 连接 第 9 章 AnyConnect VPN 客户端连接 interface GigabitEthernet0/1 nameif inside security-level 100 ip address ipv6 address 2001:DB8::1/32 ; Needed for IPv6. ipv6 enable ; Needed for IPv6. 步骤 2 配置 ipv6 local pool ( 用于 IPv6 地址分配 ): ipv6 local pool ipv6pool 2001:DB8:1:1::5/ ; Use your IPv6 prefix here 注意 通过在 ASA 上创建内部地址池, 或者通过向 ASA 上的本地用户分配专用地址, 您可以将 ASA 配置为向 AnyConnect 客户端分配 IPv4 地址和 / 或 IPv6 地址 步骤 3 将 IPv6 地址池添加至您的隧道组策略 ( 或组策略 ): tunnel-group YourTunGrp1 general-attributes ipv6-address-pool ipv6pool 注意您还必须在此处配置 IPv4 地址池 ( 使用 address-pool 命令 ) 步骤 4 配置 IPv6 隧道默认网关 : ipv6 route inside ::/0 X:X:X:X::X tunneled 监控 AnyConnect 连接 如要查看有关活动会话的信息, 请使用 show vpn-sessiondb 命令 : 命令 show vpn-sessiondb vpn-sessiondb logoff 目的显示有关活动会话的信息 注销 VPN 会话 show vpn-sessiondb anyconnect 扩充 VPN 会话摘要, 以显示 OSPFv3 会话信息 show vpn-sessiondb ratio encryption 显示隧道数量和 Suite B 算法 ( 如 AES-GCM-128 AES-GCM-192 AES-GCM-256 AES-GMAC-128 等 ) 的百分比 示例 Inactivity 字段显示自 AnyConnect 会话断开连接以来所经过的时间 如果会话处于活动状态, 会在该字段中显示 00:00m:00s hostname# show vpn-sessiondb Session Type: SSL VPN Client Username : lee Index : 1 IP Addr : Protocol : SSL VPN Client Encryption : 3DES Hashing : SHA1 Auth Mode : userpassword 9-16

223 第 9 章 AnyConnect VPN 客户端连接 注销 AnyConnect VPN 会话 TCP Dst Port : 443 TCP Src Port : Bytes Tx : Bytes Rx : 8662 Pkts Tx : 27 Pkts Rx : 19 Client Ver : Cisco STC Client Type : Internet Explorer Group : DfltGrpPolicy Login Time : 14:32:03 UTC Wed Mar Duration : 0h:00m:04s Inactivity : 0h:00m:04s Filter Name : hostname# vpn-sessiondb logoff INFO: Number of sessions of type "" logged off : 1 hostname# vpn-sessiondb logoff name tester Do you want to logoff the VPN session(s)? [confirm] INFO: Number of sessions with name "tester" logged off : 1 注销 AnyConnect VPN 会话 如要注销所有的 VPN 会话, 请在全局配置模式下使用 vpn-sessiondb logoff 命令 : vpn-sessiondb logoff 以下示例注销了所有的 VPN 会话 : hostname# vpn-sessiondb logoff INFO: Number of sessions of type logged off : 1 您可以使用 name 参数或 index 参数注销单个会话 : vpn-session-db logoff name name vpn-session-db logoff index index 处于非活动状态时间最长的会话会被标记为空闲 ( 并自动注销 ), 这样就不会达到许可证容量, 而让新用户可以登录 如果该会话稍后恢复, 则会从非活动列表中删除 您可以在 show vpn-sessiondb anyconnect 命令的输出中找到用户名和索引号 ( 按客户端映像的顺序建立 ) 以下示例显示用户名 lee 和索引号 1 hostname# show vpn-sessiondb anyconnect Session Type: AnyConnect Username : lee Index : 1 Assigned IP : Public IP : Protocol : AnyConnect-Parent SSL-Tunnel DTLS-Tunnel License : AnyConnect Premium Encryption : RC4 AES128 Hashing : SHA1 Bytes Tx : Bytes Rx : 4942 Group Policy : EngPolicy Tunnel Group : EngGroup Login Time : 15:25:13 EST Fri Jan Duration : 0h:00m:15s Inactivity : 0h:00m:00s NAC Result : Unknown VLAN Mapping : N/A VLAN : none 9-17

224 启用 AnyConnect 连接的配置示例 第 9 章 AnyConnect VPN 客户端连接 以下示例使用 vpn-session-db logoff 命令的 name 选项终止会话 : hostname# vpn-sessiondb logoff name lee Do you want to logoff the VPN session(s)? [confirm] INFO: Number of sessions with name lee logged off : 1 hostname# 启用 AnyConnect 连接的配置示例 以下示例显示如何配置 L2TP over IPsec: ip local pool sales_addresses aaa-server sales_server protocol radius crypto ipsec transform-set sales_l2tp_transform esp-3des esp-sha-hmac crypto ipsec transform-set sales_l2tp_transform mode transport crypto ipsec security-association lifetime seconds crypto ipsec security-association lifetime kilobytes l2tp tunnel hello 100 group-policy sales_policy internal group-policy sales_policy attributes wins-server value dns-server value vpn-tunnel-protocol l2tp-ipsec tunnel-group sales_tunnel type remote-access tunnel-group sales_tunnel general-attributes address-pool sales_addresses authentication-server-group none accounting-server-group sales_server default-group-policy sales_policy tunnel-group sales_tunnel ppp-attributes authentication pap AnyConnect 连接的功能历史记录 下表列出了此功能的版本历史记录 表 9-2 AnyConnect 连接的功能历史记录 功能名称 版本 功能信息 AnyConnect 连接 7.2(1) 引入或修改了以下命令 :authentication eap-proxy authentication ms-chap-v1 authentication ms-chap-v2 authentication pap l2tp tunnel hello vpn-tunnel-protocol l2tp-ipsec IPsec IKEv2 8.4(1) 添加了 IKEv2, 以支持用于 AnyConnect 和 LAN 对 LAN 的 IPsec IKEv2 连接 9-18

225 第 10 章 AnyConnect 主机扫描 AnyConnect 状态模块为 AnyConnect 安全移动客户端提供标识主机上安装的操作系统 防病毒软件 防间谍软件和防火墙软件的能力 主机扫描应用会收集此信息 安全状态评估要求在主机上安装主机扫描 使用自适应安全设备管理器 (ASDM) 中的安全桌面管理器工具, 您可以创建一个预登录策略, 评估主机扫描所标识的操作系统 防病毒软件 反间谍软件和防火墙软件 根据预登录策略的评估结果, 您可以控制允许哪些主机创建与安全设备的远程访问连接 主机扫描支持图表包含您在预登录策略中使用的防病毒 反间谍和防火墙应用的产品名称及版本信息 我们在主机扫描软件包中提供主机扫描和主机扫描支持图表以及其他组件 从 3.0 版本 AnyConnect 安全移动客户端开始, 主机扫描可与 CSD 分开提供 这意味着您无须安装 CSD 即可部署主机扫描功能, 而且您可以通过升级最新主机扫描软件包更新您的主机扫描支持图表 本章包含以下部分 : 主机扫描必备条件 ( 第 10-1 页 ) 主机扫描的许可 ( 第 10-2 页 ) 主机扫描软件包 ( 第 10-2 页 ) 安装或升级主机扫描 ( 第 10-2 页 ) 启用或禁用主机扫描 ( 第 10-3 页 ) 查看 ASA 上启用的主机扫描版本 ( 第 10-4 页 ) 卸载主机扫描 ( 第 10-4 页 ) 主机扫描相关文档 ( 第 10-6 页 ) 主机扫描必备条件 具有终端安全评估模块的 AnyConnect 安全移动客户端至少需要以下 ASA 组件 : ASA 8.4 ASDM 6.4 这些 AnyConnect 功能要求安装终端安全评估模块 SCEP 身份验证 AnyConnect 遥测模块 10-1

226 主机扫描的许可 第 10 章 AnyConnect 主机扫描 终端安全评估模块可以安装在以下任意平台上 : Windows XP(x86 和在 x64 上运行的 x86) Windows Vista(x86 和在 x64 上运行的 x86) Windows 7(x86 和在 x64 上运行的 x86) Mac OS X 10.5 和 10.6(32 位和在 64 位上运行的 32 位 ) Linux(32 位和在 64 位上运行的 32 位 ) Windows Mobile 主机扫描的许可 以下是终端安全评估模块的 AnyConnect 许可要求 : 用于基本主机扫描的 AnyConnect 高级版 以下功能需要高级终端评估许可证 补救 移动设备管理 主机扫描软件包 您可以通过以下方式之一将主机扫描软件包加载到 ASA 上 : 可以将其作为独立软件包上传 :hostscan-version.pkg 可以通过上传 AnyConnect 安全移动软件包来上传 :anyconnect-ngc-win-version-k9.pkg 可以通过上传思科安全桌面软件包来将其上传 :csd_version-k9.pkg 文件 hostscan-version.pkg anyconnect-ngc-win-version-k9.pkg csd_version-k9.pkg 说明 此文件包含主机扫描软件以及主机扫描库和支持图表 此软件包包含所有 Cisco AnyConnect 安全移动客户端功能, 包括 hostscan-version.pkg 文件 此文件包含所有思科安全桌面功能, 包括主机扫描软件以及主机扫描库和支持图表 此方法需要单独的适用于思科安全桌面的许可证 安装或升级主机扫描 使用 ASA 的命令行界面, 按照以下程序安装或升级主机扫描软件包并将其启用 准备工作 登录 ASA 并进入全局配置模式 在全局配置模式下,ASA 将显示以下提示符 : hostname(config)# 将 hostscan_version-k9.pkg 文件或 anyconnect-ngc-win-version-k9.pkg 文件上传到 ASA 10-2

227 第 10 章 AnyConnect 主机扫描 启用或禁用主机扫描 步骤 1 步骤 2 进入 webvpn 配置模式 hostname(config)# webvpn 指定想要指定为主机扫描映像的软件包的路径 可以将独立的主机扫描软件包或 AnyConnect 安全移动客户端软件包指定为主机扫描软件包 csd hostscan image path ASAName(webvpn)#csd hostscan image disk0:/hostscan k9.pkg ASAName(webvpn)#csd hostscan image disk0:/anyconnect-ngc-win k9.pkg 注意 对任何操作系统, 无论是 Windows Linux 还是 Mac OS X, 客户都需要上传 anyconnect-ngc-win-version-k9.pkg 文件, 终端才能安装主机扫描 步骤 3 启用在上一步中指定的主机扫描映像 ASAName(webvpn)#csd enable 步骤 4 将运行配置保存到闪存中 成功地将新配置保存到闪存中后, 您将收到消息 [OK] hostname(webvpn)# write memory 启用或禁用主机扫描 这些命令使用 ASA 的命令行界面启用或禁用已安装的主机扫描映像 准备工作 登录 ASA 并进入全局配置模式 在全局配置模式下,ASA 将显示以下提示符 : hostname(config)# 步骤 1 步骤 2 步骤 3 进入 webvpn 配置模式 webvpn 如果尚未从 ASA 中卸载独立的主机扫描映像或 AnyConnect 安全移动客户端软件包中的主机扫描映像, 则启用这些映像 如果没有安装任何以上类型的软件包, 但是安装了 CSD 软件包, 这将启用 CSD 软件包中的主机扫描功能 csd enable 对所有已安装的主机扫描软件包禁用主机扫描 注意 必须使用此命令禁用主机扫描, 然后才能卸载已启用的主机扫描映像 no csd enable 10-3

228 查看 ASA 上启用的主机扫描版本 第 10 章 AnyConnect 主机扫描 查看 ASA 上启用的主机扫描版本 使用 ASA 的命令行界面, 按照以下程序确定已启用的主机扫描版本 准备工作 登录 ASA 并进入特权 EXEC 模式 在特权 EXEC 模式下,ASA 将显示以下提示符 :hostname# 步骤 1 显示 ASA 上启用的主机扫描版本 show webvpn csd hostscan 卸载主机扫描 卸载主机扫描软件包会在 ASDM 界面上将其隐藏并防止 ASA 对其进行部署, 即使启用主机扫描或 CSD 也如此 卸载主机扫描不会从闪存驱动器中删除主机扫描软件包 准备工作 登录 ASA 并进入全局配置模式 在全局配置模式下,ASA 将显示以下提示符 : hostname(config)# 步骤 1 步骤 2 步骤 3 进入 webvpn 配置模式 webvpn 禁用想要卸载的主机扫描映像 no csd enable 指定想要卸载的主机扫描映像的路径 独立的主机扫描软件包或 AnyConnect 安全移动客户端软件包可能已被指定为主机扫描软件包 no csd hostscan image path hostname(webvpn)#no csd hostscan image disk0:/hostscan k9.pkg hostname(webvpn)#no csd hostscan image disk0:/anyconnect-ngc-win k9.pkg 步骤 4 将运行配置保存到闪存中 成功地将新配置保存到闪存中后, 您将收到消息 [OK] write memory 将 AnyConnect 功能模块分配到组策略 此程序将 AnyConnect 功能模块与组策略关联 在 VPN 用户连接到 ASA 时,ASA 将下载这些 AnyConnect 功能模块并将其安装到终端计算机上 准备工作登录 ASA 并进入全局配置模式 在全局配置模式下,ASA 将显示以下提示符 : hostname(config)# 10-4

229 第 10 章 AnyConnect 主机扫描 将 AnyConnect 功能模块分配到组策略 步骤 1 为网络客户端访问添加内部组策略 group-policy name internal hostname(config)# group-policy PostureModuleGroup internal 步骤 2 编辑新的组策略 输入该命令后, 您会收到组策略配置模式的提示符 : hostname(config-group-policy)# group-policy name attributes hostname(config)# group-policy PostureModuleGroup attributes 步骤 3 进入 group-policy webvpn 配置模式 输入该命令后,ASA 将返回以下提示符 : hostname(config-group-webvpn)# webvpn 步骤 4 配置组策略以便为组中的所有用户下载 AnyConnect 功能模块 anyconnect modules value AnyConnect Module Name anyconnect 模块命令的值可能包含下列一个或多个值 当指定多个模块时, 请用逗号将这些值隔开 value AnyConnect 模块名称 dart AnyConnect DART( 诊断和报告工具 ) vpngina AnyConnect SBL( 登录前开始 ) websecurity AnyConnect 网络安全模块 telemetry AnyConnect 遥测模块 posture AnyConnect 终端安全评估模块 nam Cisco AnyConnect 网络访问管理器 无 单独使用可从组策略中删除所有 AnyConnect 模块 hostname(config-group-webvpn)# anyconnect modules value websecurity,telemetry,posture 要删除某个模块, 请重新发出命令, 只指定要保留的模块值 例如, 以下命令将删除 websecurity 模块 : hostname(config-group-webvpn)# anyconnect modules value telemetry,posture 步骤 5 将运行配置保存到闪存中 成功地将新配置保存到闪存中后, 您将收到消息 [OK], 并且 ASA 将返回以下提示符 : hostname(config-group-webvpn)# write memory 10-5

230 主机扫描相关文档 第 10 章 AnyConnect 主机扫描 主机扫描相关文档 在主机扫描从终端计算机收集安全状态凭证后, 您将需要了解诸如配置预登录策略 配置动态访问策略以及使用 Lua 表达式利用信息之类的主题 以下文档中详细介绍了这些主题 : 思科安全桌面配置指南 思科自适应安全设备管理器配置指南 另请参阅 Cisco AnyConnect 安全移动客户端管理员指南, 版本 3.0 以获取有关主机扫描如何与 AnyConnect 客户端配合工作的详细信息 10-6

231 第 11 章 为 VPN 配置外部 AAA 服务器 关于外部 AAA 服务器 此 ASA 可配置为使用外部 LDAP RADIUS 或 TACACS+ 服务器来支持 ASA 的身份验证 授权和记帐 (AAA) 外部 AAA 服务器会实施配置的权限和属性 将 ASA 配置为使用外部服务器之前, 必须先使用正确的 ASA 授权属性配置外部 AAA 服务器, 并从这些属性的子集向单个用户分配特定权限 了解授权属性的策略实施 ASA 支持将用户授权属性 ( 也称为用户授权或权限 ) 应用到 VPN 连接的多种方法 您可以将 ASA 配置为通过以下任意组合获取用户属性 : ASA 上的动态访问策略 (DAP) 外部 RADIUS 或 LDAP 身份验证和 / 或授权服务器 ASA 上的组策略如果 ASA 收到来自所有来源的属性, 将会对这些属性进行评估 合并, 并将其应用至用户策略 如果属性之间有冲突,DAP 属性优先 ASA 按照以下顺序应用属性 : 1. ASA 上的 DAP 属性 - 在 8.0(2) 版本中引入, 这些属性优先于所有其他的属性 如果您在 DAP 中设置书签或 URL 列表, 它会覆盖组策略中设置的书签或 URL 列表 2. AAA 服务器上的用户属性 - 该服务器在用户身份验证和 / 或授权成功后返回这些属性 请不要将这些属性与 ASA 本地 AAA 数据库中为单个用户 (ASDM 中的用户帐户 ) 设置的属性混淆 3. 在 ASA 上配置的组策略 - 如果 RADIUS 服务器为用户返回 RADIUS CLASS 属性 IETF-Class-25 (OU=group-policy) 值,ASA 会将该用户放在名称相同的组策略中, 并实施组策略中该服务器未返回的所有属性 对于 LDAP 服务器, 任何属性名称都可用于设置会话的组策略 您在 ASA 上配置的 LDAP 属性映射会将该 LDAP 属性映射至思科属性 IETF-Radius-Class 4. 连接配置文件 ( 在 CLI 中称为隧道组 ) 分配的组策略 - 连接配置文件具有该连接的初步设置, 包括在进行身份验证前应用于用户的默认组策略 连接至 ASA 的所有用户最初都属于此组, 这可以提供 DAP 服务器返回的用户属性或分配给用户的组策略中缺失的所有属性 5. ASA 分配的默认组策略 (DfltGrpPolicy) - 系统默认属性提供 DAP 用户属性 组策略或连接配置文件中缺失的所有值 11-1

232 外部 AAA 服务器使用规定 第 11 章 为 VPN 配置外部 AAA 服务器 外部 AAA 服务器使用规定 ASA 会根据属性名称而不是数值 ID 来实施 LDAP 属性 RADIUS 属性会按数值 ID 而不是名称来实施 对于 ASDM 7.0 版本,LDAP 属性包含 cvpn3000 前缀 对于 ASDM 7.1 版本及更高版本, 此前缀已移除 LDAP 属性是已在 Radius 章节中列出的 Radius 属性的子集 为 VPN 配置 LDAP 授权 我们需要与此部分相当的 ASDM 内容 在 VPN 访问的 LDAP 身份验证成功后,ASA 将查询 LDAP 服务器, 这会返回 LDAP 属性 这些属性通常包括应用到 VPN 会话的授权数据 您可能需要来自 LDAP 目录服务器的授权, 此授权是独立的且与身份验证机制不同 例如, 如果您使用 SDI 或证书服务器进行身份验证, 系统不会传回任何授权信息 对于这种情况下的用户授权, 您可在身份验证成功后查询 LDAP 目录, 分两步完成身份验证和授权 如要使用 LDAP 设置 VPN 用户授权, 请执行以下步骤 步骤 1 创建一个 AAA 服务器组 aaa-server server_group protocol {kerberos ldap nt radius sdi tacacs+} hostname(config)# aaa-server servergroup1 protocol ldap hostname(config-aaa-server-group) 步骤 2 创建一个名为 remotegrp 的 IPsec 远程访问隧道组 tunnel-group groupname hostname(config)# tunnel-group remotegrp 步骤 3 将服务器组和隧道组关联 tunnel-group groupname general-attributes hostname(config)# tunnel-group remotegrp general-attributes 步骤 4 将新隧道组分配到先前创建的 AAA 服务器组进行授权 authorization-server-group group-tag hostname(config-general)# authorization-server-group ldap_dir_1 11-2

233 第 11 章 为 VPN 配置外部 AAA 服务器 Active Directory/LDAP VPN 远程访问授权示例 示例 以下示例显示启用 LDAP 的用户授权的命令 然后, 该示例将创建一个名为 remote-1 的 IPsec 远程访问隧道组, 将新隧道组分配到先前创建的 ldap_dir_1 AAA 服务器组进行授权 : hostname(config)# tunnel-group remote-1 type ipsec-ra hostname(config)# tunnel-group remote-1 general-attributes hostname(config-general)# authorization-server-group ldap_dir_1 hostname(config-general)# 在完成此配置工作后, 接着您可以通过输入以下命令, 配置其他的 LDAP 授权参数, 如目录密码 搜索目录的起点和目录搜索的范围 : hostname(config)# aaa-server ldap_dir_1 protocol ldap hostname(config-aaa-server-group)# aaa-server ldap_dir_1 host hostname(config-aaa-server-host)# ldap-login-dn obscurepassword hostname(config-aaa-server-host)# ldap-base-dn starthere hostname(config-aaa-server-host)# ldap-scope subtree hostname(config-aaa-server-host)# Active Directory/LDAP VPN 远程访问授权示例 本节提供在 ASA 上使用 Microsoft Active Directory 服务器配置身份验证和授权的示例程序 包括以下主题 : 基于用户的属性的策略实施 ( 第 11-3 页 ) 将 LDAP 用户置于特定组策略中 ( 第 11-4 页 ) 为 AnyConnect 隧道实施静态 IP 地址分配 ( 第 11-6 页 ) 实施拨入允许或拒绝访问 ( 第 11-7 页 ) 实施登录时长和时间规则 ( 第 11-9 页 ) Cisco.com 提供的其他配置示例包括以下技术说明 ASA/PIX: 通过 LDAP 配置将 VPN 客户端映射至 VPN 组策略的示例 PIX/ASA 8.0: 登录时使用 LDAP 身份验证来分配组策略 基于用户的属性的策略实施 此示例向用户显示一个简单的欢迎信息, 说明如何将任意标准 LDAP 属性映射至一个已知的供应商特定属性 (VSA), 或者将一个或多个 LDAP 属性映射至一个或多个思科 LDAP 属性 此示例适用于任意连接类型, 包括 IPSec VPN 客户端 AnyConnect SSL VPN 客户端或无客户端 SSL VPN 如要为 AD LDAP 服务器上配置的用户实施简单的欢迎信息, 请使用 General 选项卡中的 Office 字段输入欢迎信息文本 此字段使用名为 physicaldeliveryofficename 的属性 在 ASA 中, 创建将 physicaldeliveryofficename 映射至思科属性 Banner1 的属性映射 在身份验证过程中,ASA 从服务器检索 physicaldeliveryofficename 的值, 将该值映射至思科属性 Banner1, 然后向用户显示该欢迎信息 11-3

234 Active Directory/LDAP VPN 远程访问授权示例 第 11 章 为 VPN 配置外部 AAA 服务器 步骤 1 右键点击用户名打开 Properties 对话框, 然后点击 General 选项卡, 在 Office 字段中输入欢迎信息文本, 该字段使用 AD/LDAP 属性 physicaldeliveryofficename 步骤 2 步骤 3 步骤 4 在 ASA 上创建一个 LDAP 属性映射 创建映射 Banner, 并将 AD/LDAP 属性 physicaldeliveryofficename 映射至思科属性 Banner1: hostname(config)# ldap attribute-map Banner hostname(config-ldap-attribute-map)# map-name physicaldeliveryofficename Banner1 将 LDAP 属性映射关联到 AAA 服务器 进入 AAA 服务器组 MS_LDAP 中的主机 的 AAA 服务器主机配置模式, 然后关联您先前创建的属性映射 Banner: hostname(config)# aaa-server MS_LDAP host hostname(config-aaa-server-host)# ldap-attribute-map Banner 测试此欢迎信息的实施 将 LDAP 用户置于特定组策略中 此示例适用于任意连接类型, 包括 IPSec VPN 客户端 AnyConnect SSL VPN 客户端或无客户端 SSL VPN 在此示例中,User1 通过无客户端 SSL VPN 连接进行连接 如要将 LDAP 用户置于特定组策略中, 请使用 Organization 选项卡的 Department 字段输入组策略的名称 然后创建一个属性映射, 将 Department 映射至思科属性 IETF-Radius-Class 11-4

235 第 11 章 为 VPN 配置外部 AAA 服务器 Active Directory/LDAP VPN 远程访问授权示例 在身份验证过程中,ASA 从服务器检索 Department 的值, 将此值映射至 IETF-Radius-Class, 然后将 User1 置于该组策略中 步骤 1 右键点击用户名打开 Properties 对话框, 然后点击 Organization 选项卡, 在 Department 字段中输入 Group-Policy-1 步骤 2 步骤 3 步骤 4 步骤 5 为 LDAP 配置定义一个属性映射 将 AD 属性 Department 映射至思科属性 IETF-Radius-Class hostname(config)# ldap attribute-map group_policy hostname(config-ldap-attribute-map)# map-name Department IETF-Radius-Class 将 LDAP 属性映射关联到 AAA 服务器 进入 AAA 服务器组 MS_LDAP 中的主机 的 AAA 服务器主机配置模式, 然后关联您先前创建的属性映射 group_policy: hostname(config)# aaa-server MS_LDAP host hostname(config-aaa-server-host)# ldap-attribute-map group_policy 按照服务器上 Department 字段中输入的值, 在 ASA 上添加组策略 Group-policy-1, 并配置将分配给用户的所需策略属性 hostname(config)# group-policy Group-policy-1 external server-group LDAP_demo hostname(config-aaa-server-group)# 像用户一样建立 VPN 连接, 并验证会话是否会继承 Group-Policy1 中的属性 ( 以及默认组策略中的任何其他适用属性 ) 11-5

236 Active Directory/LDAP VPN 远程访问授权示例 第 11 章 为 VPN 配置外部 AAA 服务器 步骤 6 通过从特权 EXEC 模式启用 debug ldap 255 命令, 监控 ASA 和该服务器之间的通信 以下是此命令的示例输出, 此输出已经过编辑, 以便提供关键信息 [29] Authentication successful for user1 to [29] Retrieving user attributes from server [29] Retrieved Attributes: [29] department: value = Group-Policy-1 [29] mapped to IETF-Radius-Class: value = Group-Policy-1 为 AnyConnect 隧道实施静态 IP 地址分配 此示例适用于完全隧道客户端, 例如 IPsec 客户端和 SSL VPN 客户端 如要实施静态 AnyConnect 静态 IP 分配, 请将 AnyConnect 客户端用户 Web1 配置为接受静态 IP 地址, 在 AD LDAP 服务器上的 Dialin 选项卡的 Assign Static IP Address 字段中输入地址 ( 此字段使用 msradiusframedipaddress 属性 ), 然后创建一个可将该属性映射至思科属性 IETF-Radius-Framed-IP-Address 的属性映射 在身份验证过程中,ASA 从服务器检索 msradiusframedipaddress 的值, 将该值映射至思科属性 IETF-Radius-Framed-IP-Address, 并向 User1 提供静态地址 步骤 1 右键点击用户名打开 Properties 对话框, 然后点击 Dial-in 选项卡, 选中 Assign Static IP Address 复选框并输入 IP 地址 步骤 2 为显示的 LDAP 配置创建一个属性映射 将 Static Address 字段使用的 AD 属性 msradiusframedipaddress 映射至思科属性 IETF-Radius-Framed-IP-Address: hostname(config)# ldap attribute-map static_address 11-6

237 第 11 章 为 VPN 配置外部 AAA 服务器 Active Directory/LDAP VPN 远程访问授权示例 hostname(config-ldap-attribute-map)# map-name msradiusframedipaddress IETF-Radius-Framed-IP-Address 步骤 3 步骤 4 将 LDAP 属性映射关联到 AAA 服务器 进入 AAA 服务器组 MS_LDAP 中的主机 的 AAA 服务器主机配置模式, 然后关联您先前创建的属性映射 static_address: hostname(config)# aaa-server MS_LDAP host hostname(config-aaa-server-host)# ldap-attribute-map static_address 通过查看此部分的配置, 验证是否已配置 vpn-address-assignment 命令来指定 AAA: hostname(config)# show run all vpn-addr-assign vpn-addr-assign aaa << Make sure this is configured >> no vpn-addr-assign dhcp vpn-addr-assign local hostname(config)# 步骤 5 使用 AnyConnect 客户端建立与 ASA 的连接 观察用户是否收到在服务器上配置并映射至 ASA 的 IP 地址 步骤 6 使用 show vpn-sessiondb svc 命令来查看会话详细信息, 并验证分配的地址 : hostname# show vpn-sessiondb svc Session Type: SVC Username : web1 Index : 31 Assigned IP : Public IP : Protocol : Clientless SSL-Tunnel DTLS-Tunnel Encryption : RC4 AES128 Hashing : SHA1 Bytes Tx : Bytes Rx : Group Policy : VPN_User_Group Tunnel Group : Group1_TunnelGroup Login Time : 11:13:05 UTC Tue Aug Duration : 0h:01m:48s NAC Result : Unknown VLAN Mapping : N/A VLAN : none 实施拨入允许或拒绝访问 本示例创建指定用户允许的隧道协议的 LDAP 属性映射 您可以将 Dialin 选项卡中的允许访问和拒绝访问设置映射至思科属性 Tunneling-Protocol, 该属性支持以下映射值 : Value 隧道协议 1 PPTP 2 L2TP IPsec (IKEv1) L2TP/IPsec 16 无客户端 SSL 32 SSL 客户端 - AnyConnect 或 SSL VPN 客户端 64 IPsec (IKEv2) 1. 不能同时支持 IPsec 和 L2TP over IPsec 因此, 值 4 和 8 只能二选其一 2. 请参阅注释

238 Active Directory/LDAP VPN 远程访问授权示例 第 11 章 为 VPN 配置外部 AAA 服务器 使用此属性创建协议的允许访问 (TRUE) 或拒绝访问 (FALSE) 条件, 并实施允许用户访问的方法 有关实施拨入允许访问或拒绝访问的其他示例, 请参阅以下技术说明 :ASA/PIX: 通过 LDAP 配置将 VPN 客户端映射至 VPN 组策略的示例 步骤 1 右键点击用户名打开 Properties 对话框, 然后点击 Dial-in 选项卡, 再点击 Allow Access 单选按钮 注意 如果您通过 Remote Access Policy 选项选择控制访问, 则服务器不会返回值, 而实施的权限则根据 ASA 的内部组策略设置而定 步骤 2 创建一个允许 IPsec 和 AnyConnect 连接, 但是拒绝无客户端 SSL 连接的属性映射 a. 创建映射 tunneling_protocols: hostname(config)# ldap attribute-map tunneling_protocols b. 将 Allow Access 设置使用的 AD 属性 msnpallowdialin 映射至思科属性 Tunneling-Protocols: hostname(config-ldap-attribute-map)# map-name msnpallowdialin Tunneling-Protocols c. 添加映射值 : hostname(config-ldap-attribute-map)# map-value msnpallowdialin FALSE 48 hostname(config-ldap-attribute-map)# map-value msnpallowdialin TRUE 4 步骤 3 将 LDAP 属性映射关联到 AAA 服务器 a. 进入 AAA 服务器组 MS_LDAP 中的主机 的 AAA 服务器主机配置模式 : hostname(config)# aaa-server MS_LDAP host b. 关联您创建的属性映射 tunneling_protocols: hostname(config-aaa-server-host)# ldap-attribute-map tunneling_protocols 11-8

239 第 11 章 为 VPN 配置外部 AAA 服务器 Active Directory/LDAP VPN 远程访问授权示例 步骤 4 验证属性映射是否按配置工作 尝试使用无客户端 SSL 的连接, 用户应接到通知, 告知其未经授权的连接机制是连接失败的原因 IPSec 客户端应该可以连接, 因为根据属性映射,IPsec 是允许的隧道协议 实施登录时长和时间规则 以下示例展示如何配置和实施允许无客户端 SSL 用户 ( 例如业务合作伙伴 ) 访问网络的时长 在 AD 服务器上, 使用 Office 字段输入合作伙伴的名称, 该字段使用 physicaldeliveryofficename 属性 然后我们在 ASA 上创建一个可将该属性映射至思科属性 Access-Hours 的属性映射 在身份验证过程中,ASA 会检索 physicaldeliveryofficename 的值, 并将其映射至 Access-Hours 步骤 1 选择用户, 右键点击 Properties, 然后打开 General 选项卡 : 步骤 2 步骤 3 步骤 4 创建属性映射 创建属性映射 access_hours, 并将 Office 字段使用的 AD 属性 physicaldeliveryofficename 映射至思科属性 Access-Hours hostname(config)# ldap attribute-map access_hours hostname(config-ldap-attribute-map)# map-name physicaldeliveryofficename Access-Hours 将 LDAP 属性映射关联到 AAA 服务器 进入 AAA 服务器组 MS_LDAP 中的主机 的 AAA 服务器主机配置模式, 然后关联您创建的属性映射 access_hours: hostname(config)# aaa-server MS_LDAP host hostname(config-aaa-server-host)# ldap-attribute-map access_hours 为服务器上允许的每个值配置时间范围 将合作伙伴访问时长配置为周一至周五上午 9 点到下午 5 点 : hostname(config)# time-range Partner hostname(config-time-range)# periodic weekdays 09:00 to 17:

240 Active Directory/LDAP VPN 远程访问授权示例 第 11 章 为 VPN 配置外部 AAA 服务器 11-10

241 第 2 部分 无客户端 SSL VPN

242

243 第 12 章 无客户端 SSL VPN 无客户端 SSL VPN 简介 无客户端 SSL VPN 让最终用户可以使用支持 SSL 的 Web 浏览器随时随地安全地访问企业网络上的资源 用户首先利用无客户端 SSL VPN 网关进行身份验证, 然后允许用户访问预配置的网络资源 备注 启用无客户端 SSL VPN 时, 不支持安全情景 ( 也称为多模防火墙 ) 和主动 / 主动状态故障切换 无客户端 SSL VPN 使用 Web 浏览器与 ASA 创建安全的远程访问 VPN 隧道, 不需要使用软件或硬件客户端 几乎任何可通过 HTTP 连接到互联网的设备都可以通过它安全便捷地访问各种 Web 资源以及支持 Web 的应用和旧版应用 具体包括 : 内部网站 支持 Web 的应用 NT/Active Directory 文件共享 邮件代理, 包括 POP3S IMAP4S 和 SMTPS Microsoft Outlook Web Access Exchange Server 和 (2) 和更低版本中适用于 Exchange Server 2010 的 Microsoft Web App Application Access( 对其他基于 TCP 的应用的智能隧道或端口转发访问 ) 无客户端 SSL VPN 使用安全套接字层协议及其继任者传输层安全性协议 (SSL/TLS1), 在远程用户与您配置为内部服务器的受支持的特定内部资源之间提供安全连接 ASA 将识别必须代理的连接, 并且 HTTP 服务器会与身份验证子系统交互以对用户进行身份验证 网络管理员以组为单位为无客户端 SSL VPN 的用户提供资源访问 用户无权直接访问内部网络上的资源 无客户端 SSL VPN 的必备条件 有关 9.0 版本 ASA 支持的平台和浏览器, 请参阅支持的 VPN 平台 ( 思科 ASA 系列 ) 12-1

244 无客户端 SSL VPN 简介 第 12 章 无客户端 SSL VPN 无客户端 SSL VPN 的规定和限制 ActiveX 页面要求启用 ActiveX 中继或对关联的组策略输入 activex-relay 如果执行此操作或将智能隧道列表分配给策略, 并且终端上的浏览器代理例外列表指定了代理, 则用户必须向该列表添加 shutdown.webvpn.relay. 条目 ASA 不支持从 Windows 7 Vista Internet Explorer 8 至 10 Mac OS X 或 Linux 对 Windows Shares (CIFS) Web Folders 进行无客户端访问 证书身份验证 ( 包括美国国防部通用存取卡和智能卡 ) 仅适用于 Safari 密钥链 ASA 不支持无客户端 SSL VPN 连接的 DSA 证书 支持 RSA 证书 一些基于域的安全产品要求可能高于源自 ASA 的这些请求 不支持在模块化策略框架下配置控件检查和其他检查功能 组策略下的 vpn-filter 命令适用于基于客户端的访问, 因此不受支持 组策略中无客户端 SSL VPN 模式下的过滤器只适用于基于无客户端的访问 NAT 或 PAT 都不适用于客户端 ASA 不支持使用 QoS rate-limiting 命令, 例如 police 或 priority-queue ASA 不支持使用连接限制, 通过静态或模块化策略框架 set connection 命令进行检查 无客户端 SSL VPN 的某些组件需要适用于 Mac OS X v10.7 及更高版本的 Java 运行时环境 (JRE), 默认情况下不安装 Java 有关如何在 Mac OS X 上安装 Java 的详细信息, 请参阅 当您为无客户端门户配置了几个组策略时, 它们将显示在登录页面上的下拉列表中 当列表中的第一个组策略要求提供证书时, 用户必须具有匹配的证书 如果某些组策略不使用证书, 则必须将列表配置为首先显示非证书策略 或者, 您可能需要创建一个名称为 0-Select-a-group 的虚拟组策略 提示 您可以按照字母顺序给组策略命名或在其名称前面加上数字前缀, 从而控制首先显示哪个策略 例如 1-AAA, 2-Certificate 12-2

245 第 13 章 无客户端 SSL VPN 基本配置 重写每个 URL 默认情况下,ASA 允许所有门户流量流向所有 Web 资源 ( 例如 HTTPS CIFS RDP 和插件 ) 无客户端 SSL VPN 将每个 URL 重写为只对 ASA 有意义的 URL 用户无法使用此 URL 确认其已连接至所请求的网站 为了避免让用户处于钓鱼网站所带来的风险中, 请将 Web ACL 分配给为无客户端访问配置的策略 ( 例如组策略和 / 或动态访问策略 ), 以便控制源自门户的流量 我们建议关闭这些策略上的 URL Entry, 以防用户无法分辨哪些 URL 才是可访问的 图 13-1 用户输入的 URL 示例 图 13-2 安全设备重写以及浏览器窗口中显示的相同 URL 关闭门户页面上的 URL 条目 此门户页面在用户建立基于浏览器的连接时打开 准备工作为需要进行无客户端 SSL VPN 访问的所有用户配置组策略, 并仅为该组策略启用无客户端 SSL VPN 13-1

246 验证无客户端 SSL VPN 服务器证书 第 13 章 无客户端 SSL VPN 基本配置 步骤 1 切换至组策略无客户端 SSL VPN 配置模式 webvpn 步骤 2 控制用户能否随意输入 HTTP/HTTPS URL url-entry 步骤 3 ( 可选 ) 关闭 URL 条目 url-entry disable 验证无客户端 SSL VPN 服务器证书 在通过无客户端 SSL VPN 连接至支持 SSL 的远程服务器时, 务必知悉您可以信任该远程服务器, 且该服务器实际上就是您尝试连接的服务器 ASA 9.0 引入了以下支持功能 : 根据无客户端 SSL VPN 的受信任证书颁发机构 (CA) 证书的列表执行 SSL 服务器证书验证 在使用 HTTPS 协议连接至带有 Web 浏览器的远程服务器时, 该服务器提供证书颁发机构 (CA) 签名的数字证书进行自我标识 Web 浏览器包括用于验证服务器证书有效性的 CA 证书集合 这是一种公共密钥基础设施 (PKI) ASA 提供 trustpool 形式的受信任池证书管理设施 这可视为代表多个已知 CA 证书的信任点的特例 ASA 包括一个默认的证书捆绑包, 与 Web 浏览器随附的证书捆绑包相似 只有管理员发出 crypto ca import default 命令后才会激活证书捆绑包 备注 ASA trustpool 与 Cisco IOS trustpool 类似, 但不完全相同 配置浏览器对插件的访问 浏览器插件是 Web 浏览器在执行专用功能时 ( 例如, 在浏览器窗口中将客户端连接至服务器 ) 调用的一个独立程序 借助于 ASA, 可在无客户端 SSL VPN 会话中导入要下载至远程浏览器的插件 当然, 思科将测试再分发的插件, 在某些情况下, 还将测试其无法再分发的插件的连接性 但是, 我们建议不要导入目前支持流媒体的插件 安装闪存设备中的插件时,ASA 将执行以下操作 : ( 仅限思科分发的插件 ) 解压缩 URL 中指定的 jar 文件 将文件写入 ASA 文件系统 填充 ASDM 中 URL 属性旁边的下拉列表 为所有未来的无客户端 SSL VPN 会话启用插件, 然后添加主菜单选项并将一个选项添加至门户页面 Address 字段旁边的下拉列表 下面显示了在添加以下各节中介绍的插件时门户页面的主菜单和 Address 字段发生的变化 13-2

247 第 13 章 无客户端 SSL VPN 基本配置 配置浏览器对插件的访问 表 13-1 插件在无客户端 SSL VPN 门户页面上的效果 插件 添加到门户页面的主菜单选项 添加到门户页面的 Address 字段选项 ica Citrix MetaFrame Services ica:// rdp Terminal Servers rdp:// rdp2* Terminal Servers Vista rdp2:// ssh,telnet Secure Shell ssh:// Telnet Services (supporting v1 and v2) telnet:// vnc Virtual Network Computing services vnc:// * 不是推荐的插件 当无客户端 SSL VPN 会话中的用户在门户页面上点击关联的菜单选项时, 门户页面会在界面上显示一个窗口, 并显示一个帮助窗格 用户可选择下拉列表中显示的协议, 并在 Address 字段中输入 URL 以建立连接 插件支持单点登录 (SSO) 插件的必备条件 只有在 ASA 上启用无客户端 SSL VPN, 才能远程访问插件 要为插件配置 SSO 支持, 请安装插件, 添加书签条目以显示服务器链接, 并在添加书签时指定 SSO 支持 远程使用所需的最低访问权限属于访客特权模式 使用插件需要安装 ActiveX 或 Oracle Java 运行时环境 (JRE); 请参阅兼容性列表了解版本要求 插件的限制 备注 远程桌面协议插件不支持用会话代理程序进行负载均衡 由于协议处理源自会话代理程序的重定向的方法不当, 连接失败 如未使用会话代理程序, 插件将正常工作 插件支持单点登录 (SSO) 它们使用所输入的相同凭证打开无客户端 SSL VPN 会话 因为插件不支持宏替换, 您无法选择对不同的字段 ( 例如内部域密码 ) 或 RADIUS 或 LDAP 服务器上的属性执行 SSO 状态故障切换不保留使用插件建立的会话 完成故障切换之后, 用户必须重新连接 如果使用无状态故障切换替代状态故障切换, 则无客户端功能 ( 例如书签 自定义和动态访问策略 ) 不会在故障切换 ASA 对之间同步 在发生故障切换时, 这些功能无法工作 13-3

248 配置浏览器对插件的访问 第 13 章 无客户端 SSL VPN 基本配置 为插件准备安全设备 准备工作 确保已在一个 ASA 接口上启用无客户端 SSL VPN 请勿将 IP 地址指定为 SSL 证书的通用名称 (CN) 远程用户尝试使用 FQDN 与 ASA 进行通信 远程 PC 必须能够使用 DNS 或 System32\drivers\etc\hosts 文件中的条目来解析 FQDN 步骤 1 显示无客户端 SSL VPN 是否已在 ASA 上启用 show running-config 步骤 2 在 ASA 接口上安装 SSL 证书, 并提供用于远程用户连接的完全限定域名 (FQDN) 安装思科再分发的插件 思科再分发以下基于 Java 的开放源码组件, 可作为无客户端 SSL VPN 会话中 Web 浏览器的插件进行访问 准备工作确保已在 ASA 的一个接口上启用无客户端 SSL VPN 为此, 请输入 show running-config 命令 表 13-2 思科再分发的插件 协议 说明 再分发的插件的来源 * RDP 访问 Windows Vista 和 Windows 2003 R2 托管的 Microsoft 终端服务 支持远程桌面 ActiveX 控件 我们建议使用此款支持 RDP 和 RDP2 的插件 仅支持最高版本为 5.1 的 RDP 和 RDP2 协议 不支持版本 5.2 及更高版本 RDP2 SSH VNC 访问 Windows Vista 和 Windows 2003 R2 托管的 Microsoft 终端服务 支持远程桌面 ActiveX 控件 备注 此旧版插件仅支持 RDP2 建议不要使用此插件 ; 请换用上述 RDP 插件 安全外壳 Telnet 插件可供远程用户建立到远程计算机的安全外壳 (v1 或 v2) 或 Telnet 连接 备注 由于 JavaSSH 不支持键盘交互身份验证, 它不受 SSH 插件 ( 用于实施不同的身份验证机制 ) 支持 虚拟网络计算插件可供远程用户使用显示器 键盘和鼠标查看和控制已打开远程桌面共享 ( 也称为 VNC 服务器或服务 ) 的计算机 此版本更改文本的默认颜色并包含更新的法语和日语帮助文件 * 有关部署配置和限制的信息, 请参阅插件文档 13-4

249 第 13 章 无客户端 SSL VPN 基本配置 配置浏览器对插件的访问 这些插件可从思科自适应安全设备软件下载站点下载 备注 ASA 不会在配置中保留命令 import webvpn plug-in protocol 相反, 它会自动加载 csco-config/97/plugin 目录的内容 辅助 ASA 会从主 ASA 获取插件 步骤 1 将插件安装到 ASA 的闪存设备上 protocol 可以选择以下值之一 :ssh, telnet, 使插件可以访问安全外壳和 Telnet 服务 注意 请勿分别对 SSH 和 Telnet 输入一次此命令 键入 ssh,telnet 字符串时, 请勿插入空格 import webvpn plug-in protocol [ rdp rdp2 [ ssh telnet ] vnc] URL 以下示例显示输入 TFTP 或 FTP 服务器的主机名或地址以及插件路径, 其中 URL 是插件.jar 文件的远程路径 hostname# import webvpn plug-in protocol ssh,telnet tftp://local_tftp_server/plugins/ssh-plugin.jar Accessing tftp://local_tftp_server/plugins/ssh-plugin.jar...!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Writing file disk0:/csco_config/97/plugin/ssh...!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! bytes copied in secs (79503 bytes/sec) 步骤 2 ( 可选 ) 关闭并删除插件的无客户端 SSL VPN 支持, 并从 ASA 的闪存驱动器中将其删除 revert webvpn plug-in protocol protocol hostname# revert webvpn plug-in protocol rdp 提供对 Citrix XenApp 服务器的访问 本节介绍如何为 Citrix XenApp 服务器客户端添加无客户端 SSL VPN 支持, 可作为为无客户端 SSL VPN 浏览器提供对第三方插件的访问的方法示例 借助于 ASA 上安装的 Citrix 插件, 无客户端 SSL VPN 用户可以使用与 ASA 的连接访问 Citrix XenApp 服务 状态故障切换不保留使用 Citrix 插件建立的会话 Citrix 用户必须在故障切换后重新进行身份验证 创建和安装 Citrix 插件 准备工作 您必须为插件准备安全应用 必须将 Citrix Web Interface 软件配置为在不使用 (Citrix) 安全网关 的模式下运行 否则, Citrix 客户端无法连接至 Citrix XenApp 服务器 13-5

250 配置浏览器对插件的访问 第 13 章 无客户端 SSL VPN 基本配置 步骤 1 从思科软件下载网站下载文件 ica-plugin.zip 此文件包含思科自定义的可与 Citrix 插件配合使用的文件 步骤 2 从 Citrix 站点下载 Citrix Java 客户端 在 Citrix 网站的下载区域, 选择 Citrix Receiver 和 Receiver for Other Platforms, 然后点击 Find 点击 Receiver for Java 超链接并下载存档文件 步骤 3 从存档文件中提取以下文件, 然后将它们添加到 ica plugin.zip 文件 : 步骤 4 JICA-configN.jar JICAEngN.jar 确保 Citrix Java 客户端随附的 EULA 授予您在 Web 服务器上部署客户端的权利和权限 步骤 5 通过使用 ASDM 或在特权 EXEC 模式下输入以下 CLI 命令来安装插件 : import webvpn plug-in protocol ica URL URL 是主机名或 IP 地址以及 ica plugin.zip 文件的路径 注意 提供对 Citrix 会话的 SSO 支持需要添加书签 我们建议您在书签中使用 URL 参数, 以方便查看, 例如 : ica:// /?desiredcolor=4&desiredhres=1024&desiredvres=768 步骤 6 建立 SSL VPN 无客户端会话并点击书签或输入 Citrix 服务器的 URL 根据需要使用 Java 客户端管理员指南 查看在安全设备上安装的插件 步骤 1 列出可供无客户端 SSL VPN 用户使用的基于 Java 的客户端应用 show import webvpn plug hostname# show import webvpn plug ssh rdp vnc ica 步骤 2 包括插件的散列值和日期 show import webvpn plug detail hostname show import webvpn plug post GXN2BIGGOAOkBMibDQsMu2GWZ3Q= Tues, 29 Apr :57:03 GMT rdp fheyreiouwdcgal9hdts PnjdBoo= Tues, 15 Sep :23:56 GMT rdp2 shw8c22t2ssillk6zycd6h6voz8= Wed, 11 Feb :17:54 GMT 13-6

251 第 13 章 无客户端 SSL VPN 基本配置 配置端口转发 配置端口转发 借助于端口转发, 用户可通过无客户端 SSL VPN 连接访问基于 TCP 的应用 此类应用包括 : Lotus Notes Microsoft Outlook Microsoft Outlook Express Perforce Sametime Secure FTP (FTP over SSH) SSH Telnet Windows Terminal Service XDDTS 其他基于 TCP 的应用可能也可以正常工作, 但我们没有对其进行过测试 使用 UDP 的协议将无法工作 端口转发是通过无客户端 SSL VPN 连接支持基于 TCP 的应用的传统技术 由于您已构建支持此技术的早期配置, 可以选择使用端口转发 考虑端口转发的以下替代方案 : 智能隧道访问为用户提供以下优势 : 智能隧道所提供的性能优于插件性能 不同于端口转发, 智能隧道不要求用户将本地应用连接至本地端口, 简化了用户体验 不同于端口转发, 智能隧道不要求用户拥有管理员权限 与端口转发和智能隧道访问不同, 插件不需要将客户端应用安装在远程计算机上 在 ASA 上配置端口转发时, 需要指定应用使用的端口 在配置智能隧道访问时, 需要指定可执行文件的名称或其路径 端口转发的必备条件 远程主机必须运行以下操作系统的 32 位版本 : Microsoft Windows Vista Windows XP SP2 或 SP3; 或 Windows 2000 SP4 安装了 Safari 2.0.4(419.3) 的 Apple Mac OS X 10.4 或 10.5 Fedora Core 4 远程主机还必须运行 Oracle Java 运行时环境 (JRE) 5 或更高版本 Mac OS X 上基于浏览器的 Safari 用户必须标识与 ASA URL 配合使用的客户端证书, 由于 Safari 解释 URL 的方法, 此 URL 一次在末尾加斜杠, 一次不加 例如, 有关详细信息, 请转至 Safari, Mac OS X : 客户端证书身份验证的变更 13-7

252 配置端口转发 第 13 章 无客户端 SSL VPN 基本配置 Microsoft Windows Vista 或更高版本的用户若使用端口转发或智能隧道, 必须将 ASA 的 URL 添加到 Trusted Site 区域 要访问 Trusted Site 区域, 必须启动 Internet Explorer 并依次选择 Tools > Internet Options > Security 选项卡 Vista( 或更高版本 ) 用户还可关闭保护模式以简化智能隧道访问 ; 但是, 由于此方法会使计算机更容易遭受攻击, 我们建议不要使用此方法 确保 Oracle Java 运行时环境 (JRE) 1.5.x 或更高版本已安装在远程计算机上, 可支持端口转发 ( 应用访问 ) 和数字证书 如果运行的是 JRE 1.4.x 且用户使用数字证书进行身份验证, 则应用将无法启动, 因为 JRE 无法访问 Web 浏览器证书存储区 端口转发的限制 端口转发仅支持使用静态 TCP 端口的 TCP 应用 不支持使用动态端口或多个 TCP 端口的应用 例如, 使用端口 22 的 SecureFTP 通过无客户端 SSL VPN 端口转发工作, 但是使用端口 20 和 21 的标准 FTP 却不是这样 端口转发不支持使用 UDP 的协议 端口转发不支持 Microsoft Outlook Exchange (MAPI) 代理 但是, 可为 Microsoft Office Outlook 和 Microsoft Outlook Exchange Server 一起配置智能隧道支持 状态故障切换不保留使用 Application Access( 端口转发或智能隧道访问 ) 建立的会话 完成故障切换之后, 用户必须重新连接 端口转发不支持与个人数字助理的连接 由于端口转发需要下载 Java 小应用程序和配置本地客户端, 并且此操作需要本地系统的管理员权限, 当用户从公共远程系统进行连接时, 可能无法使用应用 Java 小应用程序显示在最终用户 HTML 界面上其自身窗口中 它显示可向用户提供的已转发端口列表的内容, 以及活动的端口和收发的流量 ( 以字节为单位 ) 在使用本地 IP 地址 时, 端口转发小应用程序会将本地端口和远程端口显示为同一端口, 并且无法由源自 ASA 的无客户端 SSL VPN 连接进行更新 因此,ASA 将为本地代理 ID 创建新的 IP 地址 等 由于可以修改主机文件并使用不同的环回, 远程端口将用作小应用程序中的本地端口 要进行连接, 可配合使用 Telnet 与主机名, 无需指定端口 本地主机文件中提供正确的本地 IP 地址 为端口转发配置 DNS 端口转发会将远程服务器的域名或其 IP 地址转发至 ASA 以进行解析和连接 换句话说, 端口转发小应用程序接受来自应用的请求并将其转发至 ASA ASA 执行适当的 DNS 查询并代表端口转发小应用程序建立连接 端口转发小应用程序只对 ASA 执行 DNS 查询 它会更新主机文件, 以便在端口转发应用尝试执行 DNS 查询时, 查询重定向至环回地址 按以下方式配置 ASA, 使其接受来自端口转发小应用程序的 DNS 请求 : 步骤 1 进入 dns server-group 模式并配置名为 example.com 的 DNS 服务器组 dns server-group 步骤 2 指定域名 默认 domain-name 设置为 DefaultDNS domain-name hostname(config)# dns server-group example.com hostname(config-dns-server-group)# domain-name example.com 13-8

253 第 13 章 无客户端 SSL VPN 基本配置 配置端口转发 步骤 3 将域名解析为 IP 地址 name-server hostname(config-dns-server-group)# name-server 步骤 4 步骤 5 步骤 6 切换至无客户端 SSL VPN 配置模式 webvpn 切换至隧道组无客户端 SSL VPN 配置模式 tunnel-group webvpn 指定隧道组将使用的域名 默认情况下, 安全设备将默认无客户端 SSL VPN 组分配为无客户端连接的默认隧道组 如果 ASA 使用该隧道组将设置分配给无客户端连接, 请遵循此说明 否则, 请对为无客户端连接配置的每个隧道按照此步骤操作 ( 仅在使用非默认域名 [DefaultDNS] 时才需要 ) dns-group asa2(config-dns-server-group)# exit asa2(config)# tunnel-group DefaultWEBVPNGroup webvpn-attributes asa2(config-tunnel-webvpn)# dns-group example.com 使应用能够进行端口转发 每个 ASA 的无客户端 SSL VPN 配置均支持端口转发列表, 每一个列表均指定了为其提供访问的应用所使用的本地和远程端口 由于每个组策略或用户名仅支持一个端口转发列表, 必须将每个受支持的 CA 组分组到列表中 步骤 1 步骤 2 显示 ASA 配置中已有的端口转发列表条目 show run webvpn port-forward 切换至无客户端 SSL VPN 配置模式 webvpn 按照下一节中所述, 遵循端口转发列表的配置, 将列表分配给组策略或用户名 分配端口转发列表 可添加或编辑要与通过无客户端 SSL VPN 连接访问的用户或组策略关联的已命名 TCP 应用列表 对于每个组策略和用户名, 可以配置无客户端 SSL VPN 执行以下任一操作 : 在用户登录时自动启动端口转发访问 备注 对于每个组策略和用户名, 这些选项相互排斥 只能使用一个 13-9

254 配置端口转发 第 13 章 无客户端 SSL VPN 基本配置 准备工作 发出 port-forward enable <list name> 命令之前, 用户需要使用无客户端 SSL VPN 门户页面上的 Application Access > Start Applications 手动启动端口转发 这些命令可用于每个组策略和用户名 每个组策略和用户名的配置一次仅支持这些命令中的一个, 因此, 输入一个命令时,ASA 均会用新命令替换相关组策略或用户名的配置中已有的命令 ; 或者, 如果是最后一个命令, 只需从组策略或用户名配置中删除 port-forward 命令 步骤 1 步骤 2 步骤 3 在用户登录时自动启动端口转发 port-forward auto-start <list name> 用户登录时启用或阻止端口转发 port-forward enable <list name> port-forward disable ( 可选 ) 从组策略或用户名配置中删除 port-forward 命令, 然后从默认组策略继承 [no] port-forward 命令 port-forward 命令之后的关键字可选 ; 然而, 组策略或用户名配置限定于只能删除名为 port-forward 的命令 no port-forward [auto-start <list name> enable <list name> disable] 自动端口转发 要在用户登录时自动启动端口转发, 请输入以下命令 : 步骤 1 切换至无客户端 SSL VPN 配置模式 webvpn 步骤 2 切换至组策略或用户名无客户端 SSL VPN 配置模式 group-policy webvpn username webvpn 步骤 3 在用户登录时自动启动端口转发 list_name 命名 ASA 无客户端 SSL VPN 配置中已有的端口转发列表 不能将多个端口转发列表分配给一个组策略或用户名 以下示例将名为 apps1 的端口转发列表分配给组策略 hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# port-forward auto-start apps1 步骤 4 显示 ASA 配置中存在的端口转发列表条目 show run webvpn port-forward 步骤 5 ( 可选 ) 从组策略或用户名中删除 port-forward 命令并恢复默认设置 no port-forward 13-10

255 第 13 章 无客户端 SSL VPN 基本配置 配置文件访问 启用和关闭端口转发 默认情况下, 端口转发已关闭 步骤 1 步骤 2 步骤 3 步骤 4 启用端口转发 如果输入上一个表中的 port-forward auto-start list_name, 则无需手动启动端口转发 list_name 是 ASA 无客户端 SSL VPN 配置中已有的端口转发列表的名称 不能将多个端口转发列表分配给一个组策略或用户名 port-forward [enable <list name> disable] 以下示例将名为 apps1 的端口转发列表分配给组策略 hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# port-forward enable apps1 显示端口转发列表条目 show running-config port-forward ( 可选 ) 从组策略或用户名中删除 port-forward 命令并恢复默认设置 no port-forward ( 可选 ) 关闭端口转发 port-forward disable 配置文件访问 无客户端 SSL VPN 为远程用户提供与 ASA 上运行的代理 CIFS 和 / 或 FTP 客户端连接的 HTTPS 门户页面 通过使用 CIFS 或 FTP, 无客户端 SSL VPN 向用户提供对网络文件的网络访问, 在某种程度上, 用户需满足用户身份验证要求并且文件属性不会限制访问 CIFS 和 FTP 客户端是透明的 ; 无客户端 SSL VPN 所提供的门户页面提供直接访问文件系统的界面 当用户请求文件列表时, 无客户端 SSL VPN 将在被指定为主浏览器的服务器中查询包含该列表的服务器的 IP 地址 ASA 获取列表并将其提供给在门户页面上的远程用户 借助于无客户端 SSL VPN, 用户可根据用户身份验证要求和文件属性调用以下 CIFS 和 FTP 功能 : 导航并列出域和工作组 域或工作组中的服务器 服务器内的共享以及共享或目录内的文件 创建目录 下载 上传 重命名 移动和删除文件 当远程用户点击门户页面的菜单中或在无客户端 SSL VPN 会话期间显示的工具栏上的 Browse Networks 时,ASA 使用通常与 ASA 处于同一网络或可从该网络访问的主浏览器 WINS 服务器或 DNS 服务器在该网络中查询服务器列表 主浏览器或 DNS 服务器向 ASA 上的 CIFS/FTP 客户端提供网络资源的列表, 而无客户端 SSL VPN 则向远程用户提供该列表 备注 在配置文件访问之前, 必须在服务器上配置共享供用户访问 13-11

256 配置文件访问 第 13 章 无客户端 SSL VPN 基本配置 CIFS 文件访问要求和限制 要访问 \\server\share\subfolder\personal 文件夹, 用户至少必须具有所有父文件夹 ( 包括共享本身 ) 的读取权限 使用 Download 或 Upload, 在 CIFS 目录和本地桌面之间复制和粘贴文件 Copy 和 Paste 按钮仅适用于远程到远程操作, 不适用于本地到远程或远程到本地操作 CIFS 浏览服务器功能不支持双字节字符共享名称 ( 长度超过 13 个字符的共享名称 ) 这仅影响显示的文件夹列表, 不影响用户对文件夹的访问 作为解决方法, 可为使用双字节共享名称的 CIFS 文件夹预配置书签, 用户也可输入 URL 或用 cifs://server/<long-folder-name> 格式为文件夹添加书签 例如 : cifs://server/do you remember? cifs://server/do%20you%20remember%3f 添加对文件访问的支持 按以下所示配置文件访问 : 备注 此程序说明如何指定主浏览器和 WINS 服务器 或者, 可使用 ASDM 配置 URL 列表和条目提供对文件共享的访问 在 ASDM 中添加共享不需要主浏览器或 WINS 服务器 但是, 它不支持浏览网络链接 在输入 nbns-server 命令时, 可使用主机名或 IP 地址指代 ServerA 如使用主机名,ASA 需要 DNS 服务器将其解析为 IP 地址 步骤 1 步骤 2 步骤 3 切换至无客户端 SSL VPN 配置模式 webvpn 切换至隧道组无客户端 SSL VPN 配置模式 tunnel-group webvpn 浏览每个 NetBIOS 名称服务器 (NBNS) 的网络或域 master 是指定为主浏览器的计算机 主浏览器维护计算机和共享资源的列表 使用此命令 ( 但不输入该命令的 master 部分 ) 标识的任何 NBNS 服务器均必须为 Windows Internet 命名服务器 (WINS) 首先指定主浏览器, 然后指定 WINS 服务器 最多可为连接配置文件指定三台服务器, 包括主浏览器 timeout 是在向同一台服务器 ( 若只有一台服务器 ) 或其他服务器 ( 若有多台服务器 ) 再次发送查询之前 ASA 等待的秒数 默认超时是 2 秒, 范围是 1 至 30 秒 retries 是向 NBNS 服务器重试查询的次数 ASA 在发送错误消息之前按此次数循环查询服务器列表 默认值为 2; 范围为 1 至 10 nbns-server {IPaddress hostname} [master] [timeout timeout] [retry retries] hostname(config-tunnel-webvpn)# nbns-server master hostname(config-tunnel-webvpn)# nbns-server hostname(config-tunnel-webvpn)# nbns-server

257 第 13 章 无客户端 SSL VPN 基本配置 确保 SharePoint 访问的时钟准确性 步骤 4 步骤 5 显示连接配置文件配置中已有的 NBNS 服务器 hostname# show tunnel-group webvpn-attributes ( 可选 ) 指定要在提供给远程用户的无客户端 SSL VPN 门户页面中编码的字符集 默认情况下, 远程浏览器中的编码类型集决定了无客户端 SSL VPN 门户页面的字符集, 因此, 只有在需要确保在浏览器中正确编码的情况下才需要设置字符编码 charset 是最多包含 40 个字符的字符串, 并且与在 中标识的其中一个有效字符集相同. 您可以使用在此页面上列出的字符集的名称或别名 示例包括 iso shift_jis 和 ibm850 character-encoding charset 注意字符编码和文件编码值包括浏览器所使用的字体族 如果使用日语 Shift_JIS 字符编码, 则需要在 webvpn 自定义命令模式下使用 page style 命令对上述值之一进行补充设置, 以替换字体族 ( 如以下示例所示 ); 或者在 webvpn 自定义命令模式下输入 no page style 命令, 以删除字体族 以下示例将字符编码属性设置为支持日语 Shift_JIS 字符, 删除字体族, 并保留默认背景颜色 hostname(config)# webvpn hostname(config-webvpn)# character-encoding shift_jis hostname(config-webvpn)# customization DfltCustomization hostname(config-webvpn-custom)# page style background-color:white 步骤 6 ( 可选 ) 从特定 CIFS 服务器为无客户端 SSL VPN 门户页面指定编码 这样, 您就可以将不同的 file-encoding 值用于需要不同字符编码的 CIFS 服务器 file-encoding {server-name server-ip-address} charset 以下示例设置 CIFS 服务器 的 file-encoding 属性, 以支持 IBM860( 别名 CP860 ) 字符 : hostname(config-webvpn)# file-encoding cp860 后续操作 有关这些命令的完整说明, 请参阅 命令参考 确保 SharePoint 访问的时钟准确性 ASA 上的无客户端 SSL VPN 服务器使用 Cookie 与终端上的 Microsoft Word 等应用交互 如果 ASA 上的时间不正确, 在访问 SharePoint 服务器上的文档时,ASA 设置的 Cookie 过期时间可导致 Word 出现故障 为防止此故障, 请正确设置 ASA 时钟 我们建议将 ASA 配置为与 NTP 服务器动态同步时间 有关说明, 请参阅一般操作配置指南中关于设置日期和时间一节 13-13

258 虚拟桌面基础设施 (VDI) 第 13 章 无客户端 SSL VPN 基本配置 虚拟桌面基础设施 (VDI) ASA 支持与 Citrix 和 VMWare VDI 服务器的连接 对于 Citrix,ASA 允许通过无客户端门户访问用户运行的 Citrix Receiver VMWare 已配置为 ( 智能隧道 ) 应用 与其他服务器应用一样, 通过无客户端门户上的书签也可以访问 VDI 服务器 VDI 的限制 由于这些形式的身份验证不允许中间的 ASA, 不支持在自动登录时使用证书或智能卡进行身份验证 必须在 XenApp 和 XenDesktop 服务器上安装和配置 XML 服务 在使用独立移动客户端时, 不支持客户端证书验证 双重身份验证 内部密码和 CSD( 全部 CSD, 不只是 Vault) Citrix 移动支持 运行 Citrix Receiver 的移动用户可按以下方式连接至 Citrix 服务器 : 使用 AnyConnect 连接至 ASA, 然后连接至 Citrix 服务器 通过 ASA 连接至 Citrix 服务器, 无需使用 AnyConnect 客户端 登录凭证可能包括 : Citrix 登录屏幕中的连接配置文件别名 ( 也称为隧道组别名 ) VDI 服务器可能有多个组策略, 每个都具有不同的授权和连接设置 配置 RSA 服务器时的 RSA SecureID 令牌值 RSA 支持包括用于无效条目的下一个令牌, 也包括用于为初始或过期 PIN 输入新 PIN 的下一个令牌 Citrix 支持的移动设备 ipad - Citrix Receiver 版本 4.x 或更高版本 iphone/itouch - Citrix Receiver 版本 4.x 或更高版本 Android 2.x/3.x/4.0/4.1 手机 - Citrix Receiver 版本 2.x 或更高版本 Android 4.0 手机 - Citrix Receiver 版本 2.x 或更高版本 Citrix 的限制 证书限制 不支持将证书 / 智能卡身份验证作为自动登录方式 不支持客户端证书验证和 CSD 由于安全问题, 证书中的 MD5 签名无效, 此问题已在 ios 中出现, 详情请访问以下网址 : 如 Citrix 网站所述, 只有 Windows 支持 SHA2 签名, 详情请访问以下网址 : 不支持超过 1024 个字节的密钥 13-14

259 第 13 章 无客户端 SSL VPN 基本配置 虚拟桌面基础设施 (VDI) 其他限制 不支持 HTTP 重定向 ;Citrix Receiver 应用不适用于重定向 必须在 XenApp 和 XenDesktop 服务器上安装和配置 XML 服务 关于 Citrix Mobile Receiver 用户登录 连接到 Citrix 服务器的移动用户的登录方式取决于 ASA 是将 Citrix 服务器配置为 VDI 服务器, 还是配置为 VDI 代理服务器 当 Citrix 服务器配置为 VDI 服务器时 : 1. 使用 AnyConnect 安全移动客户端, 通过 VPN 凭证连接至 ASA 2. 使用 Citrix Mobile Receiver, 通过 Citrix 服务器凭证连接至 Citrix 服务器 ( 如已配置单点登录, 则不需要 Citrix 凭证 ) 当 ASA 配置为 VDI 代理服务器时 : 1. 使用 Citrix Mobile Receiver 连接至 ASA, 同时输入 VPN 和 Citrix 服务器的凭证 在第一次连接后, 如果配置正确, 后续连接只需要 VPN 凭证 将 ASA 配置为代理 Citrix 服务器 可将 ASA 配置为充当 Citrix 服务器的代理, 使 ASA 的连接对于用户而言看起来与 Citrix 服务器的连接相似 在 ASDM 中启用 VDI 代理时, 不需要 AnyConnect 客户端 以下概要步骤显示最终用户如何连接至 Citrix 步骤 1 移动用户打开 Citrix Receiver 并连接至 ASA 的 URL 步骤 2 步骤 3 用户为 XenApp 服务器提供凭证和 Citrix 登录屏幕上的 VPN 凭证 对于 Citrix 服务器的每个后续连接, 用户只需输入 VPN 凭证 如将 ASA 用作 XenApp 和 XenDesktop 的代理, 则不需要 Citrix 访问网关 XenApp 服务器信息记录在 ASA 上并显示在 ASDM 中 配置 Citrix 服务器的地址和登录凭证, 并将该 VDI 服务器分配给组策略或用户名 如已配置用户名和组策略, 则用户名设置将覆盖组策略设置 后续操作 - 此视频介绍将 ASA 用作 Citrix 代理的优势 将 VDI 服务器分配给组策略 已按以下方式配置 VDI 服务器并将其分配给组策略 : 在 VDI Access 窗格上添加 VDI 服务器, 并将组策略分配给该服务器 将 VDI 服务器添加至组策略 如果用户名和组策略都已配置, 则用户名设置优先于组策略 输入以下命令 : configure terminal group-policy DfltGrpPolicy attributes webvpn 13-15

260 使用 SSL 访问内部服务器 第 13 章 无客户端 SSL VPN 基本配置 vdi type <citrix> url <url> domain <domain> username <username> password <password> configure terminal username <username> attributes webvpn vdi type <citrix> url <url> domain <domain> username <username> password <password>] 语法选项定义如下 : type - VDI 的类型 对 Citrix Receiver 类型, 该值必须为 citrix url - XenApp 或 XenDesktop 服务器的完整 URL, 包括 http 或 https 主机名和端口号, 以及 XML 服务的路径 username - 用于登录虚拟化基础设施服务器的用户名 此值可以是无客户端宏 password - 用于登录虚拟化基础设施服务器的密码 此值可以是无客户端宏 domain - 用于登录虚拟化基础设施服务器的域 此值可以是无客户端宏 使用 SSL 访问内部服务器 步骤 1 步骤 2 切换至组策略无客户端 SSL VPN 配置模式 webvpn 关闭 URL 条目 url-entry disable 无客户端 SSL VPN 使用 SSL 及其继任者 TLS1 在远程用户与内部服务器上受支持的特定内部资源之间提供安全连接 将 HTTPS 用于无客户端 SSL VPN 会话 准备工作 在 Web 浏览器中, 用户输入 格式的 ASA 地址, 其中 address 是 ASA 接口的 IP 地址或 DNS 主机名 必须在用户所连接的 ASA 接口上启用无客户端 SSL VPN 会话 必须使用 HTTPS 访问 ASA 或负载均衡集群 步骤 1 步骤 2 切换至无客户端 SSL VPN 配置模式 webvpn 在外部调用的接口上启用无客户端 SSL VPN 会话 enable < 用于无客户端 SSL VPN 会话的接口的名称 > 13-16

261 第 13 章 无客户端 SSL VPN 基本配置 使用 SSL 访问内部服务器 hostname(config)# webvpn hostname(config-webvpn)# enable outside 配置无客户端 SSL VPN 和 ASDM 端口 从版本 8.0(2) 开始,ASA 在外部接口的端口 443 上同时支持无客户端 SSL VPN 会话和 ASDM 管理会话 可在不同的接口上配置这些应用 步骤 1 步骤 2 切换至无客户端 SSL VPN 配置模式 webvpn 为无客户端 SSL VPN 更改 SSL 侦听端口 port port_number 此示例在外部接口的端口 444 上启用无客户端 SSL VPN 在此配置下, 发起无客户端 SSL VPN 会话的远程用户需在浏览器中输入 步骤 3 hostname(config)# http server enable hostname(config)# http outside hostname(config)# webvpn hostname(config-webvpn)# port 444 hostname(config-webvpn)# enable outside ( 特权模式 ) 为 ASDM 更改侦听端口 http server enable 此示例指定 HTTPS ASDM 会话使用外部接口上的端口 444 无客户端 SSL VPN 也在外部接口上启用并使用默认端口 (443) 在此配置下, 远程用户通过输入 发起 ASDM 会话 hostname(config)# http server enable hostname(config)# http outside hostname(config)# webvpn hostname(config-webvpn)# enable outside 配置对代理服务器的支持 ASA 可终止 HTTPS 连接并将 HTTP 和 HTTPS 请求转发至代理服务器 这些服务器在用户与公共或专用网络之间充当中介 如果要求通过组织控制的代理服务器进行网络访问, 则可提供其他过滤机会, 以确保安全的网络访问和管理控制 在配置对 HTTP 和 HTTPS 代理服务的支持时, 可分配将随每个基本身份验证请求一起发送的预设凭证 还可指定要从 HTTP 和 HTTPS 请求中排除的 URL 准备工作可指定要从 HTTP 代理服务器下载的代理自动配置 (PAC) 文件, 但在指定 PAC 文件时不能使用代理身份验证 13-17

262 使用 SSL 访问内部服务器 第 13 章 无客户端 SSL VPN 基本配置 步骤 1 步骤 2 切换至无客户端 SSL VPN 配置模式 webvpn 将 ASA 配置为使用外部代理服务器处理 HTTP 和 HTTPS 请求 http-proxy 和 https-proxy 注意 http-proxy 中不支持代理 NTLM 身份验证 仅支持无身份验证的代理和基本身份验证 步骤 3 步骤 4 配置 HTTP 代理 http-proxy host [port] [exclude url] [username username {password password}] 配置 HTTPS 代理 https-proxy host [port] [exclude url] [username username {password password}] 步骤 5 设置 PAC 文件 URL http-proxy pac url 步骤 6 ( 可选 ) 从可发送至代理服务器的请求中排除 URL exclude 步骤 7 提供外部代理服务器的主机名或 IP 地址 host 步骤 8 使用 JavaScript 函数 ( 用于标识每个 URL 的代理 ) 将代理自动配置文件下载至 ASA pac 步骤 9 步骤 10 步骤 11 步骤 12 步骤 13 ( 可选, 并且仅在指定用户名时可用 ) 随每个代理请求提供一个密码, 用于提供基本代理身份验证 密码 随每个 HTTP 或 HTTPS 请求一起将密码发送至代理服务器 密码 ( 可选 ) 提供代理服务器使用的端口号 默认 HTTP 端口为 80 默认 HTTPS 端口为 443 如果未指定替代值, 则 ASA 使用上述两个端口 范围为 port 如果已输入 exclude, 则请输入一个 URL 或一系列用逗号分隔的 URL, 以从可发送至代理服务器的请求中排除这些 URL 字符串没有字符数限制, 但整个命令不能超过 512 个字符 可以指定文本 URL 或使用以下通配符 : * 匹配任意字符串, 包括斜杠 (/) 和句点 (.) 此通配符必须与字母数字字符串一起使用? 匹配任意单个字符, 包括斜杠和句点 [x-y] 匹配 x 与 y 之间的任何单个字符, 其中 x 代表 ANSI 字符集中的一个字符,y 代表 ANSI 字符集中的另一个字符 [!x-y] 匹配不在此范围内的任何单个字符 url 如已输入 http-proxy pac, 请在其后输入 ttp:// 并键入代理自动配置文件的 URL ( 如果省略 部分, 则 CLI 将忽略命令 ) 13-18

263 第 13 章 无客户端 SSL VPN 基本配置 使用 SSL 访问内部服务器 步骤 14 步骤 15 步骤 16 ( 可选 ) 随每个 HTTP 代理请求提供用于基本代理身份验证的用户名 仅 http-proxy host 命令支持该关键字 username 随每个 HTTP 或 HTTPS 请求一起将用户名发送至代理服务器 username 显示如何配置通过默认端口同时使用 HTTP 代理服务器与 IP 地址 , 从而随每个 HTTP 请求发送用户名和密码 hostname(config-webvpn)# http-proxy user jsmith password mysecretdonttell hostname(config-webvpn) 步骤 17 步骤 18 显示相同的命令, 但在 ASA 接收 HTTP 请求中的特定 URL 时除外, 此时它将解析请求而不是将请求传递给代理服务器 hostname(config-webvpn)# http-proxy exclude username jsmith password mysecretdonttell hostname(config-webvpn) 显示如何指定 URL, 以便为浏览器提供代理自动配置文件 hostname(config-webvpn)# http-proxy pac hostname(config-webvpn) ASA 无客户端 SSL VPN 配置仅支持一个 http-proxy 和一个 https-proxy 命令 例如, 如果正在运行的配置中已有一个 http-proxy 命令的实例, 而您又输入了另一个实例, 则 CLI 将覆盖上一个实例 备注 http-proxy 中不支持代理 NTLM 身份验证 仅支持无身份验证的代理和基本身份验证 配置 SSL/TLS 加密协议 端口转发需要 Oracle Java 运行时环境 (JRE) 当无客户端 SSL VPN 的用户使用某些 SSL 版本进行连接时, 端口转发无法工作 有关支持的 JRE 版本, 请参阅兼容性列表 使用数字证书进行身份验证 SSL 使用数字证书进行身份验证 ASA 在启动时创建自签名 SSL 服务器证书 ; 或者您可在 ASA 中安装 PKI 情景中已发行的 SSL 证书 对于 HTTPS, 必须将此证书安装在客户端上 13-19

264 配置浏览器对客户端 - 服务器插件的访问 第 13 章 无客户端 SSL VPN 基本配置 数字证书身份验证的限制 MS Outlook MS Outlook Express 和 Eudora 等邮件客户端无法访问证书存储区 有关使用数字证书进行身份验证和授权的详细信息, 请参阅一般操作配置指南中关于使用证书和用户登录凭证一节 配置浏览器对客户端 - 服务器插件的访问 客户端 - 服务器插件表显示了 ASA 在无客户端 SSL VPN 会话中可供浏览器使用的插件 要添加 更改或删除插件, 请执行以下操作之一 : 要添加插件, 请点击 Import 系统将打开 Import Plug-ins 对话框 要删除插件, 请将其选中并点击 Delete 关于安装浏览器插件 浏览器插件是 Web 浏览器在执行专用功能时 ( 例如, 在浏览器窗口中将客户端连接至服务器 ) 调用的一个独立程序 借助于 ASA, 可在无客户端 SSL VPN 会话中导入要下载至远程浏览器的插件 当然, 思科将测试再分发的插件, 在某些情况下, 还将测试其无法再分发的插件的连接性 但是, 我们建议不要导入目前支持流媒体的插件 安装闪存设备中的插件时,ASA 将执行以下操作 : ( 仅限思科分发的插件 ) 解压缩 URL 中指定的 jar 文件 将文件写入 ASA 文件系统中的 csco-config/97/plugin 目录 填充 ASDM 中 URL 属性旁边的下拉列表 为所有未来的无客户端 SSL VPN 会话启用插件, 然后添加主菜单选项并将一个选项添加至门户页面 Address 字段旁边的下拉列表 下表显示了在添加以下各节中介绍的插件时门户页面的主菜单和地址字段发生的变化 表 13-3 插件在无客户端 SSL VPN 门户页面上的效果 插件 添加到门户页面的主菜单选项 添加到门户页面的 Address 字段选项 ica Citrix Client citrix:// rdp Terminal Servers rdp:// rdp2 Terminal Servers Vista rdp2:// ssh,telnet SSH ssh:// Telnet telnet:// vnc VNC Client vnc:// 备注 辅助 ASA 会从主 ASA 获取插件 13-20

265 第 13 章 无客户端 SSL VPN 基本配置 配置浏览器对客户端 - 服务器插件的访问 当无客户端 SSL VPN 会话中的用户在门户页面上点击关联的菜单选项时, 门户页面会在界面上显示一个窗口, 并显示一个帮助窗格 用户可选择下拉列表中显示的协议, 并在 Address 字段中输入 URL 以建立连接 备注 即使目标服务的会话未建立, 某些 Java 插件也可能报告已连接或联机状态 状态将由开放源码插件报告, 而不是 ASA 准备工作 如果安全设备将无客户端会话配置为使用代理服务器, 则插件无法工作 注意 远程桌面协议插件不支持用会话代理程序进行负载均衡 由于协议处理源自会话代理程序的重定向的方法不当, 连接失败 如未使用会话代理程序, 插件将正常工作 安装浏览器插件的要求 插件支持单点登录 (SSO) 它们使用所输入的相同凭证打开无客户端 SSL VPN 会话 因为插件不支持宏替换, 您无法选择对不同的字段 ( 例如内部域密码 ) 或 RADIUS 或 LDAP 服务器上的属性执行 SSO 要为插件配置 SSO 支持, 请安装插件, 添加书签条目以显示服务器链接, 并在添加书签时指定 SSO 支持 远程使用所需的最低访问权限属于访客特权模式 按照 GNU 通用公共许可证 (GPL) 的规定, 思科在不对插件进行任何更改的情况下再分发插件 按照 GPL 的规定, 思科不能直接增强这些插件的功能 只有在 ASA 上启用无客户端 SSL VPN, 才能远程访问插件 状态故障切换不保留使用插件建立的会话 完成故障切换之后, 用户必须重新连接 插件要求对浏览器启用 ActiveX 或 Oracle Java 运行时环境 (JRE) 1.4.2( 或更高版本 ) 没有适用于 64 位浏览器的 ActiveX 版本的 RDP 插件 设置 RDP 插件 要设置和使用 RDP 插件, 必须添加新的环境变量 步骤 1 步骤 2 右键点击 My Computer 访问 System Properties, 然后选择 Advanced 选项卡 在 Advanced 选项卡上, 选择 Environment Variables 按钮 步骤 3 在 New User Variable 对话框中, 输入变量 RF_DEBUG 步骤 4 步骤 5 步骤 6 步骤 7 验证用户变量部分中的新环境变量 如将客户端计算机与版本低于 8.3 版的无客户端 SSL VPN 使用, 则必须删除旧版思科 Portforwarder 控件 转至目录 C:/WINDOWS/Downloaded Program Files, 右键点击 portforwarder 控件, 然后选择 Remove 清除 Internet Explorer 浏览器的所有缓存 启动无客户端 SSL VPN 会话并用 RDP ActiveX 插件建立 RDP 会话 现在, 您可以在 Windows 应用事件查看器中查看事件 13-21

266 配置浏览器对客户端 - 服务器插件的访问 第 13 章 无客户端 SSL VPN 基本配置 为插件准备安全设备 步骤 1 确保已在一个 ASA 接口上启用无客户端 SSL VPN 步骤 2 在远程用户使用完全限定域名 (FQDN) 连接的 ASA 接口上安装 SSL 证书 注意 请勿将 IP 地址指定为 SSL 证书的通用名称 (CN) 远程用户尝试使用 FQDN 与 ASA 进行通信 远程 PC 必须能够使用 DNS 或 System32\drivers\etc\hosts 文件中的条目来解析 FQDN 为使用新的 HTML 文件配置 ASA 步骤 1 将文件和图像作为 Web 内容导入 import webvpn webcontent <file> <url> hostname# import webvpn webcontent /+CSCOU+/login.inc tftp:// /login.inc!!!!* Web resource `+CSCOU+/login.inc' was successfully initialized hostname# 步骤 2 导出自定义模板 export webvpn customization <file> <URL> hostname2# export webvpn customization template tftp:// /sales_vpn_login!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! %INFO: Customization object 'Template' was exported to tftp:// /sales _vpn_login 步骤 3 步骤 4 在要启用的文件中更改完全自定义模式标记 此示例提供的是 ASA 内存中存储的登录文件的 URL <full-customization> <mode>enable</mode> <url>/+cscou+/login.inc</url> </full-customization> 导入该文件作为新的自定义对象 hostname# import webvpn customization sales_vpn_login tftp:// /sales_vpn_login$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! %INFO: customization object 'sales_vpn_login' was successfully imported 13-22

267 第 13 章 无客户端 SSL VPN 基本配置 配置浏览器对客户端 - 服务器插件的访问 步骤 5 将自定义对象应用于连接配置文件 ( 隧道组 ) hostname(config)# tunnel-group Sales webvpn-attributes hostname(config-tunnel-webvpn)#customization sales_vpn_login 13-23

268 配置浏览器对客户端 - 服务器插件的访问 第 13 章 无客户端 SSL VPN 基本配置 13-24

269 第 14 章 高级无客户端 SSL VPN 配置 Microsoft Kerberos 约束委派解决方案 很多组织都想要对其无客户端 VPN 用户进行身份验证并使用超出现在 ASA 可以提供的身份验证方式将身份验证凭据无缝扩展至基于 Web 的资源 随着对使用智能卡和一次性密码 (OTP) 的远程访问用户进行身份验证的需求日益增长,SSO 功能无法满足这种需求, 因为当需要进行身份验证时, 它只是向基于 Web 的无客户端资源转发静态用户名和密码等传统用户凭据 例如, 证书和基于 OTP 的身份验证方式都不包含 ASA 对基于 Web 的资源无缝地进行 SSO 访问所需的传统用户名和密码 利用证书进行身份验证时,ASA 不需要用户名和密码即可扩展至基于 Web 的资源, 使其成为 SSO 不支持的一种身份验证方式 另一方面, 虽然 OTP 确实包括静态用户名, 但密码是动态的, 并且随后在整个 VPN 会话期间也会发生改变 一般来说, 基于 Web 的资源都配置为接受静态用户名和密码, 因此也使 OTP 成为 SSO 不支持的一种身份验证方式 Microsoft 的 Kerberos 约束委派 (KCD) 是 ASA 的 8.4 版本软件中引入的一个新功能, 可提供对专用网络中受 Kerberos 保护的 Web 应用的访问 利用此优势, 您可以无缝地将基于证书和 OTP 的身份验证方式扩展至 Web 应用 因此, 通过同时但独立地使用 SSO 和 KCD, 现在很多组织都可以对无客户端 VPN 用户进行身份验证, 并将他们的身份验证凭据无缝扩展至使用 ASA 支持的所有身份验证方式的 Web 应用 Microsoft Kerberos 的要求 为了让 kcd-server 命令正常运行,ASA 必须在源域 ( 即 ASA 所属的域 ) 和目标或资源域 ( 即 Web 服务所在的域 ) 之间建立信任关系 ASA 使用其独特的格式, 跨越从源到目标域的证书路径并代表远程访问用户获取访问服务所需的票证 这种跨越证书路径的操作叫做跨域身份验证 在跨域身份验证的每个阶段,ASA 依赖于特定域上的凭据和与后续域的信任关系 KCD 运行机制 Kerberos 依赖受信任的第三方来验证网络中实体的数字身份 这些实体 ( 例如用户 主机和主机上运行的服务 ) 称为主体, 并且必须位于同一个域内 Kerberos 使用票证, 而不是使用密钥, 来验证访问服务器的客户端 票证源于密钥, 由客户端的身份 加密的会话密钥和标志组成 每个票证由密钥分发中心发行并具有设定的生命期 14-1

270 KCD 运行机制 第 14 章 高级无客户端 SSL VPN 配置 Kerberos 安全系统是一种身份验证协议, 用于验证实体 ( 用户 计算机或应用 ) 并通过打乱数据从而使只有指定接收该信息的设备可以解密这些数据保护网络传输 您可以配置 KCD, 向无客户端 SSL VPN 用户提供对任何受 Kerberos 保护的 Web 服务的 SSO 访问 这类 Web 服务或应用示例包括 Outlook Web Access (OWA) Sharepoint 和互联网信息服务器 (IIS) Kerberos 协议实施了两项扩展 : 协议转换和约束委派 这两项扩展允许无客户端 SSL VPN 远程访问用户访问专用网络中通过 Kerberos 身份验证的应用 协议转换在用户身份验证层面支持不同的身份验证机制, 而且会在随后的应用层中切换至 Kerberos 协议以获得更多安全功能 ( 例如相互身份验证和约束委派 ), 从而为您提供了更高的灵活性和安全性 约束委派为域管理员提供了一种通过限制应用服务可以代表用户的情况指定并执行应用信任边界的方法 这种灵活性减少了受不信任服务危害的几率, 改善了应用安全设计 有关约束委派的详细信息, 请通过 IETF 网站参阅 RFC 1510 ( 使用 KCD 的身份验证流程 下图描述用户通过无客户端门户访问被信任进行委派的资源时直接和间接体验的数据包和流程 此流程假设已完成以下任务 : 已在 ASA 上配置 KCD 已加入 Windows Active Directory, 并已确保服务被信任进行委派 已委派 ASA 作为 Windows Active Directory 域的成员 图 14-1 KCD 流程 14-2

271 第 14 章 高级无客户端 SSL VPN 配置 KCD 运行机制 注意 无客户端用户会话由 ASA 使用为用户配置的身份验证机制进行身份验证 ( 在使用智能卡凭据的情况下,ASA 使用数字证书的 userprincipalname 对 Windows Active Directory 执行 LDAP 授权 ) 1. 身份验证成功后, 用户登录进入 ASA 无客户端门户页面 用户可以通过在门户页面中输入 URL 或点击书签访问 Web 服务 如果 Web 服务要求进行身份验证, 服务器将请求 ASA 提供凭据并发送一份受服务器支持的身份验证方式列表 注意适用于无客户端 SSL VPN 的 KCD 支持所有身份验证方式 (RADIUS RSA/SDI LDAP 数字证书等等 ) 请参阅 AAA 支持表格, 网址为 #wp 根据请求中的 HTTP 报头,ASA 确定服务器是否要求进行 Kerberos 身份验证 ( 这是 SPNEGO 机制的一部分 ) 如果连接到后端服务器要求进行 Kerberos 身份验证,ASA 将代表密钥分发中心的用户为自身请求获取服务票证 3. 密钥分发中心将向 ASA 返回所请求的票证 虽然这些票证会传递到 ASA, 但它们包含用户的授权数据 ASA 为用户要访问的特定服务从 KDC 请求服务票证 注意 步骤 1 至 3 包含协议转换 完成这些步骤后, 任何使用非 Kerberos 身份验证协议进行身份验证访问 ASA 的用户都显然已使用 Kerberos 向密钥分发中心完成身份验证 4. ASA 为用户想要访问的特定服务向密钥分发中心请求获取服务票证 5. 密钥分发中心将特定服务的服务票证返回至 ASA 6. ASA 使用此服务票证请求访问 Web 服务 7. Web 服务器对 Kerberos 服务票证进行身份验证并授权访问此服务 如果身份验证失败, 系统将显示相应的错误消息并要求确认 如果 Kerberos 身份验证失败, 预期行为是退回到基本身份验证 为跨领域身份验证配置 ASA 要为跨域身份验证配置 ASA, 您必须使用以下命令 步骤 1 加入 Active Directory 域 域控制器 ( 可在接口内接触到 ) ntp hostname hostname(config)# configure terminal # 为域控制器创建别名 hostname(config)# name DC #Configure the Name server 14-3

272 KCD 运行机制 第 14 章 高级无客户端 SSL VPN 配置 步骤 2 执行查找 本示例显示 private.net 的域名以及使用 dcuser 作为用户名并使用 dcuser123! 作为密码的域控制器上的服务帐户 dns domain-lookup dns server-group hostname(config)# ntp server DC #Enable a DNS lookup by configuring the DNS server and Domain name hostname(config)# dns domain-lookup inside hostname(config)# dns server-group DefaultDNS hostname(config-dns-server-group)# name-server DC hostname(config-dns-server-group)# domain-name private.net #Configure the AAA server group with Server and Realm hostname(config)# aaa-server KerberosGroup protocol Kerberos hostname(config-asa-server-group)# aaa-server KerberosGroup (inside) host DC hostname(config-asa-server-group)# Kerberos-realm PRIVATE.NET #Configure the Domain Join hostname(config)# webvpn hostname(config-webvpn)# kcd-server KerberosGroup username dcuser password dcuser123! hostname(config)# 配置 KCD 要使 ASA 加入 Windows Active Directory 域并返回成功或失败状态, 请执行以下步骤 步骤 1 切换至无客户端 SSL VPN 配置模式 webvpn 步骤 2 配置 KCD kcd-server 步骤 3 指定域控制器名称和领域 AAA 服务器组必须是 Kerberos 类型 kcd-server aaa-server-group ASA(config)# aaa-server KG protocol kerberos ASA(config)# aaa-server KG (inside) host DC ASA(config-aaa-server-host)# kerberos-realm test.edu ASA(webvpn-config)# kcd-server KG username user1 password abc123 ASA(webvpn-config)# no kcd-server 步骤 4 步骤 5 ( 可选 ) 为 ASA 删除指定行为 no kcd-server ( 可选 ) 重置为内部状态 kcd-server reset 14-4

273 第 14 章 高级无客户端 SSL VPN 配置 KCD 运行机制 步骤 6 检查是否存在 KCD 服务器并启动域加入进程 Active Directory 用户名和密码只用于 EXEC 模式下并且不保存在配置中 注意 首次加入需要具备管理权限 域控制器上具有服务级别权限的用户不会获得访问权限 kcd domain-join username <user> password <pass> user - 不对应特定管理用户, 只是具有在 Windows 域控制器上添加设备的服务级别权限的用户 pass The password does not correspond to a specific password but simply a user with service-level password privileges to add a device on the Windows domain controller 步骤 7 验证 KCD 服务器命令是否具有有效的域加入状态, 然后发起离开域 kcd domain-leave 显示 KCD 状态信息 要显示域控制器信息和域加入状态, 请输入以下命令 : show webvpn kcd 示例 ASA# show webvpn kcd KCD-Server Name: DC User : user1 Password : **** KCD State : Joined 显示缓存的 Kerberos 票证 要显示在 ASA 上缓存的所有 Kerberos 票证, 请输入以下命令 : show aaa kerberos [username user host ip hostname] 示例 ASA# show aaa kerberos Default Principal Valid Starting Expires Service Principal asa@example.com 06/29/10 18:33:00 06/30/10 18:33:00 krbtgt/example.com@example.com kcduser@example.com06/29/10 17:33:00 06/30/10 17:33:00 asa$/example.com@example.com kcduser@example.com06/29/10 17:33:00 06/30/10 17:33:00 http/owa.example.com@example.com ASA# show aaa kerberos username kcduser Default Principal Valid Starting Expires Service Principal kcduser@example.com06/29/10 17:33:00 06/30/10 17:33:00 asa$/example.com@example.com kcduser@example.com06/29/10 17:33:00 06/30/10 17:33:00 http/owa.example.com@example.com ASA# show aaa kerberos host owa.example.com Default Principal Valid Starting Expires Service Principal kcduser@example.com06/29/10 06/30/10 17:33:

274 配置应用程序配置文件自定义框架 第 14 章 高级无客户端 SSL VPN 配置 清除缓存的 Kerberos 票证 要清除 ASA 上的所有 Kerberos 票证信息, 请输入以下命令 : clear aaa kerberos [username user host ip hostname] user - 用于清除特定用户的 Kerberos 票证 hostname - 用于清除特定主机的 Kerberos 票证 配置应用程序配置文件自定义框架 无客户端 SSL VPN 包含一个 Application Profile Customization Framework (APCF) 选项, 其允许 ASA 处理非标准应用和 Web 资源, 以便通过无客户端 SSL VPN 连接正确显示它们 APCF 配置文件包含为特定应用指定何时 ( 之前 之后 ) 在何处( 报头 正文 请求 响应 ) 转换什么内容 ( 数据 ) 的脚本 脚本在 XML 中并使用 sed( 数据流编辑器 ) 语法转换字符串 / 文本 您可以同时在 ASA 上配置和运行多个 APCF 配置文件 在 APCF 配置文件脚本中, 可应用多个 APCF 规则 ASA 根据配置历史记录首先处理最早的规则, 接下来处理下一个最早的规则 您可以将 APCF 配置文件存储在 ASA 闪存上, 或者存储在 HTTP HTTPS 或 TFTP 服务器上 我们建议您只有在思科人员的帮助下方可配置 APCF 配置文件 管理 APCF 数据包 步骤 1 步骤 2 切换至无客户端 SSL VPN 配置模式 webvpn 确定并找到要加载到 ASA 上的 APCF 配置文件 本示例显示如何启用位于闪存上的 APCF 配置文件 apcf1.xml, 以及如何启用位于 HTTPS 服务器 myserver 端口 1440 上的 APCF 配置文件 apcf2.xml, 其中路径为 /apcf apcf hostname(config)# webvpn hostname(config-webvpn)# apcf flash:/apcf/apcf1.xml hostname(config)# webvpn hostname(config-webvpn)# apcf APCF 语法 APCF 配置文件采用 XML 格式和 sed 脚本语法, 同时采用下表中的 XML 标签 APCF 的准则 APCF 配置文件使用错误可能导致性能下降和出现内容呈现意外 在大多数情况下, 思科工程部供应 APCF 配置文件来解决特定应用呈现问题 14-6

275 第 14 章 高级无客户端 SSL VPN 配置 配置应用程序配置文件自定义框架 表 14-1 APCF XML 标签 标记 <APCF>...</APCF> <version>1.0</version> <application>...</application> <id> 文本 </id> <apcf-entities>...</apcf-entities> <js-object> </js-object> <html-object> </html-object> <process-request-header>...</process-request-header> <process-response-header>...</process-response-header> <preprocess-response-body>...</preprocess-response-body> <postprocess-response-body>...</postprocess-response-body> 使用 打开任何 APCF XML 文件的强制性根元素 指定 APCF 实施版本的强制性标签 目前唯一的版本是 1.0 包围 XML 说明的正文的强制性标签 描述这个特定 APCF 功能的强制性标签 包围一个或多个 APCF 实体的强制性标签 这些标签之一指定内容的类型或应该发生 APCF 处理的阶段 <conditions> </conditions> 指定处理标准的处理前 / 后标签的子元素, 例如 : http-version( 例如 ) http-method(get put post webdav) http-scheme( http/ https/ 其他 ) server-regexp regular expression containing ("a".."z" "A".."Z" "0".."9" ".-_*[]?") server-fnmatch( 正则表达式, 包含 ("a".."z" "A".."Z" "0".."9" ".-_*[]?+()\{},"), user-agent-regexp user-agent-fnmatch request-uri-regexp request-uri-fnmatch <action> </action> 如果存在不止一个条件标签,ASA 将对所有标签执行逻辑 AND 运算 包围在特定条件下对内容执行的一项或多项操作 ; 您可以使用以下标签来定义这些操作 ( 如下所示 ): <do> <sed-script> <rewrite-header> <add-header> <delete-header> 14-7

276 配置应用程序配置文件自定义框架 第 14 章 高级无客户端 SSL VPN 配置 表 14-1 APCF XML 标签 ( 续 ) 标记 使用 <do> </do> 用于定义一个以下操作的操作标签子元素 : <sed-script> 文本 </sed-script> <rewrite-header></rewrite-header> <add-header></add-header> <no-rewrite/> - 请勿改变从远程服务器接收的内容 <no-toolbar/> - 请勿插入工具栏 <no-gzip/> - 请勿压缩内容 <force-cache/> - 保留原始缓存说明 <force-no-cache/> - 使对象不可缓存 < downgrade-http-version-on-backend> - 向远程服务器发送请求时使用 HTTP/1.0 用于更改基于文本的对象内容的操作标签子元素 文本必须是有效的 Sed 脚本 <sed-script> 适用于之前定义的 <conditions> 标签 操作标签的子元素 更改如下所示子元素 <header> 标签中指定的 HTTP 报头的值 用于添加在如下所示子元素 <header> 标签中指定的新 HTTP 报头的操作标签的子元素 <delete-header></delete-header> 用于删除如下所示子元素 <header> 标签指定的 HTTP 报头的操作标签子元素 <header></header> 指定要重写 添加或删除的名称 HTTP 报头 例如, 以下标签将更改名为 Connection 的 HTTP 报头的值 : <rewrite-header> <header>connection</header> <value>close</value> </rewrite-header> APCF 的配置示例 <APCF> <version>1.0</version> <application> <id>do not compress content from example.com</id> <apcf-entities> <process-request-header> <conditions> <server-fnmatch>*.example.com</server-fnmatch> </conditions> <action> <do><no-gzip/></do> </action> </process-request-header> </apcf-entities> </application> </APCF> 14-8

277 第 14 章 高级无客户端 SSL VPN 配置 编码 <APCF> <version>1.0</version> <application> <id>change MIME type for all.xyz objects</id> <apcf-entities> <process-response-header> <conditions> <request-uri-fnmatch>*.xyz</request-uri-fnmatch> </conditions> <action> <rewrite-header> <header>content-type</header> <value>text/html</value> </rewrite-header> </action> </process-response-header> </apcf-entities> </application> </APCF> 编码 字符编码, 又称为 字符代码 和 字符集, 是指使用字符来表示数据对原始数据进行配对 ( 例如 0s 和 1s) 语言决定了要使用的字符编码方法 有些语言使用单一方法, 有些语言则不是的 通常, 地理区域决定着浏览器使用的默认编码方法, 但是远程用户可以进行更改 浏览器也可以检测页面上指定的编码, 并相应地呈现文档 编码属性允许指定在门户页面上使用的字符编码方法的值, 从而确保正确呈现此页面, 无论用户是在什么区域使用该浏览器, 也无论对浏览器进行了任何更改 默认情况下,ASA 将对来自通用互联网文件系统 (CIFS) 服务器的页面应用 Global Encoding Type 在正确呈现文件名或目录路径以及页面方面遇到问题时, 在全局使用 Global Encoding Type 属性并且对个别页面使用表格中显示的文件编码特例, 将 CIFS 服务器映射为对应的字符编码, 提供对 CISF 页面的正确处理和显示 查看或指定字符编码 通过编码, 您可查看或指定无客户端 SSL VPN 门户页面的字符编码 步骤 1 Global Encoding Type 决定着所有无客户端 SSL VPN 门户页面继承的字符编码, 表中列出来自 CIFS 服务器的字符编码除外 您可以键入字符串或从下拉列表中选择以下选项之一, 此下拉列表包含大多数常用值, 如下所示 : big5 gb2312 ibm-850 iso shift_jis 14-9

278 编码 第 14 章 高级无客户端 SSL VPN 配置 注意 如果使用的是日文 Shift_jis 字符编码, 请在关联的 Select Page Font 窗格的 Font Family 区域点击 Do Not Specify 以删除该字体系列 unicode windows-1252 无 注意 如果您点击 none 或指定无客户端 SSL VPN 会话上的浏览器不支持的值, 它将使用自己的默认编码 步骤 2 步骤 3 您可以键入最多包含 40 个字符并且等于 中确定的一个有效字符集的字符串 您可以使用在此页面上列出的字符集的名称或别名 字符串不区分大小写 当保存 ASA 配置时, 命令解释程序会将大写转换为小写 输入编码要求与 Global Encoding Type 属性设置不同的 CIFS 服务器的名称或 IP 地址 ASA 将保留您指定的大小写, 不过, 它在将名称与服务器匹配时将忽略大小写 选择 CIFS 服务器应该为无客户端 SSL VPN 门户页面提供的字符编码 您可以键入字符串或从下拉列表中选择以下选项之一, 此下拉列表只包含大多数常用值, 如下所示 : big5 gb2312 ibm-850 iso shift_jis 注意 如果使用的是日文 Shift_jis 字符编码, 请在关联的 Select Page Font 窗格的 Font Family 区域点击 Do Not Specify 以删除该字体系列 unicode windows-1252 无如果您点击 none 或指定无客户端 SSL VPN 会话上的浏览器不支持的值, 它将使用自己的默认编码 您可以键入最多包含 40 个字符并且等于 中确定的一个有效字符集的字符串 您可以使用在此页面上列出的字符集的名称或别名 字符串不区分大小写 当保存 ASA 配置时, 命令解释程序会将大写转换为小写 14-10

279 第 14 章 高级无客户端 SSL VPN 配置 在无客户端 SSL VPN 上使用邮件 在无客户端 SSL VPN 上使用邮件 配置邮件代理 无客户端 SSL VPN 支持 IMAP POP3 和 SMTP 邮件代理 以下属性在全局适用于邮件代理用户 准备工作 MS Outlook MS Outlook Express 和 Eudora 等邮件客户端无法访问证书存储区 步骤 1 指定用于邮件代理的以前配置的记帐服务器 : accounting-server-group 步骤 2 指定邮件代理用户的身份验证方式 默认值如下所示 : IMAP: 邮件主机 ( 必填 ) POP3: 邮件主机 ( 必填 ) SMTP:AAA authentication 步骤 3 指定用于邮件代理的以前配置的身份验证服务器 默认值为 LOCAL authentication-server-group 步骤 4 指定用于无客户端 SSL VPN 的以前配置的身份验证服务器 : authorization-server-group 步骤 5 确定是否想要求用户成功通过身份验证才能连接 默认设置为关闭 authorization-required 步骤 6 确定用作身份验证用户名的对等证书的 DN 默认值如下: 主要属性 :CN 辅助属性 :OU authorization-dn-attributes 步骤 7 指定要使用的组策略的名称 默认值为 DfltGrpPolicy default-group-policy 步骤 8 启用指定接口上的邮件代理 默认设置为关闭 enable 步骤 9 定义邮件和 VPN 用户名与密码之间的分隔符 默认为冒号 (:) name-separator 步骤 10 配置未完成的未经身份验证的会话的最大数量 默认值为 20 outstanding 14-11

280 在无客户端 SSL VPN 上使用邮件 第 14 章 高级无客户端 SSL VPN 配置 步骤 11 设置邮件代理侦听的端口 默认值如下 : IMAP:143 POP3:110 SMTP:25 port 步骤 12 指定默认邮件服务器 server 步骤 13 定义在邮件和服务器名称之间的分隔符 server-separator 配置 Web 邮件 :MS Outlook Web App ASA 支持通过 Microsoft Outlook Web App 访问 Exchange Server 2010 以及通过 Microsoft Outlook Web Access 访问 Exchange Server 和 2000 步骤 1 步骤 2 步骤 3 在地址字段输入邮件服务的 URL 或点击无客户端 SSL VPN 会话中的关联书签 系统提示时, 按照域 \ 用户名的格式输入邮件服务器用户名 输入邮件密码 14-12

281 第 15 章 策略组 为访问资源创建和应用无客户端 SSL VPN 策略 ( 第 15-1 页 ) 无客户端 SSL VPN 的连接配置文件属性 ( 第 15-1 页 ) 无客户端 SSL VPN 的组策略和用户属性 ( 第 15-2 页 ) 智能隧道访问 ( 第 15-3 页 ) 无客户端 SSL VPN 捕获工具 ( 第 页 ) 配置门户访问规则 ( 第 页 ) 优化无客户端 SSL VPN 性能 ( 第 页 ) 为访问资源创建和应用无客户端 SSL VPN 策略 为无客户端 SSL VPN 创建和应用管理访问内部服务器上资源的策略需要分配组策略 向组策略分配用户可以将策略应用于很多用户, 从而简化配置 您可以使用 ASA 上的内部身份验证服务器或外部 RADIUS 或 LDAP 服务器向组策略分配用户 有关利用组策略简化配置的方法的详细说明, 请参阅第 4 章 连接配置文件 组策略和用户 无客户端 SSL VPN 的连接配置文件属性 下表提供了专用于无客户端 SSL VPN 的连接配置文件属性列表 除了这些属性之外, 还要配置对于所有 VPN 连接通用的常规连接配置文件属性 有关配置连接配置文件的分步信息, 请参阅第 4 章 连接配置文件 组策略和用户 备注 在早期版本中, 连接配置文件 称为 隧道组 连接配置文件需要使用 tunnel-group 命令进行配置 本章经常交替使用这两个术语 表 15-1 无客户端 SSL VPN 的连接配置文件属性 命令 authentication customization exit 功能设置身份验证方法 确定要应用的以前定义的自定义配置名称 退出隧道组无客户端 SSL VPN 属性配置模式 15-1

282 无客户端 SSL VPN 的组策略和用户属性 第 15 章 策略组 表 15-1 无客户端 SSL VPN 的连接配置文件属性 ( 续 ) 命令 nbns-server group-alias group-url dns-group help hic-fail-group-policy no override-svc-download pre-fill-username proxy-auth radius-reject-message secondary-pre-fill-username 功能确定要用于 CIFS 名称解析的 NetBIOS 名称服务服务器 (nbns-server) 的名称 指定服务器可以用于引用连接配置文件的备用名称 确定一个或多个组 URL 如果使用此属性建立 URL, 当用户使用这些 URL 访问时, 将自动选择此组 确定指定 DNS 服务器名称 域名 名称服务器 重试次数和超时值的 DNS 服务器组 为隧道组配置命令提供帮助 如果使用思科安全桌面管理器将 Group-Based Policy 属性设置为 Use Failure Group-Policy 或 Use Success Group-Policy, if criteria match, 则指定 VPN 功能策略 删除属性值对 覆盖为给远程用户下载 AnyConnect VPN 客户端而配置的下载组策略或用户名属性 对此隧道组配置用户名 - 证书绑定 确定此隧道组作为特定代理身份验证隧道组 身份验证被拒绝时, 启用在登录屏幕上显示 RADIUS 拒绝消息 对此隧道组配置二次用户名 - 证书绑定 without-csd 关闭隧道组的 CSD 无客户端 SSL VPN 的组策略和用户属性. 下表提供了无客户端 SSL VPN 的组策略和用户属性列表 有关配置组策略和用户属性的分步说明, 请参阅 中的 配置组策略和配置各个用户的属性 或 连接配置文件 组策略和用户 表 15-2 无客户端 SSL VPN 的组策略和用户属性 命令 activex-relay auto-sign-on customization deny-message file-browsing file-entry filter 功能 允许已建立无客户端 SSL VPN 会话的用户使用浏览器启动 Microsoft Office 应用 这些应用将使用此会话下载和上传 ActiveX ActiveX 中继一直有效, 直到无客户端 SSL VPN 会话关闭 设置自动登录的值, 这样用户只需要输入一次无客户端 SSL VPN 连接的用户名和密码凭证 向组策略或用户分配自定义对象 指定向成功登录无客户端 SSL VPN 但没有 VPN 权限的远程用户告知的消息 启用文件服务器和共享的 CIFS 文件浏览 浏览需要使用 NBNS( 主浏览器或 WINS) 允许用户输入要访问的文件服务器名称 设置 webtype 访问列表的名称 15-2

283 第 15 章 策略组 智能隧道访问 表 15-2 无客户端 SSL VPN 的组策略和用户属性 ( 续 ) 命令 hidden-shares 控制 CIFS 文件的隐藏共享是否可见 homepage 设置在登录时显示的网页的 URL html-content-filter http-comp http-proxy keep-alive-ignore port-forward post-max-size smart-tunnel sso-server storage-objects svc 配置该组策略要从 HTML 过滤的内容和对象 配置压缩 将 ASA 配置为使用外部代理服务器处理 HTTP 请求 备注 http-proxy 中不支持代理 NTLM 身份验证 仅支持无身份验证的代理和基本身份验证 设置更新会话计时器要忽略的最大对象大小 将无客户端 SSL VPN TCP 端口列表应用于转发 用户界面将显示此列表中的应用 设置要发布的最大对象大小 配置要使用智能隧道的程序列表和多个智能隧道参数 设置 SSO 服务器的名称 配置两次会话之间所存储的数据的存储对象 配置 SSL VPN 客户端属性 unix-auth-gid 设置 UNIX 组 ID unix-auth-uid 设置 UNIX 用户 ID upload-max-size 功能 设置要上传的最大对象大小 url-entry 控制用户能否随意输入 HTTP/HTTPS URL url-list user-storage 应用无客户端 SSL VPN 门户页面为最终用户访问显示的服务器和 URL 列表 配置两次会话之间用于存储用户数据的位置 智能隧道访问 以下各节介绍如何启用使用无客户端 SSL VPN 会话的智能隧道访问, 指定随此类访问提供的应用, 并提供其使用说明 要配置智能隧道访问, 需要创建一份智能隧道列表, 其中包含一个或多个符合智能隧道访问条件的应用, 以及与此列表关联的终端操作系统 由于每个组策略或本地用户策略都只支持一个智能隧道列表, 您必须将要支持的非基于浏览器的应用归类到智能隧道列表中 创建列表后, 需将其分配给一个或多个组策略或本地用户策略 以下各节介绍智能隧道及其配置方法 : 关于智能隧道 ( 第 15-4 页 ) 智能隧道的必备条件 ( 第 15-4 页 ) 智能隧道的规定 ( 第 15-5 页 ) 添加符合智能隧道访问条件的应用 关于智能隧道列表 ( 第 15-6 页 ) 配置和应用智能隧道策略 ( 第 15-6 页 ) 15-3

284 智能隧道访问 第 15 章 策略组 配置和应用智能隧道的隧道策略 ( 第 15-7 页 ) 创建智能隧道自动登录服务器列表 将服务器添加到智能隧道自动登录服务器列表中 自动智能隧道访问 ( 第 页 ) 启用和关闭智能隧道访问 配置智能隧道注销 ( 第 页 ) 关于智能隧道 智能隧道是基于 TCP 的应用与专用站点之间的一种连接, 其使用无客户端 ( 基于浏览器的 )SSL VPN 会话, 以安全设备作为通道并以 ASA 作为代理服务器 您可以确定要授权智能隧道访问的应用并指定每个应用的本地路径 对于 Microsoft Windows 上运行的应用, 还可以要求匹配校验和的 SHA-1 散列值, 作为授权智能隧道访问的条件 例如,Lotus SameTime 和 Microsoft Outlook 可能就是您要授权智能隧道访问的应用 配置智能隧道需要执行以下程序之一, 具体取决于应用是客户端应用还是支持 Web 的应用 : 创建客户端应用的一个或多个智能隧道列表, 然后将列表分配给需要智能隧道访问的组策略或本地用户策略 创建一个或多个书签列表条目来指定符合智能隧道访问条件并支持 Web 的应用的 URL, 然后将列表分配给需要智能隧道访问的组策略或本地用户策略 您还可以列出要在通过无客户端 SSL VPN 会话接入的智能隧道连接中自动提交登录凭证的支持 Web 的应用 智能隧道的优势 智能隧道访问让客户端基于 TCP 的应用可以使用基于浏览器的 VPN 连接访问服务 与插件和端口转发传统技术相比, 它可为用户提供以下优势 : 智能隧道所提供的性能优于插件性能 不同于端口转发, 智能隧道不要求用户将本地应用连接至本地端口, 简化了用户体验 不同于端口转发, 智能隧道不要求用户拥有管理员权限 插件的优点在于它不要求在远程计算机上安装客户端应用 智能隧道的必备条件 有关 ASA 9.0 版本智能隧道支持的平台和浏览器, 请参阅支持的 VPN 平台 ( 思科 ASA 系列 ) 下列要求和限制适用于 Windows 上的智能隧道访问 : 在 Windows 中, 必须对浏览器启用 ActiveX 或 Oracle Java 运行时环境 (JRE) 4 更新 15 或更高版本 ( 建议使用 JRE 6 或更高版本 ) ActiveX 页面要求对关联的组策略输入 activex-relay 命令 如果执行此操作或将智能隧道列表分配给策略, 并且终端上的浏览器代理例外列表指定了代理, 则用户必须向此列表添加 shutdown.webvpn.relay. 条目 仅 Winsock 2 基于 TCP 的应用符合智能隧道访问条件 仅在 Mac OS X 中必须对浏览器启用 Java Web Start 15-4

285 第 15 章 策略组 智能隧道访问 智能隧道的规定 智能隧道仅支持位于运行 Microsoft Windows 的计算机和安全设备之间的代理 智能隧道使用 Internet Explorer 配置, 其设置 Windows 中的全系统参数 此配置可能包括代理信息 : 如果 Windows 计算机需要代理才能访问 ASA, 则客户端浏览器中必须有一个静态代理条目, 并且要连接的主机必须列于客户端的代理例外列表中 如果 Windows 计算机不需要代理就能访问 ASA, 但需要代理才能访问主机应用, 则 ASA 必须列于客户端的代理例外列表中 代理系统可以由客户端的静态代理条目配置或自动配置定义, 也可由 PAC 文件定义 目前智能隧道仅支持静态代理配置 智能隧道不支持 Kerberos 约束委派 (KCD) 对于 Windows, 如要向从命令提示符启动的应用添加智能隧道访问, 必须在智能隧道列表的一个条目的 Process Name 中指定 cmd.exe, 然后在另一个条目中指定该应用本身的路径, 因为 cmd.exe 是该应用的父级 对于基于 HTTP 的远程访问, 某些子网可能会阻止用户访问 VPN 网关 要解决此问题, 请在 ASA 前面放一个代理, 路由 Web 和最终用户之间的流量 该代理必须支持 CONNECT 方法 对于需要身份验证的代理, 智能隧道仅支持基本摘要式身份验证类型 智能隧道启动时, 默认情况下, 如果浏览器进程相同,ASA 会让所有浏览器流量通过 VPN 会话 只有在应用全隧道策略 ( 默认配置 ) 的情况下,ASA 才会也这么做 如果用户启动浏览器进程的另一个实例, 它会让所有流量通过 VPN 会话 如果浏览器进程相同, 但安全设备不提供对 URL 的访问, 用户将无法打开它 作为应急方案, 请分配不属于全隧道的隧道策略 状态故障切换不保留智能隧道连接 完成故障切换之后, 用户必须重新连接 Mac 版本的智能隧道不支持 POST 书签 基于表单的自动登录或 POST 宏替换 对于 Mac OS X 用户, 只有从门户页面启动的应用才可以建立智能隧道连接 此要求包括对 Firefox 的智能隧道支持 在首次使用智能隧道期间使用 Firefox 启动另一个 Firefox 实例需要名为 csco_st 的用户配置文件 如果没有此用户配置文件, 会话将提示用户创建一个 在 Mac OS X 中, 与 SSL 库动态链接的使用 TCP 的应用可在智能隧道上运行 智能隧道在 Mac OS X 上不提供以下支持 : 代理服务 自动登录 使用两级名称空间的应用 基于控制台的应用, 例如 Telnet SSH 和 curl 使用 dlopen 或 dlsym 来查找 libsocket 调用的应用 用于查找 libsocket 调用的静态链接应用 Mac OS X 需要指定进程的完整路径并区分大小写 为避免指定每个用户名的路径, 请在部分路径前面插入波形符 (~)( 例如 ~/bin/vnc) 添加符合智能隧道访问条件的应用 每个 ASA 的无客户端 SSL VPN 配置都支持智能隧道列表, 每个列表都会确定一个或多个符合智能隧道访问条件的应用 由于每个组策略或用户名都只支持一个智能隧道列表, 您必须将每组要支持的应用分别归类为一个智能隧道列表 15-5

286 智能隧道访问 第 15 章 策略组 关于智能隧道列表 对于每个组策略和用户名, 可以配置无客户端 SSL VPN 执行以下任一操作 : 在用户登录时自动启动智能隧道访问 用户登录时启用智能隧道访问, 但需要用户使用无客户端 SSL VPN 门户页面上的 Application Access > Start Smart Tunnels 按钮将其手动启动 备注 对于每个组策略和用户名, 智能隧道登录选项相互排斥 只能使用一个 以下智能隧道命令可用于每个组策略和用户名 每个组策略和用户名的配置一次仅支持这些命令中的一个, 因此, 输入一个命令时,ASA 均会用新命令替换相关组策略或用户名的配置中已有的命令 ; 或者, 如果是最后一个命令, 只需删除组策略或用户名中已有 smart-tunnel 命令 命令 smart-tunnel auto-start list smart-tunnel enable list smart-tunnel disable no smart-tunnel [auto-start list enable list disable] 目的 在用户登录时自动启动智能隧道访问 用户登录时启用智能隧道访问, 但需要用户使用无客户端 SSL VPN 门户页面上的 Application Access > Start Smart Tunnels 按钮手动启动智能隧道访问 禁止智能隧道访问 从组策略或用户名配置中删除 smart-tunnel 命令, 然后从默认组策略继承 [no] smart-tunnel 命令 no smart-tunnel 命令之后的关键字可选, 但是组策略或用户名配置限定于只能删除名为 smart-tunnel 命令 配置和应用智能隧道策略 智能隧道策略要求为每个组策略 / 用户名进行配置 每个组策略 / 用户名都引用一个全局配置的网络列表 智能隧道打开时, 您可以使用以下 2 个 CLI 允许隧道外的流量流过 : 其中一个配置网络 ( 一组主机 ), 另一个使用指定的智能隧道网络对用户执行策略 以下命令将创建一个用于配置智能隧道策略的主机列表 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 创建一个用于配置智能隧道策略的主机列表 : [no] smart-tunnel network network name ip ip netmask network name 是要应用于隧道策略的名称 ip 是网络的 IP 地址 netmask 是网络的网络掩码 15-6

287 第 15 章 策略组 智能隧道访问 步骤 3 确定主机名掩码, 例如 *.cisco.com: [no] smart-tunnel network network name host host mask 步骤 4 将智能隧道策略应用于特定组或用户策略 : [no] smart-tunnel tunnel-policy [{excludespecified tunnelspecified} network name tunnelall] network name 是要通过隧道访问的网络的列表 tunnelall 设置全部进行隧道访问 ( 加密 ) tunnelspecified 只对网络名称指定的网络进行隧道访问 excludespecified 只对网络名称指定网络之外的网络进行隧道访问 配置和应用智能隧道的隧道策略 与 SSL VPN 客户端的分割隧道配置一样, 智能隧道策略是按组策略 / 用户名配置的 每个组策略 / 用户名都引用一个全局配置的网络列表 : 步骤 1 引用一个全局配置的网络列表 : [no]smart-tunnel tunnel-policy [{excludespecified tunnelspecified} network name tunnelall] network name 是要通过隧道访问的网络的列表 tunnelall 设置全部进行隧道访问 ( 加密 ) tunnelspecified 只对网络名称指定的网络进行隧道访问 excludespecified 只对网络名称指定网络之外的网络进行隧道访问 步骤 2 将隧道策略应用于组策略 / 用户策略 : ciscoasa(config-webvpn)# [no] smart-tunnel network network name ip ip netmask 或者 ciscoasa(config-webvpn)# [no] smart-tunnel network network name host host mask 创建只包含一个主机的隧道策略 ( 假设库存页面托管于 ( ) 上, 并且您想要为主机配置 IP 地址和名称 ) ciscoasa(config-webvpn)# smart-tunnel network inventory ip ciscoasa(config-webvpn)# smart-tunnel network inventory host 一个命令指定主机, 另一个命令指定网络 IP ; 只能使用一个 network name 指定要应用于隧道策略的网络的名称 ip address 指定网络的 IP 地址 netmask 指定网络的网络掩码 host mask 指定主机名掩码, 例如 *.cisco.com 步骤 3 将隧道指定的隧道策略应用于合作伙伴的组策略 : ciscoasa(config-group-webvpn)# smart-tunnel tunnel-policy tunnelspecified inventory 15-7

288 智能隧道访问 第 15 章 策略组 步骤 4 ( 可选 ) 指定组策略主页并在其中启用智能隧道 ciscoasa(config-group-webvpn)# homepage value ciscoasa(config-group-webvpn)# homepage use-smart-tunnel ciscoasa(config-webvpn)# smart-tunnel notification-icon 注意 无需写入脚本或上传任何内容, 管理员可以指定通过智能隧道连接哪个主页 当供应商希望让合作伙伴在登录时无需首先进入无客户端门户即可对内部库存服务器页面进行无客户端访问时, 智能隧道策略配置是一个很好的选择 因为在启用智能隧道的情况下由浏览器发起的所有进程都具有隧道访问权限, 所以默认情况下, 没有必要配置智能隧道应用 但是, 因为门户不可见, 您可能需要启用注销通知图标 创建智能隧道自动登录服务器列表 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 用于将每台服务器添加到服务器列表中 : smart-tunnel auto-sign-on list [use-domain] [realm realm-string] [port port-num]{ip ip-address [netmask] host hostname-mask} list - 给远程服务器的列表命名 如果名称包含空格, 请用引号将其括住 字符串最多可以包含 64 个字符 如果配置中没有此列表, 则 ASA 将创建此列表 否则, 它会向此列表添加条目 指定一个有助于分辨的名称 use-domain( 可选 )- 如果身份验证需要, 则向用户名中添加 Windows 域 如果输入此关键字, 请确保在将智能隧道列表分配到一个或多个组策略或用户名时指定域名 realm - 为身份验证配置领域 领域与网站的受保护区域关联, 并且在身份验证期间通过身份验证提示或 HTTP 报头回传至浏览器 配置自动登录并指定领域字符串后, 用户可以配置 Web 应用 ( 例如 Outlook Web Access) 的领域字符串, 然后无需登录即可访问 Web 应用 port - 指定哪个端口执行自动登录 对于 Firefox, 如果没有指定端口号, 则在 HTTP 和 HTTPS 上执行自动登录, 分别用默认端口号 80 和 443 访问 ip - 以服务器 IP 地址和网络掩码指定服务器 ip-address[netmask] - 确定要接受自动身份验证的主机的子网 host - 以服务器主机名或通配符掩码指定服务器 使用此选项可避免配置出现 IP 地址动态变化 hostname-mask - 指定要接受自动身份验证的主机名或通配符掩码 步骤 3 ( 可选 ) 按照在 ASA 配置中的显示指定列表和 IP 地址或主机名, 从服务器列表中删除某个条目 : [no] smart-tunnel auto-sign-on list [use-domain] [realm realm-string] [port port-num] {ip ip-address [netmask] host hostname-mask} 步骤 4 显示智能隧道自动登录列表条目 : show running-config webvpn smart-tunnel 步骤 5 切换至 config-webvpn 配置模式 : config-webvpn 15-8

289 第 15 章 策略组 智能隧道访问 步骤 6 添加子网上的所有主机, 并将 Windows 域添加到用户名中 ( 如果身份验证需要 ): smart-tunnel auto-sign-on HR use-domain ip 步骤 7 ( 可选 ) 从列表中删除该条目, 并且如果删除的条目是列表中的唯一条目, 则还要删除名为 HR 的列表 no smart-tunnel auto-sign-on HR use-domain ip 步骤 8 从 ASA 配置中删除整个列表 : no smart-tunnel auto-sign-on HR 步骤 9 将域中的所有主机添加到名为 intranet 的智能隧道自动登录列表中 : smart-tunnel auto-sign-on intranet host *.example.com 步骤 10 从列表中删除该条目 : no smart-tunnel auto-sign-on intranet host *.example.com 备注 配置智能隧道自动登录服务器列表后, 必须将其分配给组策略或本地用户策略才能将其激活 有关详细信息, 请参阅附录 15 将服务器添加到智能隧道自动登录服务器列表中 将服务器添加到智能隧道自动登录服务器列表中 以下步骤说明如何将服务器添加到要在智能隧道连接中提供自动登录的服务器列表中, 以及如何将该列表分配给组策略或本地用户 准备工作 首先, 请使用 smart-tunnel auto-sign-on list 命令创建服务器列表 只能将一个列表分配到组策略或用户名 注意 智能隧道自动登录功能只支持使用 Internet Explorer 和 Firefox 进行 HTTP 和 HTTPS 通信的应用 如果使用的是 Firefox, 请务必使用准确的主机名或 IP 地址指定主机 ( 而不能使用带有通配符的主机掩码 使用 IP 地址的子网或网络掩码 ) 例如, 在 Firefox 中, 您不能输入 *.cisco.com 而期望自动登录主机 .cisco.com 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 切换至组策略无客户端 SSL VPN 配置模式 : group-policy webvpn 步骤 3 切换至用户名无客户端 SSL VPN 配置模式 username webvpn 15-9

290 智能隧道访问 第 15 章 策略组 步骤 4 启用智能隧道自动登录无客户端 SSL VPN 会话 : smart-tunnel auto-sign-on enable 步骤 5 ( 可选 ) 关闭智能隧道自动登录无客户端 SSL VPN 会话, 将其从组策略或用户名中删除, 并使用默认值 : [no] smart-tunnel auto-sign-on enable list [domain domain] list - ASA 无客户端 SSL VPN 配置中已有的智能隧道自动登录列表的名称 ( 可选 )domain - 在身份验证期间要向用户名添加的域的名称 如果输入域名, 请在列表条目中输入 use-domain 关键字 步骤 6 查看 SSL VPN 配置中的智能隧道自动登录列表条目 : show running-config webvpn smart-tunnel 步骤 7 启用名为 HR 的智能隧道自动登录列表 : smart-tunnel auto-sign-on enable HR 步骤 8 启用名为 HR 的智能隧道自动登录列表, 并在身份验证期间将名为 CISCO 的域添加到用户名中 : smart-tunnel auto-sign-on enable HR domain CISCO 步骤 9 ( 可选 ) 从组策略中删除名为 HR 的智能隧道自动登录列表, 并从默认组策略继承智能隧道自动登录列表命令 : no smart-tunnel auto-sign-on enable HR 自动智能隧道访问 要在用户登录时自动启动智能隧道访问, 请执行以下步骤 : 准备工作对于 Mac OS X, 请在门户的 Application Access 面板中点击应用的链接, 无论是否配置了自动启动功能 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 切换至组策略无客户端 SSL VPN 配置模式 : group-policy webvpn 步骤 3 切换至用户名无客户端 SSL VPN 配置模式 : username webvpn 步骤 4 在用户登录时自动启动智能隧道访问 : smart-tunnel auto-start list list 是已有的智能隧道列表的名称 hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# smart-tunnel auto-start apps

291 第 15 章 策略组 智能隧道访问 此示例将名为 apps1 的智能隧道列表分配给组策略 步骤 5 显示 SSL VPN 配置中的智能隧道列表条目 : show running-config webvpn smart-tunnel 步骤 6 从组策略或用户名中删除 port-forward 命令并恢复默认设置 : no smart-tunnel 启用和关闭智能隧道访问 默认情况下, 智能隧道处于关闭状态 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 切换至组策略无客户端 SSL VPN 配置模式 : group-policy webvpn 步骤 3 切换至用户名无客户端 SSL VPN 配置模式 : username webvpn 步骤 4 启用智能隧道访问 : smart-tunnel [enable list disable] list 是已有的智能隧道列表的名称 如果输入上一个表中的 smart-tunnel auto-start list, 则无需手动启动智能隧道访问 hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# smart-tunnel enable apps1 此示例将名为 apps1 的智能隧道列表分配给组策略 步骤 5 显示 SSL VPN 配置中的智能隧道列表条目 : show running-config webvpn smart-tunnel 步骤 6 从组策略或本地用户策略中删除 smart-tunnel 命令并恢复默认组策略 : no smart-tunnel 步骤 7 关闭智能隧道访问 : smart-tunnel disable 15-11

292 智能隧道访问 第 15 章 策略组 配置智能隧道注销 本节介绍如何确保正确注销智能隧道 当所有浏览器窗口都已关闭时可以注销智能隧道, 也可以右键点击通知图标并确认注销 备注 我们强烈建议使用门户上的注销按钮 此方法适合于无客户端 SSL VPN 和不管是否使用智能隧道都要注销的情况 只有在使用独立应用而不使用浏览器时才应该使用通知图标 配置在父进程终止时注销智能隧道 这种做法要求所有浏览器都关闭才表示注销 目前智能隧道寿命与启动进程寿命关联 例如, 如果从 Internet Explorer 启动智能隧道, 则没有 iexplore.exe 运行时就会关闭智能隧道 即使用户关闭了所有浏览器而不注销, 智能隧道仍可确定 VPN 会话已经结束 备注 有些情况下, 浏览器进程会延迟, 那属于意外情况, 并且严格地讲应该是错误导致的 此外, 使用安全桌面时, 即使用户在安全桌面中关闭所有浏览器, 浏览器进程仍然可以在另一个桌面上运行 因此, 在当前桌面中再也没有可见窗口时, 智能隧道即宣布所有浏览器实例都已关闭 步骤 1 允许管理员全局打开通知图标 : [no] smart-tunnel notification-icon 步骤 2 此命令用于配置注销属性, 并控制是向用户显示用于注销的注销图标, 还是通过关闭浏览器窗口触发注销 此命令还可控制父进程终止时的注销, 其将在通知图标打开或关闭时自动打开或关闭 notification-icon 是指定何时使用此图标来注销的关键字 默认使用此命令的 no 形式, 在此情况下, 关闭所有浏览器窗口将注销 SSL VPN 会话 门户注销仍然有效并且不受影响 当使用代理并添加到代理列表例外中时, 无论是否使用图标, 都应确保智能隧道能在注销时正确关闭 *.webvpn 配置使用通知图标注销智能隧道 您还可以选择关闭在父进程终止时注销, 让会话在浏览器关闭后继续 对于这种做法, 需要使用系统托盘中的通知图标注销 此图标将一直显示, 直到用户点击该图标注销 如果会话在用户注销之前到期, 该图标仍继续显示, 直到下一次尝试连接 您可能需要等待系统托盘中的会话状态更新 注意 此图标是 SSL VPN 注销的备选方法 它不指示 VPN 会话状态 15-12

293 第 15 章 策略组 无客户端 SSL VPN 捕获工具 无客户端 SSL VPN 捕获工具 无客户端 SSL VPN CLI 包含捕获工具, 可用于记录通过 Web VPN 连接无法正确显示的网站的相关信息 此工具记录的数据可帮助思科客户支持代表排除问题 无客户端 SSL VPN 捕获工具的输出包括两个文件 : mangled 等, 具体取决于网页活动 mangle 文件记录无客户端 SSL VPN 连接上传输这些页面的 VPN 集中器的 html 操作 original 等, 具体取决于网页活动 original 文件是 URL 发送到 VPN 集中器的文件 要通过捕获工具打开并查看文件输出, 请转至 Administration File Management 压缩输出文件并将其发送给思科支持代表 备注 使用无客户端 SSL VPN 捕获工具不会影响 VPN 集中器性能 在生成输出文件后, 请确保关闭捕获工具 配置门户访问规则 此增强功能让客户可以配置全局无客户端 SSL VPN 访问策略, 根据 HTTP 报头中的数据允许或拒绝无客户端 SSL VPN 会话 如果 ASA 拒绝无客户端 SSL VPN 会话, 它将立即向终端返回错误代码 ASA 在终端向 ASA 进行身份验证之前, 评估此访问策略 因此, 一旦访问被拒绝, 终端的其他连接尝试消耗的 ASA 处理资源会更少 准备工作 登录 ASA 并进入全局配置模式 在全局配置模式下,ASA 显示以下提示符 : hostname(config)# 步骤 1 进入无客户端 SSL VPN 配置模式 webvpn hostname(config)# webvpn 步骤 2 根据 HTTP 报头代码或 HTTP 报头中的字符串允许或拒绝创建无客户端 SSL VPN 会话 : portal-access-rule priority [{permit deny [code code]} {any user-agent match string} hostname(config-webvpn)# portal-access-rule 1 deny code 403 user-agent match *Thunderbird* hostname(config-webvpn)# portal-access-rule 1 deny code 403 user-agent match *my agent* 第二个示例显示了指定带空格的字符串的正确语法 在字符串前后加上通配符 (*), 然后将其放入引号内 (" ") 15-13

294 优化无客户端 SSL VPN 性能 第 15 章 策略组 优化无客户端 SSL VPN 性能 ASA 提供多种优化 SSL VPN 性能和功能的方法 性能改进包括缓存和压缩 Web 对象 功能调整包括对内容转换和代理绕行的设置限制 APCF 提供调整内容转换的另一种方法 以下各节将介绍这些功能 : 配置缓存 配置内容转换 配置缓存 缓存可增强无客户端 SSL VPN 性能 它将经常重复使用的对象存储在系统缓存中, 这会减少对内容执行重复重写和压缩的需要 还减少了无客户端 SSL VPN 和远程服务器之间的流量, 因此提高了很多应用的运行效率 默认情况下会启用缓存 您可以在缓存模式下使用缓存命令为您的环境自定义缓存工作方式 配置内容转换 默认情况下,ASA 通过内容转换 / 重写引擎处理所有无客户端 SSL VPN 流量, 此引擎包括 JavaScript 和 Java 等高级元素, 用于代理根据用户是从 SSL VPN 设备内部还是独立于此设备来访问应用而采用不同语义和访问控制规则的 HTTP 流量 某些 Web 资源需要高度个性化的处理 以下各节将介绍提供这类处理的功能 : 配置用于为重写的 Java 内容签名的证书 关闭内容重写 使用代理绕行根据组织的要求和涉及的 Web 内容, 您可以使用以下一种功能 配置用于为重写的 Java 内容签名的证书 对于无客户端 SSL VPN 转换的 Java 对象, 可随后使用与信任点关联的 PKCS12 数字证书对其签名 步骤 1 导入证书 : crypto ca import 步骤 2 使用证书 : ava-trustpoint hostname(config)# crypto ca import mytrustpoint pkcs12 mypassphrase Enter the base 64 encoded PKCS12. End with the word quit on a line by itself. [ PKCS12 data omitted ] quit 15-14

295 第 15 章 策略组 优化无客户端 SSL VPN 性能 INFO: Import PKCS12 operation completed successfully. hostname(config)# webvpn hostname(config)# java-trustpoint mytrustpoint 此示例显示创建名为 mytrustpoint 的信任点以及将其分配给签名的 Java 对象 关闭内容重写 您可能不想让某些应用和公共网站等 Web 资源通过 ASA 因此,ASA 允许您创建允许用户浏览某些网站和应用, 而不通过 ASA 的重写规则 这类似于 IPSec VPN 连接中的分割隧道 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 指定要在无客户端 SSLN VPN 隧道外部访问的应用和资源 : rewrite 您可以多次使用此命令 步骤 3 与 rewrite 命令结合使用 : disable 规则序号很重要, 因为安全设备将按照序号搜索重写规则, 从最低序号开始, 并应用匹配的第一个规则 使用代理绕行 当应用和 Web 资源使用代理绕行提供的特殊内容重写效果更好时, 可以将 ASA 配置为使用此功能 代理绕行是对原始内容更改最少的一种内容重写备选方法 此功能通常适用于自定义 Web 应用 您可以多次使用 proxy-bypass 命令 配置条目的顺序并不重要 接口和路径掩码或接口和端口将唯一标识代理绕行规则 如果使用端口而非路径掩码来配置代理绕行, 则根据网络配置, 可能需要更改防火墙配置以允许这些端口访问 ASA 使用路径掩码可避免此限制 但是请注意, 路径掩码可能会改变, 因此可能需要使用多个 pathmask 语句来穷尽各种可能性 路径是 URL 中.com 或.org 或其他类型域名之后的任何内容 例如, 在 URL 中,hrbenefits 就是路径 同样, 对于 URL 就是路径 要对所有 hr 站点使用代理绕行, 可以通过使用 * 通配符避免多次使用此命令, 如下所示 :/hr* 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 配置代理绕行 : proxy-bypass 15-15

296 优化无客户端 SSL VPN 性能 第 15 章 策略组 15-16

297 第 16 章 无客户端 SSL VPN 远程用户 本章总结了用户远程系统的配置要求和任务 本章还将帮助用户开始使用无客户端 SSL VPN 其中包括以下各节 : 用户名和密码 传达安全提示 为使用无客户端 SSL VPN 功能配置远程系统 捕获无客户端 SSL VPN 数据 备注确保已经为无客户端 SSL VPN 配置了 ASA 用户名和密码 根据您的网络, 在远程会话期间, 可能需要登录以下任一项或所有项 : 计算机 互联网服务提供程序 无客户端 SSL VPN 邮件或文件服务器或企业应用 用户可能必须在许多不同情景下进行身份验证, 这要求提供不同的信息, 例如唯一用户名 密码或 PIN 确保用户具备所需的访问权限 下表列出了无客户端 SSL VPN 用户可能需要知道的用户名和密码的类型 表 16-1 要向无客户端 SSL VPN 用户提供的用户名和密码 登录用户名 / 密码类型 目的 输入时间 计算机 访问计算机 启动计算机 互联网运营商 访问互联网 连接互联网运营商 无客户端 SSL VPN 访问远程网络 启动无客户端 SSL VPN 会话 文件服务器 访问远程文件服务器 使用无客户端 SSL VPN 文件浏览功能访问远程文件服务器 企业应用登录 访问受防火墙保护的内部服务器 使用无客户端 SSL VPN Web 浏览功能访问受保护的内部网站 邮件服务器 通过无客户端 SSL VPN 访问远程邮件服务器 发送或接收邮件信息 16-1

298 传达安全提示 第 16 章 无客户端 SSL VPN 远程用户 传达安全提示 传达以下安全提示 : 始终从无客户端 SSL VPN 会话注销, 点击无客户端 SSL VPN 工具栏上的登录图标或关闭浏览器 使用无客户端 SSL VPN 并不能保证与每个站点的通信都是安全的 无客户端 SSL VPN 将确保远程计算机或工作站与企业网络上的 ASA 之间数据传输的安全性 然后, 如果用户访问非 HTTPS Web 资源 ( 位于互联网或内部网络上 ), 从企业 ASA 到目标 Web 服务器之间的通信就不安全 为使用无客户端 SSL VPN 功能配置远程系统 下表包括为使用无客户端 SSL VPN 而设置远程系统所涉及的任务 要求 / 必备条件和推荐用法 : 您可能以不同的方式配置了用户帐户, 因此每个无客户端 SSL VPN 用户可以使用的功能可能有所不同 此外, 此表中的信息是按用户活动排列的 16-2

299 第 16 章 无客户端 SSL VPN 远程用户 为使用无客户端 SSL VPN 功能配置远程系统 表 16-2 无客户端 SSL VPN 远程系统配置和最终用户要求 任务 远程系统或最终用户要求 规范或使用建议 启动无客户端 SSL VPN 连接到互联网 支持各种互联网连接, 包括 : 家庭 DSL 电缆或拨号 公共信息亭 酒店联结线路 机场无线节点 网吧 支持无客户端 SSL VPN 的浏览器 我们推荐适用于无客户端 SSL VPN 的以下浏览器 其他浏览器可能不完全支持无客户端 SSL VPN 功能 在 Microsoft Windows 上 : IE 浏览器 8 Firefox 8 在 Linux 上 : Firefox 8 在 Mac OS X 上 : Safari 5 Firefox 8 在浏览器上启用 Cookie 要通过端口转发访问应用, 必须在浏览器上启用 Cookie 适用于无客户端 SSL VPN 的 URL 采用以下格式的 HTTPS 地址 : 其中,address 是启用了无客户端 SSL VPN 的 ASA( 或负载平衡集群 ) 接口的 IP 地址或 DNS 主机名 例如 : 或 无客户端 SSL VPN 用户名和密码 [ 可选 ] 本地打印机无客户端 SSL VPN 不支持从 Web 浏览器打印到网络打印机 不支持打印到本地打印机 16-3

300 为使用无客户端 SSL VPN 功能配置远程系统 第 16 章 无客户端 SSL VPN 远程用户 表 16-2 无客户端 SSL VPN 远程系统配置和最终用户要求 ( 续 ) 任务远程系统或最终用户要求规范或使用建议 在无客户端 SSL VPN 连接中使用浮动工具栏 浮动工具栏可简化无客户端 SSL VPN 的使用 此工具栏可用于输入 URL 浏览文件位置和选择预配置的 Web 连接而不干扰主浏览器窗口 如果将浏览器配置为阻止弹出窗口, 则无法显示浮动工具栏 浮动工具栏显示当前无客户端 SSL VPN 会话 如果点击 Close 按钮,ASA 会提示您关闭无客户端 SSL VPN 会话 提示 要将文本粘贴到文本字段, 请使用 Ctrl-V ( 无客户端 SSL VPN 工具栏上不支持右键点击 ) Web 浏览 受保护网站的用户名和密码 使用无客户端 SSL VPN 并不能保证与每个站点的通信都是安全的 请参阅 传达安全提示 使用无客户端 SSL VPN 进行 Web 浏览时, 用户可能会体验到不同于以往的外观和感受 例如 : 无客户端 SSL VPN 标题栏显示在每个网页上方 可以通过以下方式访问网站 : 在无客户端 SSL VPN 主页的 Enter Web Address 字段中输入 URL 点击无客户端 SSL VPN 主页上的预配置网站链接 点击通过上述两种方法之一访问的网页上的链接 此外, 根据特定帐户的配置方式, 还可能存在以下情况 : 某些网站被阻止 只有在无客户端 SSL VPN 主页上显示为链接的网站可用 网络浏览和文件管理 为共享远程访问配置的文件权限 仅共享文件夹和文件可通过无客户端 SSL VPN 进行访问 受保护的文件服务器的服务器名称和密码 - 文件夹和文件所在的域 工作组和服务器名称 用户可能并不熟悉如何在您的组织网络中查找他们的文件 - 在复制过程中, 请勿中断 Copy File to Server 命令或导航至其他屏幕 中断操作可能会导致在服务器上保存的文件不完整 16-4

301 第 16 章 无客户端 SSL VPN 远程用户 为使用无客户端 SSL VPN 功能配置远程系统 表 16-2 无客户端 SSL VPN 远程系统配置和最终用户要求 ( 续 ) 任务 远程系统或最终用户要求 规范或使用建议 使用应用 备注 在 Mac OS X 上, 仅 Safari 浏览器支持此功能 ( 称为端口转发或应用访问 ) 备注 由于此功能需要安装 Oracle Java 运行时环境 (JRE) 和配置本地客户端, 而且此操作需要本地系统的管理员权限, 当用户从公共远程系统进行连接时, 可能无法使用应用 注意 当用户结束使用应用时, 始终应该通过点击 Close 图标关闭 Application Access 窗口 不正确关闭此窗口可能会导致无法访问 Application Access 或应用本身 安装的客户端应用 - 在浏览器上启用 Cookie - 管理员权限如果使用 DNS 名称指定服务器, 用户必须具有计算机上的管理员权限, 因为修改主机文件需要这一权限 已安装 Oracle Java 运行时环境 (JRE) 1.4.x 和 1.5.x 版本 必须在浏览器上启用 JavaScript 默认情况下,JavaScript 已启用 必要时, 要配置客户端应用 备注 Microsoft Outlook 客户端不需要执行此配置步骤 所有非 Windows 客户端应用都要求此配置 要查看 Windows 应用是否需要进行配置, 请检查 Remote Server 的值 如果 Remote Server 包含服务器主机名, 不需要配置客户端应用 如果 Remote Server 字段包含 IP 地址, 则必须配置客户端应用 备注 如果未安装 JRE, 系统将显示弹出窗口, 指导用户浏览至提供此 JRE 的站点 极少数情况下, 端口转发小应用程序将出现故障, 显示 Java 异常错误 如果出现这种情况, 请执行以下操作 : 1. 清除浏览器缓存并关闭浏览器 2. 确认计算机任务栏上没有任何 Java 图标 结束 Java 的所有实例 3. 建立一个无客户端 SSL VPN 会话并启动端口转发 Java 小应用程序 如要配置客户端应用, 请使用服务器的本地映射 IP 地址和端口号 如要查找此信息, 请执行以下操作 : 1. 在远程系统上启动无客户端 SSL VPN 并点击无客户端 SSL VPN 主页上的 Application Access 链接 系统将显示 Application Access 窗口 2. 在 Name 列, 找到要使用的服务器名称, 然后确定其相应的客户端 IP 地址和端口号 ( 在 Local 列 ) 3. 使用该 IP 地址和端口号来配置客户端应用 配置步骤因各客户端应用而异 在通过无客户端 SSL VPN 运行的应用中点击 URL( 例如邮件信息中的一个 URL) 不会通过无客户端 SSL VPN 打开站点 要通过无客户端 SSL VPN 打开站点, 请剪切此 URL 并将其粘贴到 Enter (URL) Address 字段 16-5

302 捕获无客户端 SSL VPN 数据 第 16 章 无客户端 SSL VPN 远程用户 表 16-2 无客户端 SSL VPN 远程系统配置和最终用户要求 ( 续 ) 任务远程系统或最终用户要求规范或使用建议 使用邮件通过 Application Access 满足 Application Access 的要求 ( 请参阅 使用应用 ) 要使用邮件, 请从无客户端 SSL VPN 主页启动 Application Access 这样即可使用邮件客户端 备注如果在使用 IMAP 客户端时失去与邮件服务器之间的连接或者无法建立新的连接, 请关闭 IMAP 应用并重新启动无客户端 SSL VPN 其他邮件客户端我们测试了 Microsoft Outlook Express 5.5 和 6.0 版本 无客户端 SSL VPN 应该能够通过端口转发支持其他 SMTPS POP3S 或 IMAP4S 邮件程序 ( 例如 Lotus Notes 和 Eudora), 但我们尚未验证这一点 通过 Web 访问 Web Access 已安装基于 Web 的邮件产品支持的产品包括 : Outlook Web Access 通过 Web 访问使用邮件 已安装支持 SSL 的邮件应用请勿将 ASA SSL 版本设置为仅 TLSv1 Outlook 和 Outlook Express 不支持 TLS 已配置邮件应用 为了获得最佳效果, 请在 Internet Explorer 8.x 或更高版本或者 Firefox 8.x 上使用 OWA Lotus Notes 其他基于 Web 的邮件产品应该也可以正常工作, 但我们尚未验证这一点 支持的邮件应用 : Microsoft Outlook Microsoft Outlook Express 5.5 和 6.0 版本其他支持 SSL 的邮件客户端应该也可以正常工作, 但我们尚未验证这一点 捕获无客户端 SSL VPN 数据 CLI capture 命令允许您记录通过无客户端 SSL VPN 连接无法正确显示的网站的信息 此数据可帮助思科客户支持工程师排除问题 以下各节介绍如何使用 capture 命令 : 创建捕获文件 使用浏览器显示捕获数据 备注 启用无客户端 SSL VPN 捕获会影响 ASA 的性能 在生成故障排除所需的捕获文件之后, 请确保关闭捕获 16-6

303 第 16 章 无客户端 SSL VPN 远程用户 捕获无客户端 SSL VPN 数据 创建捕获文件 步骤 1 启动无客户端 SSL VPN 捕获实用程序, 捕获数据包 capture capture-name type webvpn user csslvpn-username hostname# capture hr type webvpn user user2 capture-name 是您分配给捕获的名称, 也是捕获文件名称的前缀 csslvpn-username 是要与捕获匹配的用户名 步骤 2 使用该命令的 no 版本停止捕获 : no capture capture-name hostname# no capture hr 步骤 3 步骤 4 捕获实用程序将创建一个 capture-name.zip 文件, 这个文件将用密码 koleso 加密 将该.zip 文件发送给思科或将其添加在思科技术支持中心服务请求中 要查看该.zip 文件的内容, 请使用密码 koleso 解压该文件 使用浏览器显示捕获数据 步骤 1 启动无客户端 SSL VPN 捕获实用程序 : capture capture-name type webvpn user csslvpn-username hostname# capture hr type webvpn user user2 capture-name 是您分配给捕获的名称, 也是捕获文件名称的前缀 csslvpn-username 是要与捕获匹配的用户名 步骤 2 打开浏览器并在地址栏输入 : address or hostname of the ASA/webvpn_capture.html 捕获的内容以嗅探器格式显示 步骤 3 使用该命令的 no 版本停止捕获 : no capture capture-name hostname# no capture hr 16-7

304 捕获无客户端 SSL VPN 数据 第 16 章 无客户端 SSL VPN 远程用户 16-8

305 第 17 章 无客户端 SSL VPN 用户 本节向用户提供有关无客户端 SSL VPN 的使用入门的信息 包括以下主题 : 管理密码 ( 第 17-1 页 ) 传达安全提示 ( 第 页 ) 为使用无客户端 SSL VPN 功能配置远程系统 ( 第 页 ) 管理密码 如有需要, 可以将 ASA 配置为会在最终用户的密码即将到期时向他们发出警告 ASA 支持 RADIUS 和 LDAP 协议的密码管理 对于 LDAP, 它仅支持 password-expire-in-days 选项 可以为 IPsec 远程访问和 SSL VPN 隧道组配置密码管理 配置密码管理时,ASA 会在远程用户登录时通知其当前密码即将到期或已到期 然后,ASA 允许用户更改密码 如果当前密码未到期, 用户仍可使用该密码登录 此命令对于支持此类通知的 AAA 服务器有效 使用 LDAP 或支持 MS-CHAPv2 的任何 RADIUS 配置进行身份验证时,ASA 版本 7.1 及更高版本通常支持以下连接类型的密码管理 : AnyConnect VPN 客户端 IPsec VPN 客户端 无客户端 SSL VPN RADIUS 服务器 ( 例如, 思科 ACS) 可能会将身份验证请求以代理方式发送到另一个身份验证服务器 但是,ASA 仅与 RADIUS 服务器通信 准备工作 本机 LDAP 需要 SSL 连接 在尝试执行 LDAP 密码管理之前, 必须先启用基于 SSL 的 LDAP 默认情况下,LDAP 使用端口 636 如果是使用 LDAP 目录服务器进行身份验证, 则通过 Sun Java 系统目录服务器 ( 以前称为 Sun ONE 目录服务器 ) 和 Microsoft Active Directory 来支持密码管理 Sun - 在 ASA 上配置的用于访问 Sun 目录服务器的 DN 必须能够访问该服务器上的默认密码策略 建议使用目录管理员或具有目录管理员权限的用户作为 DN 也可以将 ACI 放入默认密码策略 Microsoft - 必须配置基于 SSL 的 LDAP 以对 Microsoft Active Directory 启用密码管理 17-1

306 对无客户端 SSL VPN 使用单点登录 第 17 章 无客户端 SSL VPN 用户 某些支持 MSCHAP 的 RADIUS 服务器当前不支持 MSCHAPv2 此命令需要 MSCHAPv2, 因此, 请与供应商联系 对于 Kerberos/Active Directory(Windows 密码 ) 或 NT 4.0 域, 所有这些连接类型都不支持密码管理 对于 LDAP, 市场上不同的 LDAP 服务器有专有的密码更改方法 目前,ASA 仅对 Microsoft Active Directory 和 Sun LDAP 服务器实施专有密码管理逻辑 如果尚未配置 RADIUS 或 LDAP 身份验证,ASA 将忽略此命令 password-management 命令不会更改距离密码到期的天数, 而是更改 ASA 在到期之前多少天开始警告用户密码即将到期 步骤 1 切换至 general-attributes 模式 tunnel-group general-attributes 步骤 2 通知远程用户密码即将到期 : password-management password-expire-in-days days hostname(config-general)# password-management password-expire-in-days 90 如果指定了 password-expire-in-days 关键字, 则还必须指定天数 如果将天数设置为 0, 此命令将关闭 在本示例中,ASA 将在密码到期之前 90 天开始向用户发出密码即将到期的警告 注意 如果未设置 password-expire-in-days 关键字, 则 ASA 不会通知用户密码即将到期, 但是用户可以在密码到期后更改密码 对无客户端 SSL VPN 使用单点登录 借助单点登录 (SSO) 支持, 无客户端 SSL VPN 的用户只需输入一次用户名和密码, 即可访问多个受保护的服务和 Web 服务器 一般来说,SSO 机制在 AAA 过程中开始, 或者在刚刚向 AAA 服务器成功完成用户身份验证之后开始 在 ASA 上运行的无客户端 SSL VPN 服务器将代理用户向服务器进行身份验证 当用户登录时, 无客户端 SSL VPN 服务器将向身份验证服务器发送 SSO 身份验证请求 如果服务器批准身份验证请求, 则会向无客户端 SSL VPN 服务器返回 SSO 身份验证 Cookie ASA 会代表用户保留此 Cookie 并将其用于对用户进行身份验证, 以确保受 SSO 服务器保护的域内的网站安全 本节介绍无客户端 SSL VPN 支持的 SSO 身份验证方法 :HTTP 基本身份验证和 NTLMv1 (NT LAN Manager) 身份验证 Computer Associates etrust SiteMinder SSO 服务器 ( 原称为 Netegrity SiteMinder) 安全断言标记语言 (SAML) 1.1(POST 类型 SSO 服务器身份验证 ) 本节包括 : 配置使用 HTTP 基本身份验证或 NTLM 身份验证的 SSO( 第 17-3 页 ) 配置使用 SiteMinder 的 SSO 身份验证 ( 第 17-4 页 ) 配置使用 SAML Browser Post Profile 的 SSO 身份验证 ( 第 17-6 页 ) 配置使用 HTTP Form 协议的 SSO( 第 17-9 页 ) 17-2

307 第 17 章 无客户端 SSL VPN 用户 对无客户端 SSL VPN 使用单点登录 配置使用 HTTP 基本身份验证或 NTLM 身份验证的 SSO 本节介绍使用 HTTP 基本身份验证或 NTLM 身份验证的单点登录 可以使用这两种方法之一或结合使用这两种方法来配置 ASA, 以实现 SSO auto-sign-on 命令将 ASA 配置为会自动将无客户端 SSL VPN 用户登录凭证 ( 用户名和密码 ) 传递到内部服务器 可以输入多个 auto-sign-on 命令 ASA 根据输入顺序处理命令 ( 先输入的命令优先 ) 可以使用 IP 地址和 IP 掩码或 URI 掩码指定要接收登录凭证的服务器 可以在如下三种模式之一下使用 auto-sign-on 命令 : 无客户端 SSL VPN 配置模式 无客户端组策略模式或无客户端 SSL VPN 用户名模式 用户名优先于组, 组优先于全局 选择具有所需身份验证范围的模式 : 模式 webvpn configuration webvpn group-policy configuration webvpn username configuration 范围全局所有无客户端 SSL VPN 用户 组策略定义的一部分无客户端 SSL VPN 用户 单独的无客户端 SSL VPN 用户 步骤 1 步骤 2 步骤 3 步骤 4 为所有无客户端 SSL VPN 用户配置使用 NTLM 身份验证自动登录 IP 地址介于 和 之间的服务器 : hostname(config-webvpn)# auto-sign-on allow ip auth-type ntlm 为所有无客户端 SSL VPN 用户配置使用 HTTP 基本身份验证自动登录 URI 掩码 所定义的服务器 : hostname(config-webvpn)# auto-sign-on allow uri auth-type basic 为与 ExamplePolicy 组策略关联的无客户端 SSL VPN 会话配置使用基本身份验证或 NTLM 身份验证自动登录 URI 掩码所定义的服务器 : hostname(config)# group-policy ExamplePolicy attributes hostname(config-group-policy)# webvpn hostname(config-group-webvpn)# auto-sign-on allow uri auth-type all 为名为 Anyuser 的用户配置使用 HTTP 身份验证自动登录 IP 地址介于 和 之间的服务器 : hostname(config)# username Anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# auto-sign-on allow ip auth-type basic 步骤 5 配置使用特定端口和领域进行身份验证的自动登录 : (config-webvpn)# smart-tunnel auto-sign-on host-list [use-domain] [realm realm string] [port port num] [host host mask ip address subnet mask] 17-3

308 对无客户端 SSL VPN 使用单点登录 第 17 章 无客户端 SSL VPN 用户 配置使用 SiteMinder 的 SSO 身份验证 本节介绍如何将 ASA 配置为支持使用 SiteMinder 的 SSO 如果网站安全基础设施中已纳入 SiteMinder, 通常会选择实施使用 SiteMinder 的 SSO 使用此方法时,SSO 身份验证与 AAA 分开, 在 AAA 过程完成之后进行 准备工作 指定 SSO 服务器 指定 ASA 向其发出 SSO 身份验证请求的 SSO 服务器的 URL 指定密钥, 以保护 ASA 与 SSO 服务器之间的通信 此密钥与密码类似 : 可根据思科 Java 插件身份验证方案, 创建 保存并在 ASA 和 SiteMinder 策略服务器上输入密钥 除了必要的任务外, 还可以执行以下配置任务 : 配置身份验证请求超时 配置身份验证请求重试次数 备注 要为用户或组配置用于访问无客户端 SSL VPN 的 SSO, 必须首先配置 AAA 服务器 ( 例如 RADIUS 或 LDAP 服务器 ) 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 创建类型为 siteminder 且名为 Example 的 SSO 服务器 : sso-server type type ciscoasa(config-webvpn)# sso-server Example type siteminder 步骤 3 切换至 siteminder 配置模式 : config-webvpn-sso-siteminder 步骤 4 将 SSO 服务器的身份验证 URL 指定为 : web-agent-url hostname(config-webvpn-sso-siteminder)# web-agent-url 步骤 5 指定密钥, 以保护 ASA 与 SiteMinder 之间的身份验证通信 : policy-server-secret secret hostname(config-webvpn-sso-siteminder)# policy-server-secret AtaL8rD8! 此命令创建了密钥 AtaL8rD8! 可以使用任何常规或经过转换的字母数字字符来创建任意长度的密钥, 但必须在 ASA 和 SSO 服务器上输入相同的密钥 17-4

309 第 17 章 无客户端 SSL VPN 用户 对无客户端 SSL VPN 使用单点登录 步骤 6 配置在失败的 SSO 身份验证尝试超时之前持续的秒数 : request-timeout seconds hostname(config-webvpn-sso-siteminder)# request-timeout 8 默认值是 5 秒, 允许的范围是 1 至 30 此示例将请求超时之前的时间更改为 8 秒 步骤 7 配置身份验证超时之前 ASA 重试失败的 SSO 身份验证尝试的次数 : max-retry-attempts hostname(config-webvpn-sso-siteminder)# max-retry-attempts 4 默认值是重试 3 次, 允许的范围是 1 到 5 次 此示例将重试次数配置为 4 步骤 8 为组或用户指定 SSO 身份验证 : 为用户指定身份验证 username-webvpn 为组指定身份验证 group-policy-webvpn 步骤 9 向用户分配 SSO 服务器 : sso-server value value hostname(config)# username Anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# sso-server value Example 此示例将名为 Example 的 SSO 服务器分配给名为 Anyuser 的用户 步骤 10 测试 SSO 服务器配置 : test sso-server server username username hostname# test sso-server Example username Anyuser INFO: Attempting authentication request to sso-server Example for user Anyuser INFO: STATUS: Success hostname# 此示例使用用户名 Anyuser 测试名为 Example 的 SSO 服务器 17-5

310 对无客户端 SSL VPN 使用单点登录 第 17 章 无客户端 SSL VPN 用户 向 SiteMinder 添加思科身份验证方案 除了使用 SiteMinder 配置 ASA 来实现 SSO 之外, 还必须使用思科身份验证方案 ( 一个可从思科网站下载的 Java 插件 ) 配置 CA SiteMinder 策略服务器 准备工作 配置 SiteMinder 策略服务器要求具备使用 SiteMinder 的经验 步骤 1 使用 SiteMinder Administration 实用程序, 创建一个自定义身份验证方案, 确保使用以下特定参数 : 在 Library 字段中, 输入 smjavaapi 在 Secret 字段中, 输入在 ASA 上配置的那个密钥 步骤 2 通过在命令行界面上使用 policy-server-secret 命令可以在 ASA 上配置密钥 在 Parameter 字段中, 输入 CiscoAuthApi 使用 Cisco.com 登录名, 从 下载文件 cisco_vpn_auth.jar, 并将其复制到 SiteMinder 服务器的默认库目录 思科 ASA CD 中也提供了此.jar 文件 配置使用 SAML Browser Post Profile 的 SSO 身份验证 本节介绍将 ASA 配置为对授权用户支持安全断言标记语言 (SAML) 1.1 POST 配置文件单点登录 (SSO) 会话发起后,ASA 会按照配置的 AAA 方法对用户进行身份验证 接着,ASA( 断言方 ) 会为信赖方 (SAML 服务器提供的使用者 URL 服务 ) 生成断言 如果 SAML 交换成功, 用户可以访问受保护的资源 准备工作要配置使用 SAML Browser Post Profile 的 SSO, 必须执行以下任务 : 使用 sso-server 命令指定 SSO 服务器 指定用于身份验证请求的 SSO 服务器的 URL(assertion-consumer-ur 命令 ) 将 ASA 主机名指定为发出身份验证请求的组件 (issuer 命令 ) 指定用于对 SAML Post 配置文件断言进行签名的信任点证书 (trustpoint 命令 ) 除了这些必要的任务外, 还可以执行以下配置任务 : 配置身份验证请求超时 (request-timeout 命令 ) 配置身份验证请求重试次数 (max-retry-attempts 命令 ) 仅无客户端 SSL VPN 会话支持 SAML SSO ASA 目前仅支持 Browser Post Profile 类型的 SAML SSO 服务器 不支持交换断言的 SAML Browser Artifact 方法 17-6

311 第 17 章 无客户端 SSL VPN 用户 对无客户端 SSL VPN 使用单点登录 步骤 1 切换至无客户端 SSL VPN 配置模式 : webvpn 步骤 2 创建 SSO 服务器 : sso-server type type hostname(config-webvpn)# sso-server sample type SAML-V1.1-post 此示例创建类型为 SAML-V1.1-POST 且名为 Sample 的 SSO 服务器 步骤 3 切换至无客户端 SSL VPN sso-saml 配置模式 : sso saml 步骤 4 指定 SSO 服务器的身份验证 URL: assertion-consumer-url url hostname(config-webvpn-sso-saml)# assertion-consumer-url hostname(config-webvpn-sso-saml)# 此示例将身份验证请求发送到 URL 步骤 5 在 ASA 生成断言时对 ASA 自身进行标识 : issuer string hostname(config-webvpn-sso-saml)# issuer myasa 通常, 此颁发者名称是 ASA 的主机名 步骤 6 指定用于对断言进行签名的身份证书 : trust-point hostname(config-webvpn-sso-saml)# trust-point mytrustpoint 步骤 7 配置在失败的 SSO 身份验证尝试超时之前持续的秒数 : request-timeout hostname(config-webvpn-sso-saml)# request-timeout 8 本示例将请求超时之前的秒数设置为 8 默认值是 5 秒, 允许的范围是 1 至 30 秒 步骤 8 配置身份验证超时之前 ASA 重试失败的 SSO 身份验证尝试的次数 : max-retry-attempts hostname(config-webvpn-sso-saml)# max-retry-attempts 4 此示例将重试次数设置为

312 对无客户端 SSL VPN 使用单点登录 第 17 章 无客户端 SSL VPN 用户 默认值是重试 3 次, 允许的范围是 1 到 5 次 步骤 9 切换至无客户端 SSL VPN 配置模式 : webvpn 将 SSO 服务器分配给组策略 group-policy-webvpn 将 SSO 服务器分配给用户策略 username-webvpn 步骤 10 为组或用户指定 SSO 身份验证 : sso-server value hostname(config)# username Anyuser attributes hostname(config-username)# webvpn hostname(config-username-webvpn)# sso-server value sample 本示例将名为 Example 的 SSO 服务器分配给名为 Anyuser 的用户 步骤 11 ( 特权执行模式 ) 测试 SSO 服务器配置 : test sso-server hostname# test sso-server Example username Anyuser INFO: Attempting authentication request to sso-server sample for user Anyuser INFO: STATUS: Success 本示例使用用户名 Anyuser 测试 SSO 服务器 Example 配置 SAML POST SSO 服务器 使用服务器软件供应商提供的 SAML 服务器文档在信赖方模式下配置 SAML 服务器 步骤 1 配置 SAML 服务器参数来代表断言方 (ASA): 接收使用者 URL( 与 ASA 上配置的断言使用者 URL 相同 ) 颁发者 ID, 一个字符串, 通常是设备的主机名 配置文件类型 - Browser Post Profile 步骤 2 配置证书 步骤 3 指明必须对断言方的断言进行签名 步骤 4 选择 SAML 服务器如何标识用户 : 使用者名称类型为 DN 使用者名称格式为 uid=<user> 17-8

313 第 17 章 无客户端 SSL VPN 用户 对无客户端 SSL VPN 使用单点登录 配置使用 HTTP Form 协议的 SSO 本节介绍如何将 HTTP Form 协议用于 SSO HTTP Form 协议是一种 SSO 身份验证方法, 也可用作 AAA 方法 它提供了一种用于在无客户端 SSL VPN 用户与身份验证 Web 服务器之间交换身份验证信息的安全方法 此协议可以与其他 AAA 服务器 ( 例如 RADIUS 或 LDAP 服务器 ) 配合使用 ASA 同样向身份验证 Web 服务器代理无客户端 SSL VPN 用户, 但在这种情况下, 它使用 HTTP Form 协议和 POST 请求方法 必须将 ASA 配置为可发送和接收表单数据 要正确配置使用 HTTP 协议的 SSO, 必须透彻地了解身份验证和 HTTP 协议交换的工作原理 HTTP Form 协议是一种常见协议, 仅在用于进行身份验证的 Web 服务器应用符合以下条件时才适用 : 必须为成功的请求设置身份验证 Cookie, 但不为未授权的登录设置身份验证 Cookie 在这种情况下,ASA 无法区分成功和失败的身份验证 下图说明 SSO 身份验证的步骤, 如下所述 : 图 17-1 使用 HTTP 表单的 SSO 身份验证 Auth Web server 5 Tunnel Web VPN server 5 Other protected web server 无客户端 SSL VPN 用户首先输入用户名和密码, 以登录到 ASA 上的无客户端 SSL VPN 服务器 2. 无客户端 SSL VPN 服务器用作用户的代理, 并使用 POST 身份验证请求将表单数据 ( 用户名和密码 ) 转发到身份验证 Web 服务器 3. 如果身份验证 Web 服务器批准用户数据, 它会将身份验证 Cookie 返回到无客户端 SSL VPN 服务器 ( 该服务器会代表用户存储该 Cookie) 4. 无客户端 SSL VPN 服务器建立通向用户的隧道 5. 这样, 用户无需重新输入用户名和密码即可访问受保护 SSO 环境中的其他网站 虽然您通常会配置允许 ASA 包含 POST 数据 ( 例如用户名和密码 ) 的表单参数, 但是, 您最初可能不会注意到 Web 服务器需要的其他隐藏参数 某些身份验证应用会遇到一些既不向用户显示也不是由用户输入的隐藏数据 但是, 可以通过以下方法发现身份验证 Web 服务器会遇到的隐藏参数 : 从浏览器向身份验证 Web 服务器发送直接身份验证请求, 而不使用 ASA 作为中间代理 使用 HTTP 报头分析器分析 Web 服务器响应能够以类似于以下的格式显示隐藏参数 : <param name>=<url encoded value>&<param name>=<url encoded> 17-9

314 对无客户端 SSL VPN 使用单点登录 第 17 章 无客户端 SSL VPN 用户 有些隐藏参数是必填的, 有些是可选的 如果 Web 服务器需要隐藏参数的数据, 它将拒绝忽略这些数据的任何身份验证 POST 请求 由于报头分析器不会指出隐藏参数是否为必填的, 因此, 我们建议将所有隐藏参数包括在内, 直至确定哪些是必填的 要使用 HTTP Form 协议配置 SSO, 必须执行以下操作 : 在身份验证 Web 服务器上配置统一资源标识符, 用以接收和处理表单数据 (action-uri) 配置用户名参数 (user-parameter) 配置用户密码参数 (password-parameter) 可能还需要执行以下任务, 具体取决于身份验证 Web 服务器的要求 : 如果身份验证 Web 服务器要求登录前 Cookie 交换, 请配置启动 URL (start-url) 配置身份验证 Web 服务器所需的任何隐藏身份验证参数 (hidden-parameter) 配置身份验证 Web 服务器设置的身份验证 Cookie 的名称 (auth-cookie-name) 步骤 1 切换至 aaa-server-host 配置模式 : aaa-server-host 步骤 2 如果身份验证 Web 服务器有要求, 请指定用于从身份验证 Web 服务器检索登录前 Cookie 的 URL: start-url hostname(config)# aaa-server testgrp1 protocol http-form hostname(config)# aaa-server testgrp1 host hostname(config-aaa-server-host)# start-url 步骤 3 此示例指定 IP 地址为 的 testgrp1 服务器组中的身份验证 Web 服务器 URL 指定身份验证 Web 服务器上的身份验证计划的 URI: action-uri OID=06-000a1311-a ab b16a0008&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=$S M$5FZmjnk3DRNwNjk2KcqVCFbIrNT9%2bJ0H0KPshFtg6rB1UV2PxkHqLw%3d%3d&TARGET=https%3A%2F%2Fauth.example.com 如要指定此操作 URI, 请输入以下命令 : hostname(config-aaa-server-host)# action-uri hostname(config-aaa-server-host)# action-uri l/appdir/authc/forms/mcologin.fcc?typ hostname(config-aaa-server-host)# action-uri &REALMOID=06-000a1311-a hostname(config-aaa-server-host)# action-uri -ab b16a0008&guid=&smauthreason hostname(config-aaa-server-host)# action-uri =0&METHOD=GET&SMAGENTNAME=$SM$5FZmjnk hostname(config-aaa-server-host)# action-uri 3DRNwNjk2KcqVCFbIrNT9%2bJ0H0KPshFtg6r hostname(config-aaa-server-host)# action-uri B1UV2PxkHqLw%3d%3d&TARGET=https%3A%2F hostname(config-aaa-server-host)# action-uri %2Fauth.example.com 可以在多个顺序行上输入同一个 URI 每行的最大字符数是 255 完整 URI 的最大字符数是 2048 在操作 URI 中必须包括主机名和协议 在本示例中, 主机名和协议显示在 中 URI 的开头 17-10

315 第 17 章 无客户端 SSL VPN 用户 对无客户端 SSL VPN 使用单点登录 步骤 4 为 HTTP POST 请求配置 userid 用户名参数 : user-parameter hostname(config-aaa-server-host)# user-parameter userid 步骤 5 为 HTTP POST 请求配置 user_password 用户密码参数 : password-parameter hostname(config-aaa-server-host)# password-parameter user_password 步骤 6 指定用以与身份验证 Web 服务器进行交换的隐藏参数 : hidden-parameter hostname(config)# aaa-server testgrp1 host example.com hostname(config-aaa-server-host)# hidden-parameter SMENC=ISO &SMLOCALE=US-EN&targe hostname(config-aaa-server-host)# hidden-parameter t=https%3a%2f%2fwww.example.com%2femc hostname(config-aaa-server-host)# hidden-parameter o%2fappdir%2farearoot.do%3femcopageco hostname(config-aaa-server-host)# hidden-parameter de%3deng&smauthreason=0 此示例显示摘录自 POST 请求的隐藏参数示例 此隐藏参数包含四个表单条目及其值, 条目之间用 & 分隔 这些条目及其值如下 : SMENC, 值为 ISO SMLOCALE, 值为 US-EN 值为 https%3a%2f%2fwww.example.com%2femco%2fappdir%2farearoot.do 的目标 %3FEMCOPageCode%3DENG 值为 0 的 smauthreason 步骤 7 指定身份验证 Cookie 的名称 : auth-cookie-name cookie-name hostname(config-aaa-server-host)# auth-cookie-name SsoAuthCookie 此示例指定 SsoAuthCookie 的身份验证 Cookie 名称 步骤 8 切换至 tunnel-group general-attributes 配置模式 : tunnel-group general-attributes 步骤 9 配置隧道组, 以使用在上述步骤中配置的 SSO 服务器 : authentication-server-group hostname(config)# tunnel-group testgroup general-attributes hostname(config-tunnel-general)#authentication-server-group testgrp1 此示例配置名为 /testgrp/ 的隧道组, 以使用名为 /testgrp1/ 的 SSO 服务器 步骤 10 切换至 AAA 服务器主机配置模式 : aaa-server-host 17-11

316 对无客户端 SSL VPN 使用单点登录 第 17 章 无客户端 SSL VPN 用户 步骤 11 指定身份验证 Cookie 的名称 : auth-cookie-name cookie-name hostname(config-aaa-server-host)# auth-cookie-name SsoAuthCookie 此示例指定 SsoAuthCookie 的身份验证 Cookie 名称 步骤 12 切换至 tunnel-group general-attributes 模式 : tunnel-group general-attributes 步骤 13 配置隧道组, 以使用在上述步骤中配置的 SSO 服务器 : authentication-server-group group hostname(config)# tunnel-group testgroup general-attributes hostname(config-tunnel-general)#authentication-server-group testgrp1 此示例配置名为 /testgrp/ 的隧道组, 以使用名为 /testgrp1/ 的 SSO 服务器 收集 HTTP 表单数据 本节介绍发现和收集必要的 HTTP 表单数据的步骤 如果不知道身份验证 Web 服务器需要哪些参数, 可以通过分析身份验证交换来收集参数数据 准备工作这些步骤需要使用浏览器和 HTTP 报头分析器 步骤 1 启动浏览器和 HTTP 报头分析器, 并直接连接到 Web 服务器登录页面 ( 而不是通过 ASA 连接 ) 步骤 2 步骤 3 步骤 4 在浏览器中加载 Web 服务器登录页面后, 检查登录序列以确定是否已在交换过程中设置了 Cookie 如果 Web 服务器已使用登录页面加载了 Cookie, 请将该登录页面 URL 配置为 start-url 输入用户名和密码以登录到 Web 服务器, 然后按 Enter 此操作会生成使用身份验证 POST 请求 ( 可使用 HTTP 报头分析器检查该请求 ) 包含主机 HTTP 报头和正文的 POST 请求示例如下 : POST /emco/myemco/authc/forms/mcologin.fcc?type= &realmoid= e c-ac dc90034&guid=&smauthreason=0&method=get&smagentname=$sm$5fzmjnk3drnwnjk2kcqvcfbir NT9%2bJ0H0KPshFtg6rB1UV2PxkHqLw%3d%3d&TARGET=https%3A%2F%2Fwww.example.com%2Femco%2Fmye mco%2fhttp/1.1 Host: (BODY) SMENC=ISO &SMLOCALE=US-EN&USERID=Anyuser&USER_PASSWORD=XXXXXX&target=https%3A%2F% 2Fwww.example.com%2Femco%2Fmyemco%2F&smauthreason=0 检查 POST 请求并复制协议 主机和完整的 URL, 以配置操作 URI 参数 17-12

317 第 17 章 无客户端 SSL VPN 用户 对无客户端 SSL VPN 使用单点登录 步骤 5 检查 POST 请求正文并复制以下内容 : a. 用户名参数 在上一个示例中, 此参数是 USERID, 而不是值 anyuser b. 密码参数 在上一个示例中, 此参数是 USER_PASSWORD c. 隐藏参数 此参数是 POST 正文中除用户名和密码参数之外的一切内容 在上一个示例中, 隐藏参数如下所示 : SMENC=ISO &SMLOCALE=US-EN&target=https%3A%2F%2Fwww.example.com%2Fe mco%2fmyemco%2f&smauthreason=0 下图突出显示了 HTTP 分析器输出示例中的操作 URI 参数 隐藏参数 用户名参数和密码参数 这只是一个示例 ; 不同网站的输出会有所不同 图 17-2 操作 URI 参数 隐藏参数 用户名参数和密码参数 操作 URI 参数 2 隐藏参数 3 用户名和密码参数 17-13

318 对无客户端 SSL VPN 使用单点登录 第 17 章 无客户端 SSL VPN 用户 步骤 6 如果成功登录到 Web 服务器, 请使用 HTTP 报头分析器检查服务器响应, 以查找浏览器中服务器设置的会话 Cookie 名称 这是 auth-cookie-name 参数 在以下服务器响应报头中, 会话 Cookie 名称是 SMSESSION 只需要名称, 不需要值 Set-Cookie: SMSESSION=yN4Yp5hHVNDgs4FT8dn7+Rwev41hsE49XlKc+1twie0gqnjbhkTkUnR8XWP3hvDH6PZP bhihtwldkta8ngdb/lbytjixrbdx8wpwwag3cxva3adoxhfr8yjd55gevk3zf4ujgu1lho6fta0dss OSepWvnsCb7IFxCw+MGiw0o88uHa2t4l+SillqfJvcpuXfiIAO06D/gtDF40Ow5YKHEl2KhDEvv+yQ zxwfez2cl7ef5imr8lggcdk7qvmcvrguqx68jqok2+rswthq15bczmsdu5vqvcvsqwc8omhngwps25 3XwRLvd/h6S/tM0k98QMv+i3N8oOdj1V7flBqecH7+kVrU01F6oFzr0zM1kMyLr5HhlVDh7B0k9wp0 dufziazaf43jupd5f6cekuleudyw1xgnzsr8eqtpk6t1gfjyon0s7qdnq7q9knspjsekrah9hrlbhw BLTU/3B1QS94wEGD2YTuiW36TiP14hYwOlCAYRj2/bY3+lYzVu7EmzMQ+UefYxh4cF2gYD8RZL2Rwm P9JV5l48I3XBFPNUw/3V5jf7nRuLr/CdfK3OO8+Pa3V6/nNhokErSgyxjzMd88DVzM41LxxaUDhbcm koht9imzbvkzjx0j+o7foudfoxediqlan4gnqk49cpi2sxdbiaralp6bl3+tbb4mlhgh+0cpsczxqo i/kon9ymgauhyrs+0m6wthdlamcnvljcdfdoxtn8dpabgiw6vdtrvl3sgpyqtuv7wdahuq5sxbuzjy 2JxQnrUtwB977NCzYu2sOtN+dsEReWJ6ueyJBbMzKyzUB4L3i5uSYN50B4PCv1w5KdRKa5p3N0Nfq6 RM6dfipMEJw0Ny1sZ7ohz3fbvQ/YZ7lw/k7ods/8VbaR15ivkE8dSCzuf/AInHtCzuQ6wApzEp9CUo G8/dapWriHjNoi4llJOgCst33wEhxFxcWy2UWxs4EZSjsI5GyBnefSQTPVfma5dc/emWor9vWr0HnT QaHP5rg5dTNqunkDEdMIHfbeP3F90cZejVzihM6igiS6P/CEJAjE;Domain=.example.com;Path= / 下图显示了 HTTP 分析器输出中授权 Cookie 的示例 这只是一个示例 ; 不同网站的输出会有所不同 图 17-3 HTTP 分析器输出示例中的授权 Cookie 授权 Cookie 17-14

一.NETGEAR VPN防火墙产品介绍

一.NETGEAR VPN防火墙产品介绍 NETGEAR VPN NETGEAR 6 http://www.netgear.com.cn - 1 - NETGEAR VPN... 4 1.1 VPN...4 1.2 Dynamic Domain Name Service...4 1.3 Netgear VPN...4 Netgear VPN... 6 2.1 FVS318 to FVS318 IKE Main...7 2.1.1 A VPN

More information

MASQUERADE # iptables -t nat -A POSTROUTING -s / o eth0 -j # sysctl net.ipv4.ip_forward=1 # iptables -P FORWARD DROP #

MASQUERADE # iptables -t nat -A POSTROUTING -s / o eth0 -j # sysctl net.ipv4.ip_forward=1 # iptables -P FORWARD DROP # iptables 默认安全规则脚本 一 #nat 路由器 ( 一 ) 允许路由 # iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT ( 二 ) DNAT 与端口转发 1 启用 DNAT 转发 # iptables -t nat -A PREROUTING -p tcp -d 192.168.102.37 dprot 422 -j DNAT to-destination

More information

命令行用户 VPN StoneOS 5.0R4P3.6 TWNO: TW-CUG-UNI-VPN-5.0R4P3.6-CN-V1.0-Y14M11

命令行用户 VPN StoneOS 5.0R4P3.6   TWNO: TW-CUG-UNI-VPN-5.0R4P3.6-CN-V1.0-Y14M11 命令行用户 VPN StoneOS 5.0R4P3.6 www.hillstonenet.com.cn TWNO: TW-CUG-UNI-VPN-5.0R4P3.6-CN-V1.0-Y14M11 1 IPSec... 1 IPSec... 1 Security Association... 1 SA... 1 SA... 2 SA... 2... 3... 3... 4... 4 IPSec VPN...

More information

Chapter #

Chapter # 第三章 TCP/IP 协议栈 本章目标 通过本章的学习, 您应该掌握以下内容 : 掌握 TCP/IP 分层模型 掌握 IP 协议原理 理解 OSI 和 TCP/IP 模型的区别和联系 TCP/IP 介绍 主机 主机 Internet TCP/IP 早期的协议族 全球范围 TCP/IP 协议栈 7 6 5 4 3 应用层表示层会话层传输层网络层 应用层 主机到主机层 Internet 层 2 1 数据链路层

More information

PIX 6.x :在静态寻址IOS路由器和动态地寻址的带有NAT的PIX防火墙之间的动态IPSec配置示例

PIX 6.x :在静态寻址IOS路由器和动态地寻址的带有NAT的PIX防火墙之间的动态IPSec配置示例 PIX 6.x : 在静态寻址 IOS 路由器和动态地寻址的带有 NAT 的 PIX 防火墙之间的动态 IPSec 配置示例 Contents Introduction Prerequisites Requirements Components Used Conventions Configure Network Diagram 配置 Verify Troubleshoot 故障排除命令 Related

More information

Quidway S3526系列交换机R0028P01版本发布

Quidway S3526系列交换机R0028P01版本发布 MSR V7 系列路由器和 MSR V5 系列路由器野蛮式对接 L2TP over IPSEC 典型配置 一 组网需求 : 要求 MSR3020 和 MSR3620 之间路由可达,PCA 使用 MSR3620 上的 loopback 0 口代替,PCB 由 MSR3020 上的 loopback 0 口代替, 并且有如下要求 : 1 双方使用野蛮模式建立 IPsec 隧道 ; 2 双方使用预共享密钥的方式建立

More information

思科 ASA 系列 VPN CLI 配置指南 软件版本 9.3

思科 ASA 系列 VPN CLI 配置指南 软件版本 9.3 软件版本 9.3 发布日期 :2014 年 7 月 24 日 思科系统公司 www.cisco.com 思科在全球设有 200 多个办事处 有关地址 电话号码和传真号码信息, 可查阅思科网站 : www.cisco.com/go/offices 文本部件号 : 不适用, 仅在线提供 本手册中有关产品的规格和信息如有更改, 恕不另行通知 我们相信本手册中的所有声明 信息和建议均准确可靠, 但不提供任何明示或暗示的担保

More information

IPSec对接案例

IPSec对接案例 AR120&AR150&AR160&AR200&AR500&AR510&A R1 文档版本 V1.0 发布日期 2015-09-30 华为技术有限公司 版权所有 华为技术有限公司 2015 保留一切权利 非经本公司书面许可, 任何单位和个人不得擅自摘抄 复制本文档内容的部分或全部, 并不得以任何形式传播 商标声明 和其他华为商标均为华为技术有限公司的商标 本文档提及的其他所有商标或注册商标, 由各自的所有人拥有

More information

D. 192.168.5.32 E. 192.168.5.14 答 案 :C 3. 工 作 站 A 配 置 的 IP 地 址 为 192.0.2.24/28. 工 作 站 B 配 置 的 IP 地 址 为 192.0.2.100/28. 两 个 工 作 站 之 间 有 直 通 线 连 接, 两 台

D. 192.168.5.32 E. 192.168.5.14 答 案 :C 3. 工 作 站 A 配 置 的 IP 地 址 为 192.0.2.24/28. 工 作 站 B 配 置 的 IP 地 址 为 192.0.2.100/28. 两 个 工 作 站 之 间 有 直 通 线 连 接, 两 台 CCNP 学 前 测 试 题 都 选 自 官 方 的 全 真 考 试 题, 共 100 道 题 实 际 测 试 选 60 道 题, 同 官 方 正 式 考 题 数 目 基 本 一 致, 因 此 等 于 是 模 拟 考 试, 采 用 网 上 形 式 进 行 测 评 学 前 测 评 目 的 是 为 了 检 验 大 家 对 CCNA 阶 段 知 识 掌 握 的 程 度, 同 时 对 CCNA 最 核 心

More information

EPSON

EPSON NPD5493-00 TC .... 5....5....5....6 SSL/TLS....7....7 IP....8.... 8 Web Config...9 Web Config...10 EpsonNet Config...11 EpsonNet Config Windows...11 EpsonNet Config Windows...11 EpsonNet Config - Windows...

More information

EPSON

EPSON NPD6017-00 TC .... 6....6....6....8....8....8....10....12....14....14....15....15....15....15....17....17 IP....17 DNS Proxy....18....18 IP....18 LAN...22....25 Web Config ( )...25....26 /....26....30....32....33....34....36....37....37....38....38

More information

ebook106-17

ebook106-17 17 Mark Kadrich ( R A D I U S ) S L I P C S L I P P P P I P I n t e r n e t I n t e r n e t 110 ( / ) 24 7 70 80 56 K ( P S T N ) 17.1 / ( m o - d e m ) P S T N ( 17-1 ) P S T N 17-1 PSTN 176 17.1.1 ISDN

More information

IP505SM_manual_cn.doc

IP505SM_manual_cn.doc IP505SM 1 Introduction 1...4...4...4...5 LAN...5...5...6...6...7 LED...7...7 2...9...9...9 3...11...11...12...12...12...14...18 LAN...19 DHCP...20...21 4 PC...22...22 Windows...22 TCP/IP -...22 TCP/IP

More information

SL2511 SR Plus 操作手冊_單面.doc

SL2511 SR Plus 操作手冊_單面.doc IEEE 802.11b SL-2511 SR Plus SENAO INTERNATIONAL CO., LTD www.senao.com - 1 - - 2 - .5 1-1...5 1-2...6 1-3...6 1-4...7.9 2-1...9 2-2 IE...11 SL-2511 SR Plus....13 3-1...13 3-2...14 3-3...15 3-4...16-3

More information

路由器基本配置

路由器基本配置 路由器基本配置 本章内容 路由器的基本操作 实验练习 常用的路由器配置方法 TFTP Console MODEM AUX telnet web 任何 Interface AUX 备份接口, 一般用于路由器的管理备份接口 路由器的操作模式 : 配置模式 1. 线路配置模式 Router(config-line)# 配置路由器的线路参数 2. 路由协议配置模式 Router(config-router)#

More information

R3105+ ADSL

R3105+ ADSL ... 1 1 1... 1 1 2... 1... 3 2 1... 3 2 2... 3 2 3... 5 2 4... 5 2 4 1... 5... 7 3 1... 7 3 2... 8 3 2 1... 8 3 2 2... 9 3 3... 12 3 3 1... 13 3 3 2 WAN... 16 3 3 3 LAN... 21 3 3 4 NAT... 22 3 3 5... 24

More information

802.11 Session 802.11 802.11 802.11 LAN LAN 802.11 802.11 LAN LAN / / / ROI 70 CompUSA AP / IT WLAN WLAN / / Barcode POS WEP HIPAA LANS 802.11 802.11 LAN LAN 802.11 (SSID) (WEP) MAC (SSID) Cisco SSID SSID

More information

EPSON

EPSON NPD 4956-00 TC .... 5....5....5....6 SSL/TLS....7 IP....8....8....9 Web Config...10 Web Config...11 EpsonNet Config...12 EpsonNet Config Windows...13 EpsonNet Config Windows...13 EpsonNet Config - Windows...

More information

NSC-161

NSC-161 IP Session IP? IP Cisco IP IP IP IP IP? LAN Software Bluetooth,, 802.11 IP IP IP QoS IP Trust Domain (TD 1 ) TD 2 AR AR AP AP (MN) (MN) IP IP ( ) (MR) IP LAN MR (AP) IP 802.11 (AL) LAN/PAN 802.11, 802.15,

More information

GPRS IP MODEM快速安装说明

GPRS IP MODEM快速安装说明 GF-3026D CDMA 无 线 路 由 器 用 户 手 册 北 京 嘉 复 欣 科 技 有 限 公 司 地 址 : 北 京 市 海 淀 区 阜 成 路 115 号 北 京 印 象 2 号 楼 213 室 电 话 :86-10-88122130 88153193 88153197 传 真 :86-10-88122129 网 站 :http://www.garefowl.com/ 目 录 一 产 品

More information

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南 Symantec Sygate Enterprise Protection 防 护 代 理 安 装 使 用 指 南 5.1 版 版 权 信 息 Copyright 2005 Symantec Corporation. 2005 年 Symantec Corporation 版 权 所 有 All rights reserved. 保 留 所 有 权 利 Symantec Symantec 徽 标 Sygate

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : 070-647 Title : Windows Server 2008,Enterprise Administrator Version : Demo 1 / 13 1. Active directory Windows Server 2008 (WAN) WAN WAN A.

More information

ext-web-auth-wlc.pdf

ext-web-auth-wlc.pdf 使 用 无 线 局 域 网 控 制 器 的 外 部 Web 身 份 验 证 配 置 示 例 目 录 简 介 先 决 条 件 要 求 使 用 的 组 件 规 则 背 景 信 息 外 部 Web 身 份 验 证 过 程 网 络 设 置 配 置 为 来 宾 用 户 创 建 动 态 接 口 创 建 预 先 身 份 验 证 ACL 在 WLC 上 为 来 宾 用 户 创 建 本 地 数 据 库 配 置 外 部

More information

11N 无线宽带路由器

11N 无线宽带路由器 http://www.tenda.com.cn 1... 1 1.1... 1 1.2... 1 2... 3 2.1... 3 2.2... 3 2.3... 5 2.4... 6 2.5... 7 2.6... 9 2.6.1 无线基本设置... 9 2.6.2 无线加密设置... 9 2.7... 10 3... 18 3.1... 18 3.2... 19 3.2.1 ADSL 拨号上网设置...

More information

<4D6963726F736F667420576F7264202D20D2F8D0D043444D41CEDECFDFBDD3C8EB41544DBBFAC1AACDF8D3A6D3C3BDE2BEF6B7BDB0B82DD0DEB8C4B0E62E646F63>

<4D6963726F736F667420576F7264202D20D2F8D0D043444D41CEDECFDFBDD3C8EB41544DBBFAC1AACDF8D3A6D3C3BDE2BEF6B7BDB0B82DD0DEB8C4B0E62E646F63> 银 行 CDMA 无 线 接 入 ATM 机 联 网 应 用 解 决 方 案 北 京 泰 亚 东 方 通 信 设 备 有 限 公 司 公 司 介 绍 北 京 泰 亚 东 方 通 信 设 备 有 限 公 司 成 立 于 1992 年, 于 2002 年 开 始 关 注 并 进 行 2.5G 无 线 数 据 传 输 产 品 的 研 发 和 生 产, 目 前 已 经 自 主 拥 有 GPRS 和 CDMA

More information

ebook140-8

ebook140-8 8 Microsoft VPN Windows NT 4 V P N Windows 98 Client 7 Vintage Air V P N 7 Wi n d o w s NT V P N 7 VPN ( ) 7 Novell NetWare VPN 8.1 PPTP NT4 VPN Q 154091 M i c r o s o f t Windows NT RAS [ ] Windows NT4

More information

配置 Cisco 827 上带VPN IPSec NAT 超载的PPPoE

配置 Cisco 827 上带VPN IPSec NAT 超载的PPPoE 配置 Cisco 827 上带 VPN IPSec NAT 超载的 PPPoE 目录 简介开始使用前规则先决条件使用的组件配置网络图配置验证故障排除故障排除命令相关信息 简介 Cisco 827 路由器通常是 DSL 客户端前置设备 (CPE) 在此示例配置中, 思科 827 配置用于以太网点对点协议 (PPPoE 的 ), 用作使用思科 3600 路由器的 LAN-to-LAN IPSec 隧道中的对端

More information

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas 目录 1 IPv6 快速转发 1-1 1.1 IPv6 快速转发配置命令 1-1 1.1.1 display ipv6 fast-forwarding aging-time 1-1 1.1.2 display ipv6 fast-forwarding cache 1-1 1.1.3 ipv6 fast-forwarding aging-time 1-3 1.1.4 ipv6 fast-forwarding

More information

目 录(目录名)

目  录(目录名) 目录 1 域名解析配置命令... 1-1 1.1 域名解析配置命令...1-1 1.1.1 display dns domain... 1-1 1.1.2 display dns dynamic-host... 1-2 1.1.3 display dns proxy table... 1-2 1.1.4 display dns server... 1-3 1.1.5 display ip host...

More information

目 录(目录名)

目  录(目录名) 目录 目录...1-1 1.1 域名解析配置命令... 1-1 1.1.1 display dns domain... 1-1 1.1.2 display dns dynamic-host... 1-1 1.1.3 display dns server... 1-2 1.1.4 display ip host... 1-3 1.1.5 dns domain... 1-4 1.1.6 dns resolve...

More information

ebook140-9

ebook140-9 9 VPN VPN Novell BorderManager Windows NT PPTP V P N L A V P N V N P I n t e r n e t V P N 9.1 V P N Windows 98 Windows PPTP VPN Novell BorderManager T M I P s e c Wi n d o w s I n t e r n e t I S P I

More information

財金資訊-80期.indd

財金資訊-80期.indd IPv6 / LINE YouTube TCP/IP TCP (Transmission Control Protocol) IP (Internet Protocol) (node) (address) IPv4 168.95.1.1 IPv4 1981 RFC 791 --IP IPv4 32 2 32 42 IP (Internet Service Provider ISP) IP IP IPv4

More information

FortiGate-v5.2-PPPOE 拨号协商时的 AC-name 和 Service-name 版本 1.0 时间 2015 年 3 月 支持的版本 FortiOS v5.2.x 作者 黄豪赫 状态 已审核 反馈

FortiGate-v5.2-PPPOE 拨号协商时的 AC-name 和 Service-name 版本 1.0 时间 2015 年 3 月 支持的版本 FortiOS v5.2.x 作者 黄豪赫 状态 已审核 反馈 FortiGate-v5.2-PPPOE 拨号协商时的 AC-name 和 Service-name 版本 1.0 时间 2015 年 3 月 支持的版本 FortiOS v5.2.x 作者 黄豪赫 状态 已审核 反馈 support_cn@fortinet.com 1 目 录 简介...3 PPPoE 发现阶段简介...3 相关组件...4 参考文档...4 FortiGate 相关命令介绍...

More information

SEC-220

SEC-220 Session CERT/CC 60000 50000 40000 52,658 30000 26,829 20000 10000 0 2,412 1995 1999 2000 2001 Q1, 2002 Source: http://www.cert.org/stats/ CERT/CC 3000 2500 2000 2,437 1500 1000 500 0 171 1,065 1995

More information

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas

目录 1 IPv6 快速转发 IPv6 快速转发配置命令 display ipv6 fast-forwarding aging-time display ipv6 fast-forwarding cache ipv6 fas 目录 1 IPv6 快速转发 1-1 1.1 IPv6 快速转发配置命令 1-1 1.1.1 display ipv6 fast-forwarding aging-time 1-1 1.1.2 display ipv6 fast-forwarding cache 1-1 1.1.3 ipv6 fast-forwarding aging-time 1-3 1.1.4 ipv6 fast-forwarding

More information

湖北省政府采购中心

湖北省政府采购中心 湖 北 省 省 级 政 府 采 购 招 标 文 件 项 目 编 号 :EZC-2014-ZX1026 项 目 名 称 : 湖 北 省 测 绘 成 果 档 案 馆 测 绘 服 务 云 平 台 配 套 设 备 购 置 招 标 内 容 : 五 台 精 密 空 调 两 台 核 心 交 换 设 备 一 台 上 网 行 为 管 理 设 备 一 台 安 全 VPN 设 备 湖 北 省 政 府 采 购 中 心 二

More information

联想天工800R路由器用户手册 V2.0

联想天工800R路由器用户手册 V2.0 LSA-800R V2.0 2 0 0 4 l e n o v o 0755-33306800 www.lenovonetworks.com support@lenovonet.com 1 1 1.1 1 1.2 1 2 2 2.1 2 2.2 2 3 2 3.1 2 3.2 3 3.3 4 3.4 5 4 TCP/IP 5 4.1 Windows 95/98/ME 5 4.2 Windows 2000/XP

More information

EPSON

EPSON NPD5668-00 TC .... 6....6....6....8....8....10....11....11....12....12....12....12 IP....13 DNS....13....13....15....15.... 18....21 Web Config ( )...21....23....23....24....27.... 27 Web Config.... 28....30....30....31

More information

SGX808 IPsec功能

SGX808 IPsec功能 SGX808 IPsec 功能 雅马哈株式会社 2016 年 1 月第 2.01 版 Copyright 2014-2016 Yamaha Corporation 1 更新记录更新日期 版本 说明 2014.05.29 1.00 初版发行 2015.02.04 2.00 可以执行 2 个对话 可以指定主机名称作为目的地信息 可以设置 IPsec 作为默认路由 2016.01.15 2.01 追加了

More information

Dell SonicWALL Network Security Appliance Dell SonicWALL Network Security Appliance (NSA) (Reassembly-Free Deep Packet Inspection, RFDPI) NSA NSA RFDP

Dell SonicWALL Network Security Appliance Dell SonicWALL Network Security Appliance (NSA) (Reassembly-Free Deep Packet Inspection, RFDPI) NSA NSA RFDP Dell SonicWALL Network Security Appliance Dell SonicWALL Network Security Appliance (NSA) (Reassembly-Free Deep Packet Inspection, RFDPI) NSA NSA RFDPI NSA Web URL CloudAV Dell SonicWALL Capture NSA Dell

More information

ch08.PDF

ch08.PDF 8-1 CCNA 8.1 CLI 8.1.1 8-2 8-3 8.1.21600 2500 1600 2500 / IOS 8-4 8.2 8.2.1 A 5 IP CLI 1600 2500 8-5 8.1.2-15 Windows 9598NT 2000 HyperTerminal Hilgraeve Microsoft Cisco HyperTerminal Private Edition (PE)

More information

EPSON

EPSON NPD5910-00 TC .... 6....6....6....8....8....8....10....12....14....14....15....15.... 15....15....17....17 IP....18 DNS Proxy....18....18 IP....19 LAN...22....25 Web Config ( )...25....26 /....26....30....32....36....37....38....40....40....41....41

More information

ARP ICMP

ARP ICMP ARP ICMP 2 9-1 ARP 9-2 ARP 9-3 ARP 9-4 ICMP 9-5 ICMP 9-6 ICMP 9-7 ICMP 3 ARP ICMP TCP / IP, IP ARP ICMP 3 IP, ARP ICMP IP ARP ICMP 2, 4 9-1 ARP, MAC, IP IP, MAC ARP Address Resolution Protocol, OSI ARP,,

More information

D-link用户手册.doc

D-link用户手册.doc 声 明 Copyright 1986-2013 版 权 所 有, 保 留 一 切 权 利 非 经 本 公 司 书 面 许 可, 任 何 单 位 和 个 人 不 得 擅 自 摘 抄 复 制 本 书 内 容 的 部 分 或 全 部, 并 不 得 以 任 何 形 式 传 播 由 于 产 品 版 本 升 级 或 其 它 原 因, 本 手 册 内 容 会 不 定 期 进 行 更 新, 为 获 得 最 新 版

More information

active phisical rp address: backup phisical rp address: 截取部分 TOPO 图说明到 不通的问题 : internet internet tengige 0/0/0/0 tengige

active phisical rp address: backup phisical rp address: 截取部分 TOPO 图说明到 不通的问题 : internet internet tengige 0/0/0/0 tengige ASR9000 ping 丢包 troubleshooting 目录 硬件平台软件版本案例介绍问题分析思路问题总结经验总结相关命令 硬件平台 ASR9000 软件版本 4.2.0 案例介绍 拓扑示例 : 问题, 客户从外网 internet ping 3 个 vrrp subnet 的地址时候始终只能通一个 IP 地址 : vrrp virtual IP :2.2.2.129 其他不能 ping 通的

More information

ebook140-11

ebook140-11 11 VPN Windows NT4 B o r d e r M a n a g e r VPN VPN V P N V P N V P V P N V P N TCP/IP 11.1 V P N V P N / ( ) 11.1.1 11 V P N 285 2 3 1. L A N LAN V P N 10MB 100MB L A N VPN V P N V P N Microsoft PPTP

More information

C3_ppt.PDF

C3_ppt.PDF C03-101 1 , 2 (Packet-filtering Firewall) (stateful Inspection Firewall) (Proxy) (Circuit Level gateway) (application-level gateway) (Hybrid Firewall) 2 IP TCP 10.0.0.x TCP Any High Any 80 80 10.0.0.x

More information

EPSON

EPSON NPD5265-00 TC .... 5....5....5....6 SSL/TLS....7....7 IP....8....8....8.... 9 Web Config...10 Web Config....11 EpsonNet Config...12 EpsonNet Config Windows...13 EpsonNet Config Windows...13 EpsonNet Config

More information

epub 30-12

epub 30-12 12 IP I P I P E s t a b l i s h e d I P I P l o c k - a n d - k e y V T Y 12.1 1) 2) D D R 3) 4) 5) 12.2 IP C i s c o 1) I P I P I P 402 CCIE 1 I P 0 0.0.0.0 1 3 150. 1. 1 1 ~ 255 150. 1. 1. 0 2) Inbound

More information

目录 1 IPv6 PIM Snooping 配置命令 IPv6 PIM Snooping 配置命令 display pim-snooping ipv6 neighbor display pim-snooping ipv6 routing-ta

目录 1 IPv6 PIM Snooping 配置命令 IPv6 PIM Snooping 配置命令 display pim-snooping ipv6 neighbor display pim-snooping ipv6 routing-ta 目录 1 IPv6 PIM Snooping 配置命令 1-1 1.1 IPv6 PIM Snooping 配置命令 1-1 1.1.1 display pim-snooping ipv6 neighbor 1-1 1.1.2 display pim-snooping ipv6 routing-table 1-2 1.1.3 display pim-snooping ipv6 statistics

More information

计算机网络实验说明

计算机网络实验说明 计算机网络实验说明 龚旭东 电三楼 420 lzgxd@mailustceducn 2011 年 11 月 1 日 龚旭东 (TA) 计算机网络实验说明 2011 年 11 月 1 日 1 / 20 Outline 1 实验系统介绍 实验环境实验流程 2 实验内容编程实验交互实验观察实验 3 一些控制台命令 4 实验报告说明 龚旭东 (TA) 计算机网络实验说明 2011 年 11 月 1 日 2

More information

Simulator By SunLingxi 2003

Simulator By SunLingxi 2003 Simulator By SunLingxi sunlingxi@sina.com 2003 windows 2000 Tornado ping ping 1. Tornado Full Simulator...3 2....3 3. ping...6 4. Tornado Simulator BSP...6 5. VxWorks simpc...7 6. simulator...7 7. simulator

More information

NetST 2300系列防火墙产品白皮书

NetST 2300系列防火墙产品白皮书 2000 (NetST 2000 ) ... 3... 4 NetST 2000... 5 1...5 2...5 3...6 4...9 5...9 6...9 7...10 7.1...10 7.2...10 7.3...11 7.4...11 7.5...13 7.6...13 7.7 VPN...14 7.8...14 7.9...15 7.10...17 7.11 IP...17 7.12...18

More information

AL-M200 Series

AL-M200 Series NPD4754-00 TC ( ) Windows 7 1. [Start ( )] [Control Panel ()] [Network and Internet ( )] 2. [Network and Sharing Center ( )] 3. [Change adapter settings ( )] 4. 3 Windows XP 1. [Start ( )] [Control Panel

More information

目录 简介... 3 组网需求与拓扑... 3 配置步骤... 4 步骤 1 基本上网配置... 4 步骤 2 配置 VPN 拨号的用户和用户组... 4 步骤 3 配置 L2TP VPN... 5 步骤 4 配置 IPsec VPN... 6 步骤 5 配置防火墙策略... 9 客户端接入...

目录 简介... 3 组网需求与拓扑... 3 配置步骤... 4 步骤 1 基本上网配置... 4 步骤 2 配置 VPN 拨号的用户和用户组... 4 步骤 3 配置 L2TP VPN... 5 步骤 4 配置 IPsec VPN... 6 步骤 5 配置防火墙策略... 9 客户端接入... FortiGate-v5.0 L2TP over IPsec 配置案例 版本 1.0 时间支持的版本作者状态反馈 2015 年 10 月 FortiGate v4.x.x v5.x.x 刘康明已审核 support_cn@fortinet.com 目录 简介... 3 组网需求与拓扑... 3 配置步骤... 4 步骤 1 基本上网配置... 4 步骤 2 配置 VPN 拨号的用户和用户组... 4

More information

ch09.PDF

ch09.PDF 9-1 / (TCP/IP) TCP/IP TCP/IP ( ) ICMP ARP RARP 9.1 TCP/IP 9.1.1 TCP/IP OSI TCP/IP (DARPA) DARPA TCP/IP UNIX Berkeley Software DistributionTCP/IP TCP/IP TCP/IP TCP/IP TCP/IP TCP/IP OSI - TCP/IP ( ) ( )

More information

VIDEOJET connect 7000 VJC-7000-90 zh- CHS Operation Manual VIDEOJET connect 7000 zh-chs 3 目 录 1 浏 览 器 连 接 7 1.1 系 统 要 求 7 1.2 建 立 连 接 7 1.2.1 摄 像 机 中 的 密 码 保 护 7 1.3 受 保 护 的 网 络 7 2 系 统 概 述 8 2.1 实 况

More information

DOS下常用的网络命令.PDF

DOS下常用的网络命令.PDF DOS .... 1.1... 1.2... DOS... 2.1 ARP... 2.2 Finger... 2.3 Ftp... 2.4 Nbtstat... 2.5 Netstat... 2.6 Ping... 2.7 Rcp... 2.8 Rexec... 2.9 Route... 2.10 Rsh... 2.11 Tftp... 2.12 Tracert... 1 1 1 1 1 2 3 4

More information

<4D6963726F736F667420506F776572506F696E74202D20A1B6CFEEC4BFD2BB20B3F5CAB6BCC6CBE3BBFACDF8C2E7A1B7C8CECEF1C8FD20CAECCFA4544350A1A24950D0ADD2E9BACD4950B5D8D6B72E707074>

<4D6963726F736F667420506F776572506F696E74202D20A1B6CFEEC4BFD2BB20B3F5CAB6BCC6CBE3BBFACDF8C2E7A1B7C8CECEF1C8FD20CAECCFA4544350A1A24950D0ADD2E9BACD4950B5D8D6B72E707074> 项 目 一 : 初 识 计 算 机 网 络 任 务 三 熟 悉 TCP/IP 协 议 和 IP 地 址 一. 学 习 要 求 : 学 习 要 求 及 难 点 1. 了 解 IP 协 议 TCP 协 议 和 UDP 协 议 2. 熟 悉 IP 地 址 的 划 分 和 分 类 3. 了 解 IPV6 的 地 址 结 构 二. 难 点 : 1. IP 地 址 三. 学 时 : 1. 理 论 教 学 :6

More information

8 怎 么 实 现 IPv4 到 IPv6 的 平 稳 过 渡? 能 否 告 知 需 要 什 么 样 的 拨 号 软 件 可 以 支 持, 前 面 过 相 似, 我 们 建 议 的 其 实 一 个 路 线 图 目 前 阶 段 用 NAT44+6rd 如 果 你 使 用 vista/win7, 那 么

8 怎 么 实 现 IPv4 到 IPv6 的 平 稳 过 渡? 能 否 告 知 需 要 什 么 样 的 拨 号 软 件 可 以 支 持, 前 面 过 相 似, 我 们 建 议 的 其 实 一 个 路 线 图 目 前 阶 段 用 NAT44+6rd 如 果 你 使 用 vista/win7, 那 么 思 科 运 营 商 IPv6 专 场 -IPv6 的 发 展 趋 势, 经 验 及 建 议 网 络 研 讨 会 在 线 精 彩 问 答 回 顾 序 号 问 题 回 答 我 想 要 了 解 的 就 是 思 科 有 没 有 一 种 方 法 和 技 术, 比 如 在 用 户 终 端 (PC) 和 一 个 双 协 议 栈 路 由 器 上 建 立 一 条 隧 道, 隧 道 外 层 是 IPv6 的, 而 内

More information

ebook71-13

ebook71-13 13 I S P Internet 13. 2. 1 k p p p P P P 13. 2. 2 1 3. 2. 3 k p p p 1 3. 2. 4 l i n u x c o n f P P P 13. 2. 5 p p p s e t u p 13. 2. 6 p p p s e t u p P P P 13. 2. 7 1 3. 2. 8 C a l d e r a G U I 13.

More information

2002 7 2 Session Number E-Business PSTN PSTN Remote Site Frame Relay X.25 Leased Line : & Self Replicating Code Password Guessing 1980 Exploiting Known Vulnerabilities Password Cracking Back Doors

More information

<4D F736F F F696E74202D20C8F1BDDDB0B2C8ABD7A8CFEEC8CFD6A4BFCEB3CCCEE5A3A856504EBCBCCAF5A3A92E BBCE6C8DDC4A3CABD5D>

<4D F736F F F696E74202D20C8F1BDDDB0B2C8ABD7A8CFEEC8CFD6A4BFCEB3CCCEE5A3A856504EBCBCCAF5A3A92E BBCE6C8DDC4A3CABD5D> VPN 技术 学习目标 通过本章的学习, 希望您能够 : 了解什么是 VPN 技术 了解 GRE 了解 PPTP/L2TP 了解密码学 了解 PKI 架构 了解 IPsec 技术 配置 RG-WALL VPN 网关 本章内容 VPN 技术概述 GRE PPTP/L2TP 密码学 PKI 架构 IPsec 配置 RG-WALL VPN 网关 课程议题 VPN 技术概述 什么是 VPN 虚拟专用网络 在公共网络的基础上构建的一个专用网络

More information

穨CAS1042快速安速說明.doc

穨CAS1042快速安速說明.doc CAS1042 4 Port 10/100M Switch Internet BroadBand Router IP IP... PC CAS1042 UTP Cable CAS1042 5V / 2.4A 6 1. 2. ADSL Cable Modem 3. CAS1042 4. TCP/IP 5. 6. 1 2 ADSL Modem Cable Modem CAS1042 ) / "LAN

More information

untitled

untitled 5.1 5.2 5.3 45 45 6 1: http://www.cmbchina.com/ [] 2: http://www.icbc.com.cn [] http://www.icbc.com.cn/view/gerenbanindex/html/index.htm 3 http://www.ccb.com.cn/ [] 4 http://www.abchina.com/ [] 5 63 6

More information

Epson

Epson NPD4775-03 TC No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, mechanical, photocopying, recording, or otherwise, without the prior

More information

中国计算机软件专业技术资格和水平考试

中国计算机软件专业技术资格和水平考试 全 国 计 算 机 技 术 与 软 件 专 业 技 术 资 格 ( 水 平 ) 考 试 2009 年 下 半 年 网 络 工 程 师 上 午 试 卷 ( 考 试 时 间 9 : 00~11 : 30 共 150 分 钟 ) 请 按 下 述 要 求 正 确 填 写 答 题 卡 1. 在 答 题 卡 的 指 定 位 置 上 正 确 写 入 你 的 姓 名 和 准 考 证 号, 并 用 正 规 2B 铅

More information

项目采购需求编写模板

项目采购需求编写模板 金 税 三 期 工 程 第 二 阶 段 外 部 信 息 交 换 项 目 竞 争 性 磋 商 文 件 技 术 部 分 项 目 编 号 :0706-15410008N059 采 购 人 : 国 家 税 务 总 局 采 购 代 理 机 构 : 中 国 技 术 进 出 口 总 公 司 二 〇 一 五 年 十 二 月 1 / 91 目 录 第 一 章 金 税 三 期 工 程 项 目 背 景... 5 1.1

More information

epub 61-2

epub 61-2 2 Web Dreamweaver UltraDev Dreamweaver 3 We b We b We Dreamweaver UltraDev We b Dreamweaver UltraDev We b We b 2.1 Web We b We b D r e a m w e a v e r J a v a S c r i p t We b We b 2.1.1 Web We b C C +

More information

工程师培训

工程师培训 .1 TCP/IP TCP/IP 1 .2.2.1 Host 1960 S 1970 S Host Low Speed Lines 1970 S 1980 S pc Server Local Interneting 1980 S 1990 S Branch. pc Branch. WAN Branch. pc pc IBM SNA IBM X.25 2 .2.2 OSI OSI Application

More information

Juniper SRX series - TheGreenBow VPN Client

Juniper SRX series - TheGreenBow VPN Client TheGreenBow VPN 客户端软件 Juniper SRX 系列 防火墙 配置手册 WebSite: Contact: http://www.thegreenbow.com support@thegreenbow.com IPSec VPN 客户端 配置向导版权归 TheGreenBow Sistech SA - 所有 2001-2011 1/14 目录 1 介绍... 3 1.1 手册用途...

More information

BYOD Http Redirect convergence Client (1) 2008R2 NLB( ) (2) NLB Unicast mode switch flooding (arp ) NLB DNS Redirect 1. Round-Robin DNS DNS IP/DNS Cli

BYOD Http Redirect convergence Client (1) 2008R2 NLB( ) (2) NLB Unicast mode switch flooding (arp ) NLB DNS Redirect 1. Round-Robin DNS DNS IP/DNS Cli BYOD 204 2015 GoogleHicloud (Load Balance) Server Load Balance Link Load Balance Server Redirect 1. URL Redirect redirector URL redirect Real Server Client HTTP Real Server Web Client 2 (1) URL Redirect

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 学习沉淀成长分享 ACL 访问控制列表 红茶三杯 http://weibo.com/vinsoney Latest update: 2012-08-01 技术背景 禁止 192.168.1.0/24 及 192.168.2.0/24 访问右侧的 IP 网络 如何抓取感兴趣 的流量? 192.168.1.0/24 192.168.2.0/24 192.168.3.0/24 192.168.4.0/24

More information

一、选择题

一、选择题 计 算 机 网 络 基 础 第 7 章 练 习 思 考 与 认 识 活 动 一 选 择 题 1. 下 面 命 令 中, 用 于 检 查 WINDOWS2000 下 TCP/IP 配 置 信 息 的 是 ( ) A. cmd B. nslookup C. ipconfig D. ping 2. 内 部 网 关 协 议 RIP 是 一 种 广 泛 使 用 的 基 于 距 离 矢 量 算 法 的 协 议

More information

第 7 章 下 一 代 网 际 协 议 IPv6 141 足 的 措 施 只 能 是 权 宜 之 计 (3) 路 由 表 膨 胀 早 期 IPv4 的 地 址 结 构 也 造 成 了 路 由 表 的 容 量 过 大 IPv4 地 址 早 期 为 网 络 号 + 主 机 号 结 构, 后 来 引 入

第 7 章 下 一 代 网 际 协 议 IPv6 141 足 的 措 施 只 能 是 权 宜 之 计 (3) 路 由 表 膨 胀 早 期 IPv4 的 地 址 结 构 也 造 成 了 路 由 表 的 容 量 过 大 IPv4 地 址 早 期 为 网 络 号 + 主 机 号 结 构, 后 来 引 入 第 7 章 下 一 代 网 际 协 议 IPv6 本 章 是 有 关 下 一 代 网 际 协 议 IPv6 的 描 述, 重 点 介 绍 IPv6 的 产 生 原 因 IPv6 的 地 址 与 IPv6 首 部 格 式 等 通 过 本 章 的 学 习, 读 者 应 重 点 掌 握 和 理 解 以 下 内 容 : IPv4 向 IPv6 发 展 的 必 然 性 IPv6 的 新 特 性 IPv6 地

More information

穨CAS1042中文手冊.doc

穨CAS1042中文手冊.doc CAS1042 4 port 10/100M Switch Internet BroadBand Router ...1...2...3 5...3 1...3 2 ADSL MODEM CABLE MODEM...4...5 4 TCP/IP...6 Windows 95 / 98 / ME/XP...6 WINDOWS 2000...8 WINDOWS NT 4.0...8...9 ADSL (ADSL

More information

配置与EAP-PEAP和本地窗口客户端的ASA IKEv2远程访问

配置与EAP-PEAP和本地窗口客户端的ASA IKEv2远程访问 配置与 EAP-PEAP 和本地窗口客户端的 ASA IKEv2 远程访问 目录 简介先决条件要求使用的组件背景信息 AnyConnect 安全移动性客户端考虑事项配置网络图证书 ISE 步骤 1. 添加 ASA 到在 ISE 的网络设备 步骤 2. 在本地存储创建一用户名 ASA Windows 7 步骤 1. 安装 CA 证书 步骤 2. 配置 VPN 连接 验证 Windows 客户端日志在

More information

前言

前言 V1.0 ...3...4 1....4 2....6 3....6...7...8 1....8 1.1...8 1.2...8 1.3...10 2....10 2.1... 11 2.2...13 3....15 3.1...15 3.2...17 3.3...17 4....17 4.1...17 4.2...18 4.3 WebST...19 4.4 OA UNIX...22 4.5...22

More information

IP Access Lists IP Access Lists IP Access Lists

IP Access Lists IP Access Lists IP Access Lists Chapter 10 Access Lists IP Access Lists IP Access Lists IP Access Lists Security) IP Access Lists Access Lists (Network router For example, RouterA can use an access list to deny access from Network 4

More information

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 第 1 页共 32 页 crm Mobile V1.0 for IOS 用户手册 一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页 二 crm Mobile 界面介绍 : 第 3 页共 32 页 三 新建 (New) 功能使用说明 1 选择产品 第 4 页共 32 页 2 填写问题的简要描述和详细描述 第 5 页共

More information

AnyConnect 安全移动客户端的功能、许可证 和操作系统,版本 4.0

AnyConnect 安全移动客户端的功能、许可证 和操作系统,版本 4.0 AnyConnect 安全移动客户端的 许可证和操作系统, 版本 4.0 本文档将为您介绍 AnyConnect 4.0 版本的 许可证要求以及 AnyConnect 支持的终端操作系统 支持的操作系统 Cisco AnyConnect 安全移动客户端 4.0 支持以下操作系统 操作系统版本 Windows Windows 8.1 x86 (32 位 ) 和 x64 (64 位 ) Windows

More information

配置ISE 2.2 IPSEC巩固纳季(IOS)通信

配置ISE 2.2 IPSEC巩固纳季(IOS)通信 配置 ISE 2.2 IPSEC 巩固纳季 (IOS) 通信 目录 简介先决条件要求使用的组件背景信息 ISE IPSec 体系结构网络图配置 ikev1 IPSec VPN 使用预先共享密钥 ( 箱外 ) IOS 路由器 CLI 配置配置接口配置 ISAKMP (IKEv1) 策略配置 crypto Isakmp key 配置 VPN 流量的 ACL 利益配置转换集配置加密映射并且应用它对接口 IOS

More information

(UTM???U_935_938_955_958_959 V2.1.9.1)

(UTM???U_935_938_955_958_959 V2.1.9.1) 192.16 www.sharetech.com.tw UTM 多 功 能 防 火 牆 管 理 者 手 冊 V 2.1.9.1 目 錄 第 一 章 安 裝 與 訊 息... 7 1-1 建 議 的 安 裝 設 定 圖... 8 1-2 軟 體 安 裝 設 定... 9 1-3 首 頁 訊 息... 14 1-4 型 號 與 功 能 對 照 表... 17 第 二 章 系 統 設 定... 19 2-1

More information

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

KillTest 质量更高 服务更好 学习资料   半年免费更新服务 KillTest 质量更高 服务更好 学习资料 http://www.killtest.cn 半年免费更新服务 Exam : JN0-331 Title : SEC,Specialist(JNCIS-SEC) Version : Demo 1 / 10 1. Regarding zone types, which statement is true? A. You cannot assign an

More information

UDP 8.2 TCP/IP OSI OSI 3 OSI TCP/IP IP TCP/IP TCP/IP Transport Control Protocol TCP User Datagram Protocol UDP TCP TCP/IP IP TCP TCP/IP TC

UDP 8.2 TCP/IP OSI OSI 3 OSI TCP/IP IP TCP/IP TCP/IP Transport Control Protocol TCP User Datagram Protocol UDP TCP TCP/IP IP TCP TCP/IP TC 8 TCP/IP TCP/IP TCP OSI 8.1 OSI 4 end to end A B FTP OSI Connection Management handshake Flow Control Error Detection IP Response to User s Request TCP/IP TCP 181 UDP 8.2 TCP/IP OSI OSI 3 OSI 3 8.1 TCP/IP

More information

Microsoft Word - chp11NAT.doc

Microsoft Word - chp11NAT.doc 第 11 章 NAT Internet 技术的飞速发展, 使越来越多的用户加入到互联网, 因此 IP 地址短缺已成为一个十分突出的问题 NAT(Network Address Translation, 网络地址翻译 ) 是解决 IP 地址短缺的重要手段 11.1 NAT 概述 NAT 是一个 IETF 标准, 允许一个机构以一个地址出现在 Internet 上 NAT 技术使得一个私有网络可以通过

More information

1

1 DOCUMENTATION FOR FAW-VW Auto Co., Ltd. Sales & Service Architecture Concept () () Version 1.0.0.1 Documentation FAW-VW 1 61 1...4 1.1...4 2...4 3...4 3.1...4 3.2...5 3.3...5 4...5 4.1 IP...5 4.2 DNSDNS...6

More information

SAPIDO GR-1733 無線寬頻分享器

SAPIDO GR-1733 無線寬頻分享器 1 版 權 聲 明... 4 產 品 保 固 說 明... 4 保 固 期 限... 4 維 修 辦 法... 5 服 務 條 款... 5 注 意 事 項... 6 低 功 率 電 波 輻 射 性 電 機 管 理 辦 法... 6 CE 標 誌 聲 明... 6 無 線 功 能 注 意 事 項... 6 1 產 品 特 點 介 紹... 7 1.1 LED 指 示 燈 功 能 說 明... 8 1.2

More information

飞鱼星多WAN防火墙路由器用户手册

飞鱼星多WAN防火墙路由器用户手册 WAN VER: 20110218 Copyright 2002-2011 VOLANS WAN VR4600 VR4900 VR7200 VR7500 VR7600 1.1 1.2 IP 1.3 2.1 2.2 2.2.1 2.2.2 3.1 3.2 3.2.1 3.2.2 3.2.3 4.1 4.2 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.3 4.3.1 4.3.2

More information

清华得实WebST网络安全行业解决方案

清华得实WebST网络安全行业解决方案 WebST ( ) 010-6298822 010-82899313 http://www.th-dascom.com.cn 9 5 ... 3... 4 1.... 4 2.... 6 3.... 6... 7... 8 1.... 8 1.1... 8 1.2... 8 1.3... 10 2.... 10 2.1... 11 2.2... 13 3.... 15 3.1... 15 3.2...

More information

5204014- 程 序 设 计 语 言 A 154 5204015- 计 算 机 网 络 159 5204019- 汇 编 语 言 165 5204026- 计 算 与 优 化 课 程 设 计 169 5204039- 数 据 库 原 理 及 应 用 173 5204049- 现 代 操 作 系

5204014- 程 序 设 计 语 言 A 154 5204015- 计 算 机 网 络 159 5204019- 汇 编 语 言 165 5204026- 计 算 与 优 化 课 程 设 计 169 5204039- 数 据 库 原 理 及 应 用 173 5204049- 现 代 操 作 系 5201006- 信 息 安 全 与 保 密 4 5201008- 计 算 机 应 用 基 础 B 12 5201009- 数 据 结 构 A 18 5 2 0 1 0 1 0 - 数 据 结 构 B 2 1 5201012- 算 法 设 计 与 分 析 B 24 5 2 0 1 0 1 6 - 信 息 安 全 概 论 A 2 9 5201021- 算 法 设 计 与 分 析 33 5201030-

More information

ebook 145-6

ebook 145-6 6 6.1 Jim Lockhart Windows 2000 0 C S D Wo r m. E x p l o r e Z i p z i p p e d _ f i l e s. e x e Wo r m. E x p l o r e Z i p H i Recipient Name! I received your email and I shall send you a reply ASAP.

More information

AnyConnect 安全移动客户端功能、许可证 和操作系统,版本 4.2

AnyConnect 安全移动客户端功能、许可证 和操作系统,版本 4.2 本文档将介绍 AnyConnect 4.2 版本的 许可证要求和 AnyConnect 支持的终端操作系统 支持的操作系统 Cisco AnyConnect 安全移动客户端 4.2 支持以下操作系统 操作系统版本 Windows Windows 10 x86(32 位 ) 和 x64(64 位 ) Windows 8.1 x86(32 位 ) 和 x64(64 位 ) Windows 8 x86(32

More information

epub

epub 3 Cisco 3.1 S e t u p C i s c o C i s c o Cisco IOS C i s c o 3.2 Te l n e t T F T P 3-1 3-1 configure terminal configure memory Configure network t e l n e t < C t r l - Z > conf t N V R A M T F T P I

More information

1. 二 進 制 數 值 ( 1 10 10 01 ) 2 轉 換 為 十 六 進 制 時, 其 值 為 何? (A) ( 69 ) 16 (B) ( 39 ) 16 (C) ( 7 A ) 16 (D) ( 8 A ) 16 2. 在 電 腦 術 語 中 常 用 的 UPS, 其 主 要 功 能

1. 二 進 制 數 值 ( 1 10 10 01 ) 2 轉 換 為 十 六 進 制 時, 其 值 為 何? (A) ( 69 ) 16 (B) ( 39 ) 16 (C) ( 7 A ) 16 (D) ( 8 A ) 16 2. 在 電 腦 術 語 中 常 用 的 UPS, 其 主 要 功 能 注 意 : 考 試 開 始 鈴 ( 鐘 ) 響 前, 不 可 以 翻 閱 試 題 本 民 國 104 年 大 專 程 度 義 務 役 預 備 軍 官 預 備 士 官 考 試 試 題 計 算 機 概 論 注 意 事 項 1. 請 核 對 考 試 科 目 是 否 正 確 2. 請 檢 查 答 案 卡 座 位 及 准 考 證 三 者 之 號 碼 是 否 完 全 相 同, 如 有 不 符, 請 監 試 人

More information

* r p . 4 6 12 3 5 7 8 9bk bm btbsbrbqbp bo bn bl [ ] [ ] [ ] [ ] [SET] 1 2 3 4 5 6 7. cmcl ck 8 9 0 bk bl bm bn bo 1 2 1 2+ - bp bq 8 2 4 6 br r bs p bt ck cl cm 3 3 . 1 2 3 4 5 6 7 8 9 bk bl bm

More information

Cisco WebEx Meetings Server 2.6 版常见问题解答

Cisco WebEx Meetings Server 2.6 版常见问题解答 Cisco WebEx Meetings Server 2.6 版 常 见 问 题 解 答 介 绍 2 应 用 程 序 和 文 档 共 享 2 主 持 加 入 和 设 置 会 议 2 在 Chrome 和 Firefox 上 加 入 WebEx 会 议 或 播 放 会 议 录 制 文 件 4 适 用 于 移 动 设 备 的 Cisco WebEx 4 下 载 Cisco WebEx 应 用 程 序

More information

Web

Web Email: tian@dr.com http://www.digiark.com/tian Web 1. 2. 3. 4. 5. 6. Internet Internet (Hacker) Internet web IP 1 Internet UNIX Windows VLAN Internet IP 2 Internet FTP TELNET PING IP 8 telnet FTP RLOGIN

More information

次性密码 (OTP) 给需要获取证书的用户 如果没有邮件服务器, 也可以在 ASDM 上直接查看用户名和 OTP 4) More options 的 publish-crl interface and port 选择 outside 5) 其他采用缺省值, 点击 Apply 三 在 ASA 配置身份

次性密码 (OTP) 给需要获取证书的用户 如果没有邮件服务器, 也可以在 ASDM 上直接查看用户名和 OTP 4) More options 的 publish-crl interface and port 选择 outside 5) 其他采用缺省值, 点击 Apply 三 在 ASA 配置身份 ASA 本地 CA 实现 SSL VPN 证书认证 目录 一 配置说明二 将 ASA 配置为 CA 服务器三 在 ASA 配置身份证书四 配置 Local Users 用户验证五 配置 AnyConnect SSL VPN 访问六 生成用户数字证书七 Apple ios AnyConnect VPN 客户端验证八 Windows XP AnyConnect VPN 客户端验证附录 基于证书验证的扩展配置

More information

NAT环境下采用飞塔NGFW

NAT环境下采用飞塔NGFW 版本 V1.0 时间 作者 2017 年 5 月 王祥 状态 反馈 support_cn@fortinet.com 目录 1 应用场景... 3 2 网络拓扑... 3 3 版本说明... 3 4 配置步骤... 4 4.1 FortiGate VXLAN 配置... 4 4.2 Ubuntu VXLAN 配置... 6 5 测试结果... 6 6 注意事项... 7 1 应用场景 VXLAN over

More information