我的组织有一台 Cisco ASA 5510,我已将其用作我们其中一个办公室的防火墙/网关。远程用户需要的大多数资源都存在于内部。我已经实施了常规方案 - 具有出站 NAT 的基本内部网络、一个主要外部接口和 PAT 池中的一些辅助公共 IP(用于面向公众的服务)、几个站点到站点的 IPSec 链接(链接到其他分支机构)等 - 我现在正在研究 VPN。
我让 WebVPN(无客户端 SSL VPN)正常工作,甚至可以遍历站点到站点的链接。目前,我保留了旧版 OpenVPN AS 以用于厚客户端 VPN。我想要做的是标准化所有 VPN 的身份验证方法,然后切换到 Cisco 的 IPSec 厚 VPN 服务器。
我正在尝试弄清楚如何才能真正实现这些 VPN 用户(胖客户端和无客户端)的身份验证。我的组织使用 Google Apps,我们已经在使用点网开放认证对一些内部服务的用户进行身份验证。我希望能够对精简和完整 VPN 执行相同的操作。
或者,使用 RSA 公钥对(ssh-keygen 类型)的基于签名的解决方案将有助于识别用户@硬件。
我试图摆脱传统的用户名/密码身份验证,尤其是如果它是 Cisco 内部的(只是另一个需要管理的密码设置,用户很容易忘记)。我知道我可以映射到现有的 LDAP 服务器,但我们只为大约 10% 的用户群创建了 LDAP 帐户(主要是用于 Linux shell 访问的开发人员)。
我猜我正在寻找的是一个中间件,它在 Cisco 中显示为 LDAP 服务器,但将与用户现有的 OpenID 身份进行交互。我在 Cisco 中看到的任何内容都表明它可以本地执行此操作。但 RSA 公钥将是亚军,并且比独立或甚至 LDAP 身份验证要好得多。这里真正实用的是什么?
答案1
我认为您无法使用 OpenID,但在大多数情况下,ASA 将与 Radius 或 Tacacs+ 服务器(例如 Cisco ACS)交互,并且该服务器将与您的身份验证器(Active Directory、RSA 服务器等)交互。
然后,Radius/Tacacs+ 服务器充当身份验证代理。
答案2
Cisco ASA 将支持许多 AAA 服务器组协议,包括 LDAP 和 NTLM v1(NT 域)。如果有人感兴趣的话可以查看配置指南的链接。
但是,由于您已经运行了无客户端 VPN,因此您应该能够对客户端 VPN 连接使用相同的 AAA 服务器组。在 ASDM 中,连接配置文件应列在无客户端和客户端下。
答案3
ASA 上一个有趣的身份验证方法是“HTTP 表单“。它从用户那里获取用户名/密码并将其提交给任意网站,然后在响应中查找适当的 cookie。这可能非常适合 OpenID 网站,尽管我从未尝试过。
答案4
有一些文档在 cisco.com 上关于使用 PKI 进行 VPN 身份验证,但是我还没有看到任何基于 RSA 密钥对的身份验证的内容。
OpenID-LDAP似乎与您想要执行的操作相反。
喝完咖啡后,我认为你试图做的事情本身就存在问题。ASA 旨在进行身份验证(确认你是谁)以及授权(确认你可以访问什么),但使用 OpenID,身份验证已经完成,你只需进行授权。