我有一个工作的颠覆服务器,它使用以明文forms存储密码的passwd文件。 我的要求已更改,因此密码现在需要encryption。 我根据本书所做的一切来使用SASL,或者我相信,但现在只有linux命令行才能进行身份validation。 我的OSX用户,也使用命令行,我的WinXp用户,使用TortoiseSVN得到错误。 Linux版本是1.6.11。 OSX版本是1.6.17。 而TortoiseSVN版本是1.7.4。
/opt/subversion/QRpage/conf/svnserve.conf:
[general] anon-access = none auth-access = write realm = ABC [sasl] use-sasl = true min-encryption = 128 max-encryption = 256
/etc/sasl2/svn.conf:
pwcheck_method: auxprop auxprop_plugin: sasldb sasldb_path: /etc/sasldb2 mech_list: DIGEST-MD5
然后通过以下方式添加新用户:
saslpasswd2 -c -f /etc/sasldb2 -u ABC dacracot
但是,例如OSX用户得到这个错误试图看看:
$ svn co svn://svn.nowhere.org/QRpage svn: Cannot negotiate authentication mechanism
您的客户也需要设置SASL摘要身份validation才能正常工作。 有关如何为乌龟设置的信息,请参阅此处 。 是的,这是一个痛苦。
svnserve协议不是为了encryption或安全性而构build的。 考虑使用https与mod_dav_svn来代替。