FreeRadius LDAP 组检查
FreeRadius LDAP group check
我想实施 802.1x。属于 Microsoft domey 的计算机将被验证。交换机端口将根据计算机的组成员身份配置在 VLAN 中。配置简单。运行良好 ;) FreeRadius 3.0.19
问:由于AD的复杂性,是否可以将同一个VLAN分配给不同组的电脑?
目前我是这样操作的:
在 post-auth
if (Ldap-Group == VLAN16_SIEO1) {
update reply {
...
}
}
我想给VLAN16_BSTO1和VLAN16_ADMCE1等以VLAN16_
开头的组分配相同的VLAN
我无法在条件 "if" =~ 中使用运算符。 FreeRadius 不启动!是否可以检查组名,以免创建许多 "if" 条件?
在我的例子中,这些条件大约是 800 :)
谁能帮帮我,告诉我怎么配置才能解决这个问题,谢谢
在 LDAP 模块配置中启用 cacheable_name
- https://github.com/FreeRADIUS/freeradius-server/blob/v3.0.x/raddb/mods-available/ldap#L326
并取消注释设置缓存属性的行:https://github.com/FreeRADIUS/freeradius-server/blob/v3.0.x/raddb/mods-available/ldap#L333
然后您可以更改条件以对组成员资格进行模式匹配 LDAP-Cached-Membership[*] =~ /.*foo.*/
。
cacheable_name 和 cacheable_dn 所做的是为该特定用户创建存储在 LDAP 目录中的所有组成员身份的列表,并将这些值写入本地属性。您可以使用通配符选择器 [*]
将模式匹配应用于 LDAP-Cached-Membership
.
的所有值
需要注意的是,在使用条件之前必须至少调用 LDAP 模块一次,因为它需要创建组列表。
已编辑以指定使用 LDAP-Cached-Membership。
我只想感谢 Arran!
对于其他任何人,以下语法使其有效:
if (&control:LDAP-Cached-Membership[*] =~ /.*foo.*/) {
我想实施 802.1x。属于 Microsoft domey 的计算机将被验证。交换机端口将根据计算机的组成员身份配置在 VLAN 中。配置简单。运行良好 ;) FreeRadius 3.0.19
问:由于AD的复杂性,是否可以将同一个VLAN分配给不同组的电脑?
目前我是这样操作的: 在 post-auth
if (Ldap-Group == VLAN16_SIEO1) {
update reply {
...
}
}
我想给VLAN16_BSTO1和VLAN16_ADMCE1等以VLAN16_
开头的组分配相同的VLAN我无法在条件 "if" =~ 中使用运算符。 FreeRadius 不启动!是否可以检查组名,以免创建许多 "if" 条件? 在我的例子中,这些条件大约是 800 :)
谁能帮帮我,告诉我怎么配置才能解决这个问题,谢谢
在 LDAP 模块配置中启用 cacheable_name
- https://github.com/FreeRADIUS/freeradius-server/blob/v3.0.x/raddb/mods-available/ldap#L326
并取消注释设置缓存属性的行:https://github.com/FreeRADIUS/freeradius-server/blob/v3.0.x/raddb/mods-available/ldap#L333
然后您可以更改条件以对组成员资格进行模式匹配 LDAP-Cached-Membership[*] =~ /.*foo.*/
。
cacheable_name 和 cacheable_dn 所做的是为该特定用户创建存储在 LDAP 目录中的所有组成员身份的列表,并将这些值写入本地属性。您可以使用通配符选择器 [*]
将模式匹配应用于 LDAP-Cached-Membership
.
需要注意的是,在使用条件之前必须至少调用 LDAP 模块一次,因为它需要创建组列表。
已编辑以指定使用 LDAP-Cached-Membership。
我只想感谢 Arran!
对于其他任何人,以下语法使其有效:
if (&control:LDAP-Cached-Membership[*] =~ /.*foo.*/) {