linux上svn连接visual svn server时ssl鉴权失败,问题解决(转)

 

场景:1、在windows 7上安装了visual svn server作为自己的svn服务器。

    2、在虚拟机centos 6.3上使用svn客户端check代码,报错:

 

[plain] view plaincopyprint?

 

  1. #svn checkout https://192.168.0.104:8443/svn/DblList  
  2. svn: OPTIONS of 'https://192.168.0.104:8443/svn/DblList': SSL handshake failed: SSL error: Key usage violation in certificate has been detected. (https://192.168.0.104:8443)  

 

 

解决:在网上找到一篇文章,按照它介绍的方法操作,解决问题。明白了,这是因为virtual svn在生成鉴权数据的时候使用了一个插件,而这个插件是OpenSSL支持的,但GnuTls是不支持的。详细的内容大家仔细看吧。感谢这篇文章的原作者,及散播者。

 

Symptoms

 

Subversion clients receive the following error message when attempting to connect to VisualSVN Server:

svn: OPTIONS of 'https://server.domain.local/svn/repo': SSL handshake failed: SSL error:
Key usage violation in certificate has been detected. (https://server.domain.local)

You may experience the issue if both of the following conditions are met:

  • VisualSVN Server has a self-signed certificate applied and
  • Subversion client is built against the GnuTLS library.

NoteGnuTLS library is an alternative to OpenSSL. Most Subversion clients for Windows are built against OpenSSL and are not affected by this issue. While some Subversion packages (available mostly on Linux-based operating systems such as Ubuntu and Debian) are built against GnuTLS and are affected.

Technical background

During the initial setup VisualSVN Server 2.5 generates a self-signed certificate and adds it to the Trusted Root Certification Authorities store on the local machine. To avoid possible security issues, VisualSVN Server makes this self-signed certificate to be valid for server authentication only (by specifying the 'Key Usage' extension). Subversion clients built against GnuTLS don't recognize such certificate and the error occurs.

Workaround

It's not recommended to use a self-signed certificate in a production environment. We advise to use a certificate issued by your domain or a third-party certificate authority instead of a self-signed one.

If you have to use a self-signed certificate please follow the instruction to generate a cerificate without specifying 'Key Usage' extension:

  1. Add the following registry value to the Windows registry:

    • for 32-bit system:

      [HKEY_LOCAL_MACHINE\SOFTWARE\VisualSVN\VisualSVN Server] "CreateGnuTLSCompatibleCertificate"=dword:00000001
    • for 64-bit system:
      [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\VisualSVN\VisualSVN Server] "CreateGnuTLSCompatibleCertificate"=dword:00000001
  2. Start VisualSVN Server Manager.
  3. Go to Action | Properties | Certificate.
  4. Click Change certificate... and follow the wizard instructions to generate a new self-signed certificate.

The certificate will be generated without the 'Key Usage' extension and will be compatible both with GnuTLS and OpenSSL.

 

http://blog.chinaunix.net/uid-24567872-id-3861366.html

http://blog.csdn.net/xinshou_jiaoming/article/details/6956558

 

 

时间: 2024-11-08 23:15:40

linux上svn连接visual svn server时ssl鉴权失败,问题解决(转)的相关文章

阿里云API 发生子账号访问主账号资源时的鉴权规则有哪些

ECS API 发生子账号访问主账号资源时的鉴权规则 当子账号通过 ECS Open API 对主账号的 ECS 资源进行访问时,ECS 后台向 RAM 进行权限检查,以确保资源拥有者的确将相关资源的相关权限授予了调用者. 每个不同的 ECS API 会根据涉及到的资源以及 API 的语义来确定需要检查哪些资源的权限.具体地,每个 API 的鉴权规则见下表 Action鉴权规则 AllocatePublicIpAddressacs:ecs: $regionid:$accountid:instan

node连接mongodb是报鉴权失败

问题描述 node连接mongodb是报鉴权失败 解决方案 连接字符串中是否配置正确,或者帐户等等信息是否正确 解决方案二: 你的服务器端是不是加了--auth启动的 并且在admin.system.users中已经添加过用户 同时检查一下你登陆的语句里用户名之类的字段是否正确

【Tomcat】Linux上Tomcat发布-JavaWeb项目-访问时不通过项目名

转载请注明出处:http://blog.csdn.net/qq_26525215 本文源自[大学之旅_谙忆的博客] 一开始自己不知道怎么直接通过域名访问到自己部署的Web项目,发布在Tomcat上的. 因为自己以前写都是后面加了项目名, 然后去百度谷歌,找到了下面的正确方法 如果你不想输入端口号访问,记得把端口号8080改为80哦. apache-tomcat-7.0.73/conf/server.xml文件中 1.把项目名改成ROOT即可(如果有先删除之前的ROOT项目) 2.修改tomcat

visual svn server 客户端连接错误!

问题描述 出现的错误为:SSL handshake connection truncated 服务端安装在win7 系统上, 客户端是win xp 系统! 请各位棒棒忙,怎么解决啊? 谢谢了! 解决方案 关闭所有防火墙,杀毒软件试试解决方案二:window 7 上最好用visual svn 这个比较安全和方便apache http 如果配置不好可能会有问题https 在window 7 上好像必须要用administrator权限的用户才行1.激活administrator2.安装svn3.好了

linux中Ubuntu 上架设本机SVN server教程

Steps for setup local SVN server: 1. Add "subversion" group and add user account to this group; 2. 创建SVN repository 目录: $ sudo mkdir /home/svn $ cd /home/svn $ sudo mkdir myproject $ sudo chown -R root:subversion myproject 3. 创建SVN repository; $

tortoise svn 连接不上SVN服务器,浏览器也打不开服务器,该怎么解决?

问题描述 tortoise svn 连接不上SVN服务器,浏览器也打不开服务器,该怎么解决? tortoise svn 连接不上SVN服务器,浏览器也打不开服务器,该怎么解决?怎么连接到SVN服务器? 解决方案 SVN服务器配置在什么地方的呢? 解决方案二: 在别人的电脑上,其他用户都可只有我连接不上.只有我连接不上,显示"不知道这样的主机".请求帮忙!!! 解决方案三: 看看你有没有权限,然后看看提示的什么信息

visual svn使用教程

 SVN简介:  为什么要使用SVN?       程序员在编写程序的过程中,每个程序员都会生成很多不同的版本,这就需要程序员有效的管理代码,在需要的时候可以迅速,准确取出相应的版本. Subversion是什么?    它是一个自由/开源的版本控制系统,一组文件存放在中心版本库,记录每一次文件和目录的修改,Subversion允许把数据恢复到早期版本,或是检查数据修改的历史,Subversion可以通过网络访问它的版本库,从而使用户在不同的电脑上进行操作. 一:SVN服务器搭建和使用.  

安装SQL Server 2008 R2和Visual Studio 2010时的1406错误解决

问题描述:重新安装的系统,然后马上升级到Windows7旗舰版,在安装SQL Server 2008 R2和Visual Studio 2010时遇到1406错误.尝试了很多方法,比如修改对应注册表的权限.重置注册表.安装更新等等. 又细想是否是系统的原因,于是又重新还原系统,保持Windows7家庭普通版.后来又考虑了许久,才想到解决 办法.其实很简单,稍后奉上. 问题如图: SQL Server 2008 R2安装错误: Visual Studio 2010旗舰版安装错误: 解决: 没有足够

linux(centos)下SVN服务器如何搭建_Linux

虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN. 安装步骤如下: 1.yum install subversion 2.输入rpm -ql subversion查看安装位置,如下图: 我们知道svn在bin目录下生成了几个二进制文件. 输入 svn --help可以查看svn的使用方法,如下图. 3.创建svn版本库目录 复制代码 代码如下: mkdir -