svn客户端报错Cannot negotiate authentication mechanism的解决方法:

问题出现的原因之一:

因为SVN服务器配置了saslauthd服务用来实现与ldap的对接,因此认证的机制发生了变化,所以客户端需要安装组件才可以:

很简单对于RHEL/CentOS,客户端只需要yum安装相应的包即可:

yum -y install cyrus-sasl-plain

ubuntu系统尚未测试,请查找对应的包安装即可

问题出现的原因之二:可能与svn的版本或源码安装时选择的模块有关

可以通过svnserve --version

查看是否支持相应的功能,如果不支持则需要升级软件版本,这里不再赘述

二、svn+saslauthd+openldap的配置方法

这里主要以saslauthd的配置为主,openLDAP配置请查看其它文档

1、首先开启saslauthd服务会有选择认证机制的参数‘MECH’

这个参数会从/etc/sysconfig/saslauthd文件中去获取以环境变量的方式加载

2、需要配置LDAP服务器和认证的相关参数(/etc/saslauthd.conf没有须自己创建):

ldap_servers: ldap://<LDAP服务器IP地址>
ldap_default_domain:<你们公司的域名,例如example.com>
ldap_search_base:<LDAP基准搜索根分支点,例如ou=People,dc=example,dc=com>
ldap_bind_dn:<LDAP管理员账户,例如cn=administrator,dc==example,dc=com>
ldap_password:<LDAP管理员密码>
ldap_deref: never
ldap_restart: yes
ldap_scope: sub
ldap_use_sasl: no
ldap_start_tls: no
ldap_version: 3
ldap_auth_method: bind
ldap_mech: SSHA #(加密算法选取默认SSHA即可)
ldap_filter:uid=%u #(这里的含义是把LDAP相应分支下的记录中uid参数作为这里的用户名,%u是用户账户的含义)
ldap_password_attr:userPassword #(这里的含义是把LDAP相应分支下的记录中userPassword参数作为这里的验证密码)
ldap_timeout: 10
ldap_cache_ttl: 30
ldap_cache_mem: 32786

3、在/etc/sasl2/下新增一个svn.conf文件:

#用户验证方法
pwcheck_method:saslauthd
#用户验证信息怎么传输
mech_list: plain login

4、在SVN对应的库中conf目录下svnserve.conf文件修改认证方式允许sasl认证即可:

svnserve.conf:

[sasl]
use-sasl = true

5、重启saslauthd、svn服务即可:

service saslauthd restart

chkconfig --level 3,5 on

(centos7的自己脑补:

还是我给写上吧...

systemctl restart saslauthd.service

systemctl enable saslauthd.service

)

svnserve -d -r /Your/SVN/RepoRootDir

6、验证是否能够验证成功:

testsaslauthd -u <%u还记得上面配置文件中的uid和%u吗...> -p <passwd>

如果按老司机的套路走到这一步saslauthd已经言尽,能不能成功就看你LDAP配置了

转载于:https://www.cnblogs.com/tntxyz/p/5996726.html

linux下svn客户端报错Cannot negotiate authentication mechanism的解决方法相关推荐

  1. linux yum install libsdl-dev 报错:No package libsdl-dev available 解决方法

    执行 $ yum install libsdl-dev 报错:No package libsdl-dev available. 解决办法: $ yum search sdl | grep devel ...

  2. eclipse找不到java方法,Linux启动eclipse报错找不到java环境解决方法

    在Linux mint下,前几天还用得很好的的eclipse,今天开机不知为什么这样. Eclipse 3.6 在 linux mint 12 可以在终端顺利启动Eclipse,但是鼠标双击,或者用起 ...

  3. Linux下Tomcat启动报错:port already in use

    Linux下Tomcat启动报错:port already in use,导致该问题的原因很多,我在这里记录一下我遇到的情况的解决办法. 检查了${TOMCAT_HOME}/conf/server.x ...

  4. deepin/linux下svn客户端工具

    我的博客 deepin/linux下svn客户端工具 尝试过几款linux下svn的客户端例如RapidSVN,这个工具在添加svn仓库的时候总是会卡,总之用起来不太舒服,皇天不负有心人终于找了了另外 ...

  5. linux 卸载 bison,linux下的bison报错,

    linux下的bison报错,求高手指教!急 想用flex+bison写个简单的编译器,生成三地址中间代码.结果bison的编译就一堆警告...大概是说定义的文法没有用之类的. 这个是flex文件 % ...

  6. linux下执行ffmpeg报错无法操作https资源的问题https protocol not found, recompile FFmpeg with openssl, gnutls

    linux下执行ffmpeg报错无法操作https资源的问题https protocol not found, recompile FFmpeg with openssl, gnutls 报错 解决 ...

  7. svn update 时报错 Node remains in conflict 和解决方法

    文章目录 svn update 时报错 Node remains in conflict 和解决方法 svn update 时报错 Node remains in conflict 和解决方法 今天在 ...

  8. npm run build 打包报错primordials is not defined的解决方法

    npm run build 打包报错primordials is not defined的解决方法 D:\uniapp项目\huishua_web_agent>npm run build> ...

  9. 【笔记】虚拟机用Xshell登陆报错“ssh服务器拒绝了密码”解决方法

    [笔记]虚拟机用Xshell登陆报错"ssh服务器拒绝了密码"解决方法 参考文章: (1)[笔记]虚拟机用Xshell登陆报错"ssh服务器拒绝了密码"解决方法 ...

最新文章

  1. Java基于Swing和Netty仿QQ界面聊天小项目
  2. 开平方的 7 种算法
  3. android显示服务器端文件夹,Android上传文件到服务端并显示进度条
  4. JavaScript实现isPowerOfTwo算法(附完整源码)
  5. ES6新特性之解构表达式
  6. 3、从尾到头打印链表------------剑指offer系列
  7. POJ2421 Constructing Roads 最小生成树
  8. mysql+if+x+mod+2_Windows 下 MantisBT 2.X + Apache 2.4 + PHP 7 + MySQL 5.7 的环境配置
  9. 使用Epoll 在 Linux 上开发高性能应用服务器
  10. 在…视域下是什么意思_电影中出现的出品人是什么意思?你需要了解下
  11. sC#进阶系列——WebApi 接口参数不再困惑:传参详解
  12. Packet for query is too large (12164278 > 4194304). You can change this value
  13. Java-虚拟机-垃圾收集器/垃圾收集算法/GCROOT根
  14. python修改ABAQUS的inp计算文件
  15. 关于在VMware上装lFEDORA系统
  16. FPGA_四选一数据选择器
  17. 百度云 java私塾_JAVA私塾-百度云
  18. 为什么认真自学了NLP,面试还是回答不出问题
  19. 服务器虚拟机的c盘怎么加,xp虚拟机c盘怎么扩容
  20. 什么是强化学习?(主要的强化学习概念)

热门文章

  1. java html标枪正则,javascript语言速成
  2. 杰理之mesh组网测试demo【篇】
  3. 2022年10月中国数据库排行榜:达梦冲刺IPO热度不减,PolarDB立足创新夺锦才
  4. SF-40/385/4PY智能浪涌 浪涌后备保护器SCB 智能浪涌 浪涌保护器
  5. C# 实现 微软WebRequestMethods.Ftp类中的FTP操作功能
  6. 乐高无限自己地图无法服务器,乐高无限地图模组怎么玩 地图模组怎么添加
  7. 计算机存储中的单位换算
  8. 填充手柄、选中与粘贴功能
  9. 简单数据预测—使用Python训练回归模型并进行预测(转自蓝鲸网站分析博客)
  10. Winform从入门到精通(2)——Button(史上最全)