systemadmin.es > LAMP y web > Deshabilitar SSLv2 y SSLv3 en Apache (poddle)

Deshabilitar SSLv2 y SSLv3 en Apache (poddle)

Normalmente, por seguridad, se deshabilita SSLv2, ahora con la publicación de poddle también deberemos deshabilitar SSLv3 y pasar a usar únicamente TLS. Vamos a ver cómo hacerlo en Apache

Mediante openssl y la opción -ssl3 posemos verificar si un servidor lo soporta o no:

# echo | openssl s_client -connect localhost:443 -ssl3
CONNECTED(00000003)
depth=2 C = US, O = GeoTrust Inc., CN = GeoTrust Global CA
verify return:1
depth=1 C = US, O = GeoTrust Inc., OU = Domain Validated SSL, CN = GeoTrust DV SSL CA
verify return:1
depth=0 serialNumber = -IwNF21lrDc6DA1AAQWAA5A5AI/2L2k3, OU = KT05545656, OU = See www.geotrust.com/resources/cps (c)14, OU = Domain Control Validated - QuickSSL(R) Premium, CN = systemadmin.es
verify return:1
---
Certificate chain
(...)
SSL-Session:
    Protocol  : SSLv3
    Cipher    : DES-CBC3-SHA
    Session-ID: 
    Session-ID-ctx: 
    Master-Key: 2521855F6744D70C039497DA2BCAAB78A117A7DA7C2AD53A3D36A69961A0D0DCACAFC5700DBCACA9A7C6185D50FFEFFD
    Key-Arg   : None
    Krb5 Principal: None
    PSK identity: None
    PSK identity hint: None
    Start Time: 1413454635
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
---
DONE

Si nos devuelve el certificado es que lo soporta, lo podemos desactivar en apache globalmente o por vhost mediante:

SSLProtocol all -SSLv2 -SSLv3

Una vez aplicado el cambio, si repetimos el comando anterior veremos que no nos devuelve el certificado como anteriormente (da handshake failure), lo que significa que esta desactivado:

# echo | openssl s_client -connect localhost:443 -ssl3
CONNECTED(00000003)
139828027455304:error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure:s3_pkt.c:1197:SSL alert number 40
139828027455304:error:1409E0E5:SSL routines:SSL3_WRITE_BYTES:ssl handshake failure:s3_pkt.c:594:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 0 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
    Protocol  : SSLv3
    Cipher    : 0000
    Session-ID: 
    Session-ID-ctx: 
    Master-Key: 
    Key-Arg   : None
    Krb5 Principal: None
    PSK identity: None
    PSK identity hint: None
    Start Time: 1413454845
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
---

One comment to “Deshabilitar SSLv2 y SSLv3 en Apache (poddle)”

  1. Pero el enlace que poneis de Google precisamente no es lo que recomiendan

    “Disabling SSL 3.0 support, or CBC-mode ciphers with SSL 3.0, is sufficient to mitigate this issue, but presents significant compatibility problems, even today. Therefore our recommended response is to support TLS_FALLBACK_SCSV. “

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>