0

我一直在从事一个项目,以使用 Google Authenticator 配置 FreeRADIUS 以实现双因素身份验证。

我用过这个指南

一切都运行良好,我什至编写了脚本来生成二维码并将其通过电子邮件发送给用户,但我想克服最后一个障碍。

例如:

假设我们的 AD 域是 my.domain.com,我使用用户名 user@my.domain.com 对 FreeRADIUS 进行身份验证,一切正常。问题是我们的 RAS 解决方案有时并不总是将整个域发送到 FreeRADIUS。在日志中,我将用户名视为 user@my(2000 年之前的域名)。这自然会失败。

我想要实现的是让 FreeRADIUS 捕捉到这一点并将 @my 替换为 @my.domain.com 。

另一种选择是重新配置所有 RAS 客户端,因为这些客户端几乎都是远程使用的,所以这是不切实际的。

我确定 FreeRADIUS 可以做到,有人可以帮助我吗?

4

1 回答 1

0

好的,我知道了。

以防万一其他人需要知道这就是我所做的。

我在 /etc/raddb/hints 中添加了以下内容(可能因发行版而异,但我使用的是 CentOS 7)

DEFAULT Suffix == "@my", Strip-User-Name = No
     User-Name := "%{User-Name}.domain.com"


DEFAULT User-Name !~ ".*@"
     User-Name := "%{User-Name}@my.domain.com"

第一个条目查看后缀是否为 JUST @my,如果是,则将 .domain.com 添加到用户名。

第二个条目检查是否存在@,如果不存在,则将@my.domain.com 添加到用户名。事实证明,这是上面未提及的附加要求。

希望它对某人有用。现在就像一个魅力。

于 2017-11-14T14:57:00.903 回答