我见过这个多个 OU问题,以及不帖子,但如果没有很好的解释,它并不能真正解决问题。
我希望能够允许用户在 LAN 上使用标准密码进行身份验证(OpenLDAP用户密码 {SHA1}...属性),但也允许某些人通过 SASL Passthrough 使用 OpenVPN 进行身份验证,其中 userPassword 属性使用{SASL}user@realm
。OpenVPN 服务器设置了 LDAP 基础,OU=vpnpeople,dc=corp,dc=com
因此人们无法使用其 LAN 密码进行身份验证。
我想到了一个稍微有点问题的方法,将用户复制OU=people,dc=corp,com
到OU=vpnpeople,dc=corp,com
userPassword 属性设置为{SASL}user@realm
。
我对这个解决方案非常满意,直到我意识到 LAN 上使用 LDAP 搜索库的每个应用程序dc=corp,dc=com
现在都必须排除OU=vpnpeople..
或明确列出用户可以从中进行身份验证的允许 OU……呃……
那么,回到绘图板上。在 OpenLDAP 中对同一个人使用多种身份验证方法的好方法是什么?
更新回复:ACL
其中 10.1.1.2 是 vpn 服务器...
access to dn.subtree="OU=vpnpeople,dc=example,dc=com"
by peername.ip=10.1.1.2 anonymous read
by * none
答案1
在 ou=vpnpeople,dc=corp,dc=com 子树上放置一个 ACL 条目,仅允许管理员和 vpn 服务器用来访问它的服务帐户。