No puedo olvidarme de github, error de apretón de manos sslv3


10

Tenemos un script que descarga mod security de github que recientemente comenzó a fallar. Los servidores ejecutan CentOS 6 pero RHEL 6 probablemente tenga el mismo problema. El resultado es:

# wget https://github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz
--2014-07-22 18:49:46--  https://github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz
Resolving github.com... 192.30.252.129
Connecting to github.com|192.30.252.129|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://cloud.github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz [following]
--2014-07-22 18:49:47--  https://cloud.github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz
Resolving cloud.github.com... 54.230.99.219, 205.251.219.190, 54.230.97.212, ...
Connecting to cloud.github.com|54.230.99.219|:443... connected.
OpenSSL: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
Unable to establish SSL connection.

¿Alguna idea sobre cómo solucionar o solucionar esto?


2
use otra aplicación, por ejemplocurl
Rabin

1
Para ser más específicos, tanto 54.230.99.219 como varias de las (diferentes) A ​​que obtengo para cloud.github.com dan una falla de apretón de manos a s_client sin la opción de ServerNameIndication. serverfault.com/questions/560053/… dice (hace varios meses) RedHat wget no hace SNI pero curl sí.
dave_thompson_085

Te sientes afortunado de aceptar mi respuesta
Anton Dozortsev

Bueno, para ser honesto, preferiría que @ dave_thompson_085 o Rabin publicaran sus comentarios como respuestas, ya que veo que es una solución más a largo plazo a pesar de que su solución también funciona muy bien.
Kristofer

Respuestas:


2

Si no me equivoco, te refieres a este repositorio . Intenta obtener lanzamientos de formularios URL .

Este caso funciona para mí:

$ wget https://github.com/SpiderLabs/ModSecurity/archive/v2.8.0.tar.gz

PD: También tengo el mismo mensaje de error cuando intento ejecutar su caso;

$ wget https://github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz

Hmm, esta URL no tiene un md5 :(
Kristofer

raw.githubusercontent.com/$ {USER} / $ {REPO} /path/to/file.tar.gz
Maksim Kostromin

10

Puedes usar el curlcomando para descargarlo:

curl -LO https://github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz

55
curl -L -Oes un mejor reemplazo para wget, ya que sigue las redirecciones HTTP (particularmente útil aquí ya que Github quiere señalarme a su CDN).
rarefeatures

Además, una cosa con la que me encontré con las versiones en CentOS 6.5 es que curladmite SNI y wgetno lo hace, por lo que para algunos sitios wgeta veces se entregará el certificado del host incorrecto y se obtendrá un fallo de certificado, incluso si curlfunciona bien.
rakslice

7

El lado del servidor ha deshabilitado el protocolo de enlace de cifrado SSLv3, debido a graves problemas de seguridad SSLv3. Además, su cliente wget es una versión desactualizada y todavía usa de manera predeterminada este cifrado SSLv3. Tienes 2 opciones:

  • use --secure-protocol = bandera TLSv1 delante de wget. wget --secure-protocol=TLSv1
  • instale una versión actualizada de wget que use como protocolo TLSv1 predeterminado

5

Debe verificar su versión de wget.

Tuve el mismo problema con versiones anteriores de wget(<1.15).


2
Parece que esto debería ser un comentario en contra de la pregunta, y no una respuesta.
Danny Staple

0

En cuanto a la solución, si confía en el host intente especificar --no-check-certificateo agregar:

check_certificate = off

en su ~/.wgetrc(no recomendado).

En algunos casos raros, es causado por el tiempo de su sistema que podría estar fuera de sincronización, por lo tanto, invalida los certificados que funcionaban antes.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.