使用freeradius和PEAP-MSCHAP,如何限制连接到单个组?

在我得到FreeRadius,samba winbind,XCA w / ECDSA证书,Active Directory和Ubiquiti Unifi所有的一起交谈之后,我感觉自己像跳了起来一样。

接下来的问题,ActiveDirectory中的任何有效帐户都将进行身份validation。 我如何限制这个特定AD组的成员?

我想到的一个可怕的方式是在post-auth模块中执行快速LDAPsearch的bash脚本。 有什么不好的事情发生?

编辑

这里有一个指导,让所有的工作! https://gist.github.com/exabrial/368c279aad65cefd8c5f

现在,你需要使用rlm_ldap (这将比bash脚本快得多)。 我们已经讨论了将winbind的API用于组查找,但是您需要使用Samba 3.2.1和FreeRADIUS v3.1.x版本来利用开发的任何function。

我会离开你去查看(和完整) mods-available/ldap因为configuration文件有很好的文档logging。 在将它定制到LDAP服务器之后,从mods-available/ldapmods-enabled/ldap创build一个符号链接来启用该模块。

要执行组查找,您需要将LDAP-Group属性与值进行比较,然后决定拒绝用户。

就像是:

 if (LDAP-Group != 'my_group) { reject } 

在内部隧道虚拟服务器将工作。