Clicky

Cómo actualizar OpenSSL en Centos 7 o RHEL 7

HeartBleed

Proteje tu servidor contra Heartbleed

HeartBleed (español: hemorragia de corazón) es un «bug» (error de software, en español) que puede capturar información sensible y desencriptarla, siendo uno de los fallos de seguridad más graves que han afectado a Internet en su historia. Heartbleed afecta a la biblioteca de código abierto OpenSSL, solo vulnerable en su versión 1.0.1f y algunas anteriores.

OpenSSL es una de las bibliotecas de criptografía más usadas en servidores web, y un proyecto de código abierto. Muchos sitios web (cientos de miles) de los que ofrecen conexiones seguras con SSL se apoyan en esta biblioteca. Puede que lo hayas visto, pero no prestaste atención al icono con un candado que aparece en la barra de direcciones, o a las siglas HTTPS. Ambos son símbolos de que estamos accediendo a un sitio seguro, y que el intercambio de datos que hacemos está siendo cifrado.

Para protegernos del bug HeartBleed debemos actualizar nuestra biblioteca openSSL de la manera que explico a continuación.

1. Introducción

OpenSSL es una librería que proporciona funcionalidad criptográfica, específicamente SSL/TLS para aplicaciones populares, tales como servidores web seguros, bases de datos MySQL y aplicaciones de correo electrónico. La lista de parámetros standard-commands, digest-commands, y cipher-commands salen a una lista (una entrada por línea) de los nombres de todos los comandos estándar, mensajes digest-commands o comandos de cifrado (cipher), respectivamente, y están disponibles en la utilidad OpenSSL actual.

2. Requisitos

Es necesario que tengas un sistema operativo RHEL 7 o CentOS 7 en tu servidor dedicado o VPS. Por favor asegúrate de configurar un nombre de host para el servidor y que tus DNS estén apuntando a la dirección IP del servidor.

3. Instalación

Obtener la versión actual con "versión de OpenSSL" e "información de OpenSSL" con el comando yum:

# openssl version -a
OpenSSL 1.0.1e-fips 11 Feb 2013
built on: Mon May 9 08:07:32 UTC 2016
platform: linux-x86_64
options: bn(64,64) md2(int) rc4(8x,int) des(idx,cisc,16,int) idea(int) blowfish(idx)
compiler: gcc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DKRB5_MIT -m64 -DL_ENDIAN -DTERMIO -Wall -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -Wa,--noexecstack -DPURIFY -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/etc/pki/tls"
engines: dynamic

 

# yum info openssl
Installed Packages
Name : openssl
Arch : x86_64
Epoch : 1
Version : 1.0.1e
Release : 51.el7_2.5
Size : 1.5 M
Repo : installed
From repo : updates
Summary : Utilities from the general purpose cryptography library with TLS
: implementation
URL : http://www.openssl.org/
License : OpenSSL
Description : The OpenSSL toolkit provides support for secure communications between
: machines. OpenSSL includes a certificate management tool and shared
: libraries which provide various cryptographic algorithms and
: protocols.

Para descargar la última versión de OpenSSL, haz lo siguiente:

# cd /usr/local/src
# wget https://www.openssl.org/source/openssl-1.0.2-latest.tar.gz
# tar -zxf openssl-1.0.2-latest.tar.gz

Para compilar manualmente OpenSSL e instalar/actualizar OpenSSL, haz lo siguiente (cambia abajo openssl-1.0.2h por la versión que hayas descargado):

# cd openssl-1.0.2h
# ./config
# make
# make test
OPENSSLDIR: "/usr/local/ssl"
# make install

Si la antigua versión aún se muestra o se instala antes, por favor, haz una copia del archivo bin openssl:

# mv /usr/bin/openssl /root/
# ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

4. comprobación de seguridad

Ahora comprueba la versión de OpenSSL:

# openssl version
OpenSSL 1.0.2h 3 May 2016

También tendrás que reiniciar cualquier servicio utilizado por libssl. Para comprobar la lista de estos servicios, se puede usar el siguiente comando:

# lsof -n | grep ssl | grep DEL

Hacemos un

# updatedb

y comprobamos la seguridad en http://filippo.io/Heartbleed/

Jesus_Caceres