Не удается заставить сервер Visual SVN работать с самозаверяющим сертификатом

Я недавно обновил сервер VisualSVN до последней версии (в Windows), и теперь, когда я пытаюсь подключиться к нему из моего клиента командной строки Linux svn, я получаю эту ошибку:

   svn: OPTIONS of 'https://server:port/svn': SSL negotiation failed: SSL error: Key usage violation in certificate has been detected.

Я попытался загрузить файл PEM crt и добавить его в ~/.subversion/servers (используя ssl-author-files), но это тоже не работает.

У кого-нибудь есть предложения?

3 ответа

Решение

Предложение Tekken666 не сработало для меня, так как я нахожусь в общей среде (поэтому я не могу удалить файлы в /usr/lib).

Тем не менее, я обошел мою проблему, просто перекомпилировав Subversion из последнего кода. Кажется, проблема в том, что svn на моем размещенном сервере использовал библиотеку SSL GNU вместо библиотеки неона SSL по умолчанию. Неон менее строг, чем GNU, когда дело доходит до проблем с сертификатами.

Вы можете восстановить сертификат, чтобы он был признан действительным GnuTLS. См. Статью КБ сервера VisualSVN "Нарушение использования ключа сертификата сервера VisualSVN в клиентах Subversion, созданных с использованием GnuTLS".

-1 Удалите текущий пакет libneon: sudo apt-get remove libneon27

-2 Загрузите последнюю версию пакета libneon с http://packages.debian.org/squeeze/libneon27 (внизу вы можете выбрать правильную версию для вашей архитектуры). Установите требуемую зависимость от libssl: sudo apt-get install libssl0.9.8

-3 Установить скачанный пакет libneon. Например, для 64-битной архитектуры: dpkg -i libneon27_0.29.3-3_amd64.deb

-4 Снова измените символические ссылки, как описано выше: sudo mv /usr/lib/libneon-gnutls.so.27 /usr/lib/libneon-gnutls.so.27.old sudo ln -s /usr/lib/libneon.so.27 /usr/lib/libneon-gnutls.so.27

От: http://www.yeap.de/blog2.0/archives/260-Subversion-Certificate-Problems-with-Ubuntu-Precise-Pangolin.html

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