scene :1、 stay windows 7 Installed on visual svn server As one's own svn The server .

2、 In the virtual machine centos 6.3 Upper use svn client check Code , Report errors :

[plain]  view plain copy print ?

  1. #svn checkout
  2. svn: OPTIONS of '': SSL handshake failed: SSL error: Key usage violation in certificate has been detected. (

solve : Find an article on the Internet , Follow the method it introduces , solve the problem . got it , This is because virtual svn A plug-in is used to generate authentication data , And this plug-in is OpenSSL Supported by , but GnuTls Is not supported . Let's take a closer look at the details . Thanks to the original author of this article , And disseminators .


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.


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.

linux On svn Connect visual svn server when ssl Authentication failure , Problem solving ( turn ) More articles about

  1. linux On nginx+apache build svn The server

    as everyone knows ,nginx At present, we do not support svn Of , And because the computer room network is only on 80 and 22(ssh) port , So it's impossible to build it on the server alone apache+svn . So there is nginx + apache + sv ...

  2. How to be in linux Manually connect to the Internet on

    author @ Please indicate the source of the reprint . I've always been right linux I don't understand network management , Today I studied the manual configuration of the network , Now take a note of . I use Ubuntu20.04.1 To demonstrate . Introduce First of all, let's clarify some conceptual ...

  3. 【JMeter Connect SQLServer】 Adopt window Authentication mode connection ( original )

    Everybody knows Jmeter Be able to connect all kinds of databases . I won't say more about this , Suppose you don't know how to connect yet . Please refer to another blog post I read . Here is a detailed introduction ...

  4. linux On jenkins Connect windows And implement exe file

    1. If you want to pass ssh The way to connect windows Words , The first thing you need to do is windows Installation on freesshd To configure startup . To configure ssh(win10 I brought it with me openssh It can be installed and used , But I can't fit the machine ) 1.1. Next ...

  5. stay Linux To build IntelliJ IDEA license server The server

    IntelliJIDEALicenseServer_linux_amd64 , Transfer the file to a directory on the server , I put it on /var/local/software Under the table of contents sudo chmod +x ./In ...

  6. SQL server The problem of computer restart failure is displayed during installation. The solution to the problem is

    A few days ago, I was loading SQL server2016 When , It always shows that the computer has failed to restart ; Online methods are also used , But it's the same problem after restart , Tried many ways , Finally, in a test point shutdown, inadvertently point to a restart (win10 There's a problem ...

  7. Visual SVN Installation

    As a program developer , Even if I write the program by myself , There should be one, too SVN Version control system , In order to effectively manage the development code . Today I'd like to introduce one in Windows It's easy and fast to build in the environment SVN Server method . Usual SVN The server is built on ...

  8. svn Server installation 、 Migration tutorial 、Eclipse Switch svn Connection Library

    svn Server installation . Migration tutorial .Eclipse Switch svn Connection Library Installation tutorial 1. download svn Server installation program 2. Run the program , install Here the port number is defined by itself , Avoid conflicts with other programs Here's the installation Migration tutorial Here is an example ...

  9. Linux Upper SQL Server Start of

    We know , A few weeks ago , Microsoft released in Linux Running directly on the computer SQL Server The first public CTP edition ! therefore , For me, , It's time to cross the border Linux I installed my first SQL install , In this case , I can be in Linux Up toss ...

Random recommendation

  1. c++ basic Arrangement 1

    //c++ class initialization And The initial assignment //C++ Regulations Object's Member variables initialization Action happens When entering Constructor ontology Before . In the constructor Member variable assignments belong to assignment . class People { pub ...

  2. 【 original 】 Easy to understand explanation KMP Algorithm ( String matching algorithm ) And code implementation

    One . Brief introduction The purpose of this article is to explain it simply and clearly KMP The idea and implementation process of the algorithm . The articles on the Internet are a bit messy , Some are too shallow , Some are too deep , I hope this article is very friendly to beginners . Actually KMP There are some improved versions of the algorithm , These are understanding KMP The core idea ...

  3. Java The dynamic array

    among java The dynamic array : Java Dynamic array is a kind of object that can scale the length of array arbitrarily , stay Java The more commonly used is ArrayList,ArrayList yes javaAPI The built-in java.util.ArrayList. ...

  4. JVM Details of configuration parameters

    Make a note of jvm Some configuration parameters in , These are certainly not complete , I hope you can leave a message , Make up for it. , Thank you very much! ! -XX: MaxDirectMemorySize---> Set direct memory , Don't set and Java The maximum heap memory is the same -X ...

  5. Docker Concept ( Two )

    explain :         Always wanted to learn Docker, Containers . Mirror image . The warehouse is so hard to understand that I don't think much about it , I've made up my mind to have a good look ,google.Baidu Find this good article , I have a general understanding after reading it . Basically, the contents are as follows ...

  6. V-rep Learning notes : Visual sensors 1

    Vision sensors, which can detect renderable entities(Renderable objects are objects that can be seen ...

  7. Easyui Getting started video tutorial The first 08 Set --- Login implementation ajax button Use

    Catalog ----------------------- Easyui Getting started video tutorial The first 09 Set --- Login perfect Icon customization    Easyui Getting started video tutorial The first 08 Set --- Login implementation ajax button Use   ...

  8. Traverse XML file

    #encoding=utf-8 from xml.etree import ElementTree as ET # To find out everyone's age per=ET.parse('d:\\1.xml') p=per.f ...

  9. HBase Some concepts of data model

    Let's first understand a concept :HBase It's a distributed database with column storage . surface               stay HBase Data is stored in the form of a table . The main reason to use tables is to organize certain columns and access them together , The data in the same table is usually related ...

  10. Open the picture to show the introduction css effect

    summary Mainly applied to CSS3 Of 3D transform Such transformation detailed The code download : One . summary 1. Mainly applied to CSS3 Of 3D tr ...