| name | configuring-multi-factor-authentication-with-duo |
| description | 在企业应用程序、VPN、RDP 和 SSH 访问点部署 Cisco Duo 多因素认证(MFA)。本技能涵盖 Duo 集成方法、自适应认证策略、设备信任评估以及符合 NIST 800-63B AAL2/AAL3 要求的抗钓鱼 MFA 部署。 |
| domain | cybersecurity |
| subdomain | identity-access-management |
| tags | ["iam","identity","access-control","authentication","mfa","duo","multi-factor"] |
| version | 1.0 |
| author | mahipal |
| license | Apache-2.0 |
使用 Duo 配置多因素认证
概述
在企业应用程序、VPN、RDP 和 SSH 访问点部署 Cisco Duo 多因素认证(Multi-Factor Authentication,MFA)。本技能涵盖 Duo 集成方法、自适应认证策略、设备信任评估以及符合 NIST 800-63B AAL2/AAL3 要求的抗钓鱼 MFA 部署。
目标
- 为 VPN、RDP、SSH 和 Web 应用程序配置 Duo MFA
- 根据用户、设备和网络上下文实施自适应访问策略
- 部署抗钓鱼认证(Duo Verified Push、WebAuthn)
- 配置设备健康策略(受信任端点、操作系统版本强制)
- 设置 Duo Admin Panel 监控和报告
- 实施 MFA 绕过和紧急访问程序
核心概念
Duo 认证方法(按安全强度排序)
- 安全密钥(WebAuthn/FIDO2):抗钓鱼,支持 AAL3
- Duo Verified Push:需要输入验证码,可抵御 MFA 疲劳攻击
- Duo Push:向 Duo Mobile 应用推送通知
- TOTP(Duo Mobile 密码):基于时间的一次性密码
- 硬件令牌:物理令牌生成的 OTP
- 短信/电话:安全性最低,仅作为回退选项使用
Duo 集成架构
- Duo Authentication Proxy:用于 RADIUS/LDAP 集成的本地代理
- Duo Web SDK:将 Duo MFA 嵌入 Web 应用程序
- Duo OIDC/SAML:云应用的 SSO 集成
- Duo for RDP:Windows 登录 MFA
- Duo Unix:基于 PAM 的 SSH MFA
自适应访问策略
- 受信任网络:降低企业网络的 MFA 摩擦
- 记住设备:跳过受信任设备的 MFA(可配置时长)
- 设备健康:根据操作系统补丁级别、加密状态、防火墙状态决定阻止或要求 MFA
- 基于风险的认证:对异常登录模式进行升级 MFA
实施步骤
步骤 1:Duo Authentication Proxy 设置
- 在 Windows/Linux 服务器上部署 Duo Authentication Proxy
- 配置主认证(AD/LDAP 或 RADIUS)
- 配置 Duo API 凭据(集成密钥、密钥、API 主机名)
- 设置故障模式(safe=当 Duo 不可达时拒绝,secure=允许)
- 测试代理与 Duo 云和 AD 的连接
步骤 2:VPN MFA 集成
- 配置 VPN 集中器进行 RADIUS 认证
- 将 RADIUS 指向 Duo Authentication Proxy
- 使用 [radius_server_auto] 部分配置 Duo 代理
- 使用 Duo Push 测试 VPN 登录
- 在注册期间向所有 VPN 用户部署
步骤 3:RDP/Windows 登录 MFA
- 在目标服务器上安装 Duo Authentication for Windows Logon
- 在 Admin Panel 中配置 Duo 应用程序
- 设置离线访问选项(允许 N 次离线登录)
- 为服务账户配置绕过
- 使用 Duo MFA 测试 RDP 登录
步骤 4:自适应策略配置
- 创建用户组(标准用户、特权用户、承包商)
- 为每个组配置认证策略:
- 标准用户:允许 Duo Push,记住设备 7 天
- 特权用户:要求 Verified Push,不记住设备
- 承包商:要求 WebAuthn,不记住设备
- 配置设备健康策略:
- 要求磁盘加密
- 阻止过期操作系统版本
- 要求启用防火墙
- 为企业 IP 设置受信任网络例外
步骤 5:部署抗钓鱼 MFA
- 启用 Verified Push(需要在登录界面输入 3 位数验证码)
- 为特权用户注册 WebAuthn/FIDO2 安全密钥
- 为高风险组禁用短信和电话
- 配置 Duo 基于风险的因素选择
- 监控 MFA 疲劳攻击模式
步骤 6:监控和响应
- 配置 Duo Admin Panel 告警
- 设置认证日志转发到 SIEM
- 监控:MFA 拒绝模式、绕过使用情况、新设备注册
- 为 MFA 被攻破创建事件响应手册
- 定期审查绕过和例外策略
安全控制
| 控制项 | NIST 800-53 | 描述 |
|---|
| MFA | IA-2(1) | 网络访问的多因素认证 |
| 特权 MFA | IA-2(2) | 特权账户访问的 MFA |
| 重放抵抗 | IA-2(8) | 抗重放认证 |
| 设备标识 | IA-3 | 设备身份和信任 |
| 认证器管理 | IA-5 | MFA 注册和生命周期 |
常见陷阱
- 未为特权账户部署抗钓鱼 MFA(Verified Push/FIDO2)
- 在生产环境中将故障模式设置为"safe"(Duo 停机时允许访问)
- 未为拥有应用程序功能设备的用户禁用短信/电话
- 忘记为笔记本电脑配置离线访问
- 未监控 MFA 疲劳/推送轰炸攻击
验证