Назад | Перейти на главную страницу

«Ошибка SSL при синтаксическом анализе tlsext» при большой фиксации в SVN через Apache, Gentoo

Это происходит только при большой фиксации (что приводит к неудачной фиксации):

Revelant раздел из конфигурации виртуального хоста в Apache

   <LimitExcept GET PROPFIND OPTIONS REPORT>
      Require valid-user
   </LimitExcept>
   Dav svn
   SVNPath /home/svn/

Результат фиксации:

Transmitting file data ..............................svn: Commit failed
(details follow):
svn: PUT of
'/!svn/wrk/48583f7d-0e01-410d-8941-33d2ba3574b4/WAP/.../htdocs/images/rt.gif':
SSL negotiation failed: SSL error: parse tlsext (https://...)

Я нашел ссылки на это здесь: http://code.google.com/p/support/issues/detail?id=1395

заявляя, что OpenSSL должен быть скомпилирован с расширением TLS, но в моем случае это не срабатывает с самого начала, а только при больших коммитах.

Любые идеи? Спасибо

У меня не было этой проблемы, но я потратил некоторое время на поиски в Google и обнаружил, что она, возможно, была введена в Apache 2.2.12 или 13. Предполагается, что понижение до версии 2.2.11 может исправить это, а также установка SSLProtocol -ВСЕ + SSLv2 + SSLv3 в вашей конфигурации Apache. Ни один из них не казался окончательным. Удачи! Надеюсь, ты найдешь решение.

http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2393204

ОБНОВИТЬ

Прочитав ветку http-dev об этой проблеме, заархивированную на http://www.gossamer-threads.com/lists/apache/dev/375633 , похоже, эта проблема вызвана ошибкой в ​​клиентской библиотеке OpenSSL в отношении того, как обрабатываются билеты / идентификаторы SSL, что объясняет, почему ошибка возникает не сразу, а занимает от нескольких секунд до минут. Это разрешение было определено 2 ноября, за три дня до выхода OpenSSL 0.9.8l. В потоке явно не указано, было ли / когда исправление было применено к OpenSSL, но я думаю, что мы можем ожидать, что это будет исправлено в версии 0.9.8m, что, как я полагаю, покрывается этой записью в журнале изменений m-beta:

*) Исправления в обработке возобновления сеанса без сохранения состояния. Используйте initial_ctx при выдаче и попытке расшифровать билеты, если он изменился во время обработки имени сервера. Используйте идентификатор сеанса ненулевой длины при попытке возобновления сеанса без сохранения состояния: это позволяет определить, произошло ли возобновление сразу после получения приветствия сервера (несколько мест в OpenSSL тонко предполагают это), а не позже в рукопожатии.

ОРИГИНАЛЬНЫЙ ЗАПИСЬ

У меня возникают аналогичные проблемы с Apache-2.2.14 в Gentoo. Для справки вот мои USE-флаги:

[ebuild   R   ] dev-libs/openssl-0.9.8l-r2  USE="zlib -bindist -gmp -kerberos -sse2 -test" 4,082 kB
[ebuild   R   ] www-servers/apache-2.2.14-r1  USE="ssl -debug -doc -ldap (-selinux) -static -suexec -threads" APACHE2_MODULES="actions alias auth_basic auth_digest authn_dbd authn_default authn_file authz_default authz_groupfile authz_host authz_user autoindex dav dav_fs dav_lock dbd deflate dir env expires headers include info log_config logio mime mime_magic negotiation proxy proxy_balancer proxy_connect proxy_http rewrite setenvif status unique_id userdir -asis -authn_alias -authn_anon -authn_dbm -authz_dbm -authz_owner -cache -cern_meta -charset_lite -disk_cache -dumpio -ext_filter -file_cache -filter* -ident -imagemap -log_forensic -mem_cache -proxy_ajp -proxy_ftp -speling -substitute -usertrack* -version -vhost_alias" APACHE2_MPMS="prefork -event -itk -peruser -worker" 5,088 kB
[ebuild   R   ] net-misc/neon-0.29.0  USE="expat nls ssl zlib -doc -gnutls -kerberos -libproxy -pkcs11" LINGUAS="-cs -de -fr -ja -nn -pl -ru -tr -zh_CN" 859 kB
[ebuild   R   ] dev-util/subversion-1.6.6  USE="apache2 bash-completion dso nls perl python ruby webdav-neon -berkdb -ctypes-python -debug -doc -emacs -extras -gnome-keyring -java -sasl -test -vim-syntax -webdav-serf" 5,384 kB

Это происходит с любой комбинацией SSLProtocol с TLSv1 включены

Если я исправлю свой SSLProtocol удалять TLSv1, Я получаю новую ошибку:

svn: PUT of '/!svn/wrk/0b9f5a96-15aa-11df-ad6a-0f71b873281b/project/trunk/path/btn_Cancel.gif': SSL handshake failed: SSL error: bad decompression (https://svn.mudbugmedia.com)

Это происходит примерно в то же время, когда я бы столкнулся с ошибкой "parse tlsext".

Эта проблема наиболее вероятна из-за использования нескольких виртуальных хостов с поддержкой SSL в Apache httpd 2.2.12 - 2.2.14 и OpenSSL 0.9.8f - 0.9.8l.

Последующий патч похоже, решает проблему для меня.