Я хотел бы знать, как настроить репозиторий SVN с помощью аутентификации LDAP. Я не хочу использовать Apache DAV, хотя.
Svnserve с LDAP
Ответ 1
Есть два варианта:
- Запустите svnserve как сервер и выполните проверку подлинности с помощью SASL. Настроить SASL для аутентификации с LDAP.
- Доступ к репозиторию через ssh. Создавайте учетные записи ssh для всех пользователей (возможно, автоматически), и эти учетные записи аутентифицируются на LDAP с использованием PAM. Поместите всех пользователей в одну группу и создайте файлы репозитория, принадлежащие этой группе.
Ответ 2
Поскольку мне потребовалось некоторое время, чтобы найти части для этого, я хотел опубликовать, как я это сделал на сервере RHEL5:
-
установить CollabNet rpms (клиент, сервер, и дополнительные услуги).
-
запустите
/opt/CollabNet_Subversion/bin/Configure-CollabNet-Subversion, чтобы настроить без Apace и svnserve. -
измените ваш
repo/conf/svnserve.confфайл, чтобы:[sasl] use-sasl=true -
создайте файл
/opt/CollabNet_Subversion/etc/saslauthd.confс этим содержимым:ldap_servers: ldaps://... ldap_search_base: ... ldap_bind_dn: ... ldap_bind_pw: ... ldap_auth_method: bind ldap_timeout: 10 -
создать
/etc/opt/CollabNet_Subversion/sasl2/svn.confфайл с этим содержимым для использования с MS AD LDAP:pwcheck_method: saslauthd auxprop_plugin: ldap mech_list: PLAIN LOGIN ldapdb_mech: PLAIN LOGIN -
скопируйте
/etc/openldap/ldap.confв/etc/opt/CollabNet_Subversion/conf/openldapи добавьтеTLS_REQCERT allow. Это необходимо для нашего самоподписанного сервера LDAP -
запустить collabnet saslauthd
-
mkdir -p /var/state/saslauthd - edit
/etc/init.d/collabnet_subversionвключить/opt/CollabNet_Subversion/sbin/saslauthd -a ldapв конец функцииstart() -
stop/start /etc/init.d/collabnet_subverison
-
Примечание: вы можете использовать /opt/CollabNet_Subversion/sbin/testsaslauthd -u <userid> -p <password> для проверки соединения sasl с ldap
Немного, но для меня он позволяет нашим клиентам подключаться к svn:// с помощью своих паролей ldap.
Ответ 3
Вы можете использовать scm-manager, у которого есть плагин ldap.