Redmine Subversion не будет игнорировать ошибку сертификата, даже если сказано

Я установил копию Redmine через Bitnami Redmine Stack, и у меня возникают проблемы с доступом к удаленному хранилищу SVN через https. Проблема, похоже, связана с тем, что у меня нет подписанного сертификата, а предоставленный сертификат не соответствует имени хоста (я получаю доступ к тому же серверу через несколько имен хостов).

Я новичок в Ruby, Mongrel, Rails и Redmine.

Следуя советам в этой ветке форума, я изменил путь, используемый Redmine для вызова svn клиент в \apps\redmine\lib\ redmine\scm\adapters\subversion_adapter.rb от

SVN_BIN = "svn"

в

SVN_BIN = "svn --trust-server-cert --non-interactive --config-dir c:/user/temp"

Я надеялся, что --trust-server-cert опция исправит проблему с сертификатом. Тем не менее, я все еще получаю следующее сообщение об ошибке в mongrel.log:

svn: ОПЦИИ ' https://server.xyz:8443/svn/reponame': сбой проверки сертификата сервера: сертификат выдан для другого имени хоста, издатель не является доверенным ( https://server.xyz:8443/)

Кто-нибудь знает, что с этим делать?

Дополнительная информация:

  • Я перезапускал службу дворняги после каждого изменения

  • Я уверен, что изменение конфигурации вступило в силу, потому что Subversion создал полный каталог конфигурации в c:\user\temp

  • Я могу получить доступ к удаленному хранилищу с помощью командной строки svn нет проблем

  • Удаленный репозиторий работает в Windows с VisualSVN

2 ответа

Я понимаю, что это старый вопрос, но это все еще общий вопрос. Коротко говоря, вам нужно получить Subversion для хранения сертификата сервера в правильном каталоге конфигурации.

Из командной строки запустите следующее:

svn --config-dir c:/user/temp info https://<url_of_subversion_repository>

Вы должны получить следующее сообщение:

Error validating server certificate for https://<url_of_subversion_repository>:443':
 - The certificate is not issued by a trusted authority. Use the
   fingerprint to validate the certificate manually!
 - The certificate hostname does not match.
Certificate information:
 - Hostname: <url_of_subversion_repository>
 - Valid: from Thu, 10 Dec 2009 04:06:30 GMT until Tue, 09 Dec 2014 04:06:30 GMT
 - Issuer: <Cert Details>, <Cert Details>, <City>, <State>, <Country>
 - Fingerprint: <Finger Print>
(R)eject, accept (t)emporarily or accept (p)ermanently?

Принять сертификат навсегда. Это сохранит необходимую информацию в том же каталоге конфигурации, который вы указали для Redmine, и все должно быть в порядке.

Я как бы отсортировал его, установив имя хоста сервера Subversion на то, которое я запрашиваю из установки Redmine. Было бы еще интересно узнать, как это можно отключить.

Другие вопросы по тегам