NPS - RADIUS - Active Directory 身份验证

NPS - RADIUS - Active Directory 身份验证

是否可以使用 NPS RADIUS 作为仅支持 RADIUS 身份验证的应用程序与用于跨网络身份验证的活动目录服务器之间的中介?

我觉得所有设置都针对网络身份验证,我误解了概念还是 RADIUS?我在 NPS 设置中也找不到任何有关活动目录/LDAP 的提示。

如果不可能,那么在 Windows 服务器上还有其他方法可以实现所描述的行为吗?


编辑:我忘了提及 - 该应用程序仅支持 PAP 身份验证,因此这是必要的。


另一项修改:我已使用并配置了(在另一个应用程序中)LDAP 身份验证。我研究得越多,就越觉得 RADIUS 不应该按照我想象的那样使用。我觉得 RADIUS 更基于网络,因为它控制网络访问,而 LDAP 更适合用于网络内用户身份验证,可能是这样吗?

答案1

我认为您需要了解一些有关 RADIUS 远程身份验证拨入用户服务 (RADIUS Remote Authentication Dial In User Service) 协议的背景知识,以理解其在身份验证中的作用。

RADIUS 最初是为了对拨入调制解调器池的用户进行身份验证(以及授权和记录用户访问 - 我不会在这里讨论这些功能)而开发和部署的。设想一个调制解调器池接受来电,并且有一个包含授权拨入用户的凭据的数据库。RADIUS 是一种协议,它允许运行调制解调器池的硬件将身份验证请求卸载到服务器,从而使调制解调器池硬件无需掌握任何凭据(和身份验证策略等)的“知识”。

该协议的机制涉及 RADIUS 服务器(即执行允许/拒绝用户身份验证的服务器)代表拨入的用户接收来自 RADIUS 客户端(即接收来电的调制解调器池硬件)的请求。

RADIUS 协议相当通用,并且已适应于 802.1x 和其他需要身份验证的协议。这就是为什么您看到很多关于“网络身份验证”的引用。尽管如此,RADIUS 是一种通用协议,您完全可以拥有一个支持通过 RADIUS 协议对用户进行身份验证的应用程序。在这种情况下,该应用程序是 RADIUS 客户端。需要告知 RADIUS 服务器(Windows NPS 服务)该应用程序将发送其 RADIUS 请求的 IP 地址作为 RADIUS 客户端 IP 地址。

RADIUS 协议需要一个共享的秘密值(称为验证器) 来验证传入请求是否确实来自授权客户端(而不仅仅是一些试图使用 RADIUS 服务器暴力破解密码的攻击者)。同样,RADIUS 客户端使用身份验证器来验证响应是否确实来自 RADIUS 服务器(而不是冒充服务器身份的攻击者)。您还需要配置此值。

您需要使用策略配置 Windows NPS 服务,以支持应用程序所需的身份验证协议(如您所说,是 PAP)。Windows NPS 服务没有任何与“LDAP”相关的配置,因为它使用 Windows 的内置身份验证 API,该 API 后端到 Active Directory。基本上,您可以使用 Windows NPS 服务“免费”获得针对 Active Directory 的身份验证。

请务必查看维基百科关于 RADIUS 的文章了解有关该协议的更多详细信息,以及Microsoft 的 NPS 服务文档了解有关配置 Windows Server 端的背景信息。

编辑:

这就是我的感受。

我找到了这个西门子“安全模块”文档描述了一些“安全集成”以太网产品的 RADIUS 身份验证配置。这些东西看起来像小型防火墙,带有 IPSEC、NAT 等。

我怀疑“安全配置工具”用于配置“安全模块”。要将配置上传到安全模块(并且毫无疑问,要执行其他管理活动),用户需要向安全模块进行身份验证。这就是 RADIUS 配置发挥作用的地方。

该文档第 80 页上的图表与我所期望的完全一致——用户对安全模块的身份验证被转发到 RADIUS 服务器,该服务器向安全模块返回允许/拒绝的决定。客户端计算机根本不参与身份验证的 RADIUS 部分。

它看起来相当简单,尽管我说自己在使用 RADIUS 方面有很多经验。就使用 Microsoft NPS RADIUS 服务器的细节而言(以及您的查询:“...拨号、VPN、无线和有线...”),我只能说,我会避免使用“向导”来配置 NPS 服务并手动完成配置。同样,由于我拥有丰富的 RADIUS 经验,这对我来说看起来就像是一次反复试验的练习,但对您来说可能会有点令人生畏。我绝对不能给您一个点击式“配方”,因为我没有这些设备(尽管我很想看到一个——对它们进行安全评估似乎很有趣)。

答案2

我正在研究同样的问题,但针对的是 WatchGuard PPTP/L2TP 与 AD 的集成。虽然它们具有内置的 AD 支持,但它不能与 AD 一起使用,只能使用其内置的用户数据库或 Radius。以下介绍如何设置 FreeRADIUS 来查询 AD。

查看http://wiki.freeradius.org/guide/FreeRADIUS-Active-Directory-Integration-HOWTO

相关内容