我安装了 openldap 作为 ActiveDirectory 的代理,如果我使用完整的 DN,它就可以正常工作。
问题是 AD 支持使用以下语法的查询,但 OpenLdap 不支持。
ldapsearch -v -H ldap://hostname
-x -b "OU=Users,OU=OU_Test,DC=TEST,DC=Local"
-D "[email protected]"
-w ******** sAMAccountName="0980980"
OpenLdap 抱怨以下错误:
Invalid DN syntax (34)
是否可以配置 OpenLdap 来传递这个语法?
答案1
同时,我发现了一个使用 socat 的快速而肮脏的解决方案(在崩溃的情况下循环):
adhost=10.100.100.100
trap 'kill $(jobs -p)' EXIT; until socat TCP-LISTEN:389,fork TCP:$adhost:389 & wait; do
echo "ldap proxy crashed with exit code $?. Respawning.." >&2
sleep 1
done