gpt4 book ai didi

SVN + SASL + ActiveDirectory : How to

转载 作者:行者123 更新时间:2023-12-04 12:25:44 27 4
gpt4 key购买 nike

我正在尝试设置 SVN 以针对 ActiveDirectory 进行身份验证。我知道如果您将 SVN 设置为使用 Apache 提供服务,这是可能的,但这样做会引入太多开销,并且 SVN 运行速度太慢。通过阅读 SVN 文档,听起来现在应该可以(因为 SASL 在 1.5 中集成到 SVN 中)配置 SVN 以在不使用 Apache 的情况下针对 ActiveDirectory 进行身份验证。不幸的是,来自 SVN 和 SASL 的文档非常通用,并且缺乏帮助使其正常工作的细节。

有没有人得到这个工作?如果您可以提供一些示例配置文件或高级步骤来为我自己(可能还有其他人)指明正确的方向,那将是一个巨大的帮助。

最佳答案

启用 SASL 的 SVN(在 Debian v7 机器上),使用 Active Directory(在另一台服务器上)

请注意,我已经设置了 samba 和 winbind,其中包括 libsasl2-2,因此还获得了启动可执行文件和 svnserve 和模块(需要 svn 普通(或其他)机制工作,这(仅供引用)将它们放在/usr/lib/x86_64-linux-gnu/sasl2/libplain.so):

sudo apt-get install sasl2-bin svnserve libsasl2-modules

sudo pico /etc/default/saslauthd

更改 START=noSTART=yes , 和 MECHANISMS="pam"MECHANISMS="ldap" , 和 THREADS=0 (不是 5),并删除 /var/run 前面从最后一行开始,所以它是 OPTIONS="-c -m /run/saslauthd";控制 x, y, 输入
sudo pico /etc/saslauthd.conf

添加以下内容(注意:您可能需要在 dc= 系列前面添加一个“ou=folder”):
ldap_servers: ldap://hostname.of.server<br />
ldap_search_base: dc=hostname,dc=of,dc=server<br />
ldap_bind_dn: cn=usernamehere,dc=hostname,dc=of,dc=server<br />
ldap_bind_pw: password<br />
ldap_filter: samaccountname=%u<br />
sudo /etc/init.d/saslauthd start

运行 sudo testsaslauthd -u usernamehere -p password测试 ldap 设置和 cat /var/log/auth.log查看日志。

将以下行添加到文件 /usr/lib/sasl2/svn.conf :
pwcheck_method: saslauthd
mech_list: plain

创建存储库:
mkdir /data
svnadmin create /data/repohere

假设某种以前的“svnadmin dump/data/repohere >/data/repohere.dump”
svnadmin 加载/data/repohere
pico /data/repohere/conf/svnserve.conf

取消注释(删除前导磅和前导空格);并且,修改 anon-access 和 authz-db (请注意,我将 authz 放在/data 中,而不是我的多个 repos 共享它):
anon-access = none<br />
auth-access = write<br />
authz-db = ../../authz<br />
use-sasl = true<br />
pico /data/authz

添加以下内容:
[groups]<br />
whatever = username1,username2<br />
[/]<br />
@whatever = rw<br />

在启动时安排 svnserve(抱歉,找不到,所以手动制作一个):
sudo cp /etc/init.d/skeleton /etc/init.d/svnserve
sudo chmod 755 /etc/init.d/svnserve
sudo update-rc.d svnserve defaults
sudo pico /etc/init.d/svnserve

将DESC更改为“subversion server”,将NAME更改为“svnserve”,取出DAEMON的“sbin”中的“s”(使其只是/bin/),将DAEMON_ARGS更改为“-d -r/data--日志文件/var/log.svn.log"
sudo /etc/init.d/svnserver start

测试你最喜欢的 svn 客户端(例如 TortoiseSVN)!

关于SVN + SASL + ActiveDirectory : How to,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1794242/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com