AGGIORNARE
Dopo aver letto il thread http-dev su questo problema, archiviato su http://www.gossamer-threads.com/lists/apache/dev/375633 , sembra che questo problema sia causato da un bug nella libreria OpenSSL sul lato client in per quanto riguarda la gestione dei ticket / ID SSL, il che spiega perché l'errore non si verifica immediatamente, ma richiede alcuni secondi o minuti. Questa risoluzione è stata determinata il 2 novembre, tre giorni prima dell'uscita di OpenSSL 0.9.8l. Il thread non afferma esplicitamente se / quando la correzione è stata applicata a OpenSSL, ma penso che sia qualcosa che possiamo prevedere di essere riparato in 0.9.8m, che credo sia coperto da questa voce nel log delle modifiche m-beta:
*) Correzioni per la gestione della ripresa della sessione senza stato. Utilizzare initial_ctx durante l'emissione e il tentativo di decrittografare i ticket nel caso in cui sia cambiato durante la gestione del nomeserver. Usa un ID di sessione di durata diversa da zero quando tenti di riprendere la sessione senza stato: questo rende possibile determinare se si è verificata una ripresa immediatamente dopo aver ricevuto il ciao del server (diversi punti in OpenSSL lo assumono sottilmente) anziché successivamente nell'handshake.
POSTO ORIGINALE
Riscontro problemi simili su Apache-2.2.14 su Gentoo. Per riferimento, ecco i miei flag 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
Ciò si verifica con qualsiasi combinazione di SSLProtocol con TLSv1
incluso
Se aggiusto il mio SSLProtocol
per rimuovere TLSv1
, ottengo un nuovo errore:
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)
Ciò si verifica approssimativamente nello stesso momento in cui avrei riscontrato l'errore "parse tlsext".