SVN SSL Handshake Error

3

Estou tentando acessar meu próprio servidor SVN com o cliente Cornerstone SVN. Recebo a seguinte mensagem de erro:

Description : Unable to contact the repository at “https:/[email protected]:443” because an SSL session could not be established. Suggestion : This Mac was unable to present a valid certificate or the server's certificate was rejected as invalid.
Technical Information

  Error : V4SSLHandshakeFailureError \ 
  Exception : ZSVNSSLHandshakeFailureException

Causal Information

Description : Unable to connect to a repository at URL 'https:/[email protected]/svn/robi' Status : 175002

Description : OPTIONS of 'https:/[email protected]/svn/robi': SSL handshake failed: SSL error code -1/1/336032856 (https:/bar.mooo.info) Status : 175002

Acho que encontrei a solução pesquisando e usando a função de pesquisa. Descrito em apache.org ou no serverfault ( A negociação do SVN SSL falhou ).

This can happen when the hostname reported by the server does not the match hostname given in the SSL certificate. Make sure your server configuration uses correct values for ServerName and NameVirtualHost.

Por mais embaraçoso que seja, não posso implementá-lo por dois motivos.

A) Eu não sei onde editar o ServerName e NameVirtualHost (o httpd.conf não está mais no apache2)
B) Eu não sei qual nome eu tenho que adicionar lá, a configuração:
nome do host: friedrich (na rede interna) Nome DDNS: bar.mooo.info (conforme inserido no cliente SVN)

SO: Debian GNU / Linux wheezy / sid (3.2.0-4-amd64)
Versão do Apache: Versão do servidor: Apache / 2.2.22 (Debian)

mais em /etc/apache2/sites-available/ssl.conf:

[...]

 <Location /svn>

      DAV svn

      SVNParentPath /srv/nas/hd0/svn

      # this line must be added if you want SSL enabled

      SSLRequireSSL

 </Location>

[...]

 SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem

 SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
    
por rob 11.02.2013 / 18:09

1 resposta

3

Tente depurar com:

echo -e "GET / HTTP/1.0\n\n"|openssl s_client -connect bar.mooo.info:443

Se estiver funcionando, exiba o certificado com:

echo ""|openssl s_client -connect bar.mooo.info:443|openssl x509 -text -noout

Verifique se o Subject: contém CN=bar.mooo.info Verifique se as datas estão corretas e se o horário do cliente está sincronizado. Verifique se o certificado é confiável para seu cliente:

  • Verifique se o certificado raiz usado para assinar o certificado de host está no keystore de confiança
  • Verifique se o certificado raiz é válido e não expirou.
por 11.02.2013 / 21:35