Error de subversión: svn: E120171: Error al ejecutar el contexto: se produjo un error durante la comunicación SSL

Error de subversión: svn: E120171: Error al ejecutar el contexto: se produjo un error durante la comunicación SSL

Recibo este error al realizar el pago.

svn: E170013: Unable to connect to a repository at URL 'https://some.host/some/repo/'
svn: E120171: Error running context: An error occurred during SSL communication

$svn --versión

svn, version 1.10.4 (r1850624)
   compiled Jul 28 2019, 02:44:06 on x86_64-pc-linux-gnu

Copyright (C) 2019 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

The following repository access (RA) modules are available:

* ra_svn : Module for accessing a repository using the svn network protocol.
  - with Cyrus SASL authentication
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
  - using serf 1.3.9 (compiled with 1.3.9)
  - handles 'http' scheme
  - handles 'https' scheme

The following authentication credential caches are available:

* Plaintext cache in /home/kusan/.subversion
* Gnome Keyring
* GPG-Agent
* KWallet (KDE)

Por favor ayudame a resolver este problema. Estoy en una instalación nueva de Debian 10. En Debian 9 funcionó bien. Gracias de antemano.

Respuesta1

Es posible que se haya encontrado con este error porque la versión mínima de TLS es superior a la utilizada por el servidor Subversion.

Sus opciones son actualizar la versión de TLS de su servidor Subversion si es propietario del servidor, o cambiar su proveedor de repositorio de Subversion si paga por uno.

Si estas dos opciones no están disponibles para usted (por ejemplo, está revisando el proyecto de otra persona o está trabajando en un trabajo que requiere que revise el de un cliente desde su servidor), entonces puede optar por degradar el mínimo. versión de TLS que utiliza SSL. Debe tener en cuenta que esto conlleva algunos riesgos de seguridad, ya que TLS 1.0 tiene 20 años y ahora está en desuso.

Con esa advertencia en mente, puede modificar su archivo de configuración SSL. Puede encontrar dónde se encuentra este archivo en su sistema escribiendo

openssl version -d

Necesitará los permisos correctos para editar el archivo.

[Me gusta hacer una copia de seguridad de cualquier archivo de configuración antes de editarlo para que puedas retroceder fácilmente si es necesario]

Agregue al principio del archivo:

openssl_conf = default_conf

Al final del archivo, agregue lo siguiente:

[ default_conf ]

ssl_conf = ssl_sect

[ssl_sect]

system_default = ssl_default_sect

[ssl_default_sect]
MinProtocol = TLSv1
CipherString = DEFAULT:@SECLEVEL=1

Esto quiere decir que la versión 1.0 de TLS es la mínima aceptable. Si la versión 1.1 es aceptable, cambie TLSv1 a TLSv1.1

Respuesta2

Copie su openssl.conf a:

/home/username/openssl.conf

Modifique esto:

# MinProtocol = TLSv1.1
MinProtocol = TLSv1

Entonces:

export OPENSSL_CONF=/home/username/openssl.cnf
svn ls https://subversion/svn/path

Respuesta3

He hecho una mezcla de las dos soluciones anteriores y funciona perfectamente.

  1. copiar el archivo /usr/lib/ssl/openssl.cnf (en mi caso es .cnf) a mi casa
  2. . modificar el archivo como lo indica Madeleine en la primera respuesta
  3. exportar OPENSSL_CONF=~/openssl.cnf

Muchas gracias a los dos :)

Respuesta4

Tuve un problema similar en Windows en el trabajo, usando un git svn clonecomando, con el error algo críptico:

Error al ejecutar el contexto...

Volví a la versión 2.28.0 de git (desde la versión 2.41.0) y la conexión al antiguo servidor SVN fue exitosa.

información relacionada