Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am using websvn with a remote repository. This repository uses https protocol. After having configured websvn I get on the websvn webpage:

svn --non-interactive --config-dir /tmp list --xml --username '***' --password '***' 'https://scm.gforge.....'
OPTIONS of 'https://scm.gforge.....': Server certificate verification failed: issuer is not trusted 

I don't know how to indicate to websvn to execute svn command in order to accept and to store the certificate. Does someone knows how to do it?

UPDATE:

It works! In order to have something which is well organized I have updated the WebSVN config file to relocate the subversion config directory to /etc/subversion which is the default path for debian:

$config->setSvnConfigDir('/etc/subversion');

In /etc/subversion/servers I have created a group and associated the certificate to trust:

[groups]
my_repo = my.repo.url.to.trust

[global]
ssl-trust-default-ca = true
store-plaintext-passwords = no

[my_repo]
ssl-authority-files = /etc/apache2/ssl/my.repo.url.to.trust.crt
share|improve this question
    
Are you using Windows? Or Linux? –  Mark Henderson Jul 17 '10 at 21:53
    
Linux (Debian lenny) –  Laurent Jul 18 '10 at 10:01
add comment

2 Answers

up vote 3 down vote accepted

You have two possible methods available to resolve this.

Option 1:

su to the user websvn is running as and perform svn log https://your.secure.repo.com/repo/ against the target server. Subversion should then ask you to accept the certificate and you could choose to do so on a permanent basis. Then the cert will be okay to use.

Option 2:

Again, as the user the websvn process runs on, edit ~/.subversion/servers and add to the [global] section;

ssl-authority-files = /home/websvn/ssl/CAcert1.pem

If your after something quicky, then option 1 is the one to use, otherwise go for option two

Correction

As the poster pointed out in the command, svn is being called with the --config-dir option. This means that subversion will expect its configurations to be located in that directory, in this case /tmp. Thus copy the servers and config from ~/.subversion/ to /tmp directory and the subversion client will use those.

share|improve this answer
    
This will work, but only if the OP is using *nix –  Mark Henderson Jul 17 '10 at 21:53
    
This would be true, presumption was made as command refereed to /tmp. However on windows there is a .subversion settings for a user profile (%USERPROFILE%\Application Data\Subversion\) but if your running it as a system account I am hazarding you could use the %APPDATA%\Subversion folder to accomplish the same. –  AJ01 Jul 18 '10 at 0:41
    
I have tried both options without success –  Laurent Jul 18 '10 at 10:34
    
Do you have the output from both or is it the same? Also I note you config dir is set to /tmp so add the file servers there. More specifically copy your modified servers file to /tmp/servers –  AJ01 Jul 18 '10 at 10:38
    
Your correction fixes my issue. Thanks! –  Laurent Jul 18 '10 at 15:08
add comment

There is a third, simpler option. It is possible to configure websvn to trust all server certificates. In include/config.php add or uncomment the following line:

$config->setTrustServerCert();
share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.