我一直在关注我在网上找到的所有指南,以获得一个正常工作的svnserve + SASL + OpenLDAP配置,我让一切都工作了大约一天,然后在玩svn + ssh之后我就不得不打破一些东西而且可以'让它再次运作.
在我的/ srv/svn/repo/conf/authz文件中,我列出了这样的Active Directory组:
Admins = User One, User Two
Engineers = Other User, Someone Else
Run Code Online (Sandbox Code Playgroud)
它使用每个用户的CN来处理那些以前工作的组,但现在我可以让我的SVN客户端进行身份验证的唯一方法是,如果我在authz文件中为这些组指定用户名而不是CN.
以下是我的配置(在Gentoo系统上,为安全性编辑了域名和密码):
/etc/conf.d/saslauthd:
SASLAUTHD_OPTS="${SASLAUTHD_OPTS} -a ldap"
Run Code Online (Sandbox Code Playgroud)
/etc/saslauthd.conf:
# LDAP auth/lookup settings
ldap_servers: ldap://domain.com
ldap_default_domain: domain.com
ldap_search_base: DC=domain,DC=com
ldap_bind_dn: CN=LDAP Bind,CN=Users,DC=domain,DC=com
ldap_bind_pw: password
# AD Options
ldap_deref: never
ldap_restart: yes
ldap_use_sasl: no
ldap_start_tls: no
ldap_version: 3
ldap_auth_method: bind
ldap_filter: sAMAccountName=%U
ldap_password_attr: userPassword
ldap_timeout: 10
ldap_cache_ttl: 30
ldap_cache_mem: 32768
ldap_mech: PLAIN
Run Code Online (Sandbox Code Playgroud)
/etc/sasl2/svn.conf:
pwcheck_method: saslauthd
auxprop_plugin: ldap
mech_list: PLAIN LOGIN
ldapdb_mech: …
Run Code Online (Sandbox Code Playgroud)