Instalar OpenSSL localmente dentro de tu usuario

Generalidades

OpenSSL es un "toolkit" para los protocoles Transporte Seguro de Capas (Transport Layer Security - TLS) y los enchufes seguros de capas (Secure Sockets Layer - SSL). También es una librería de propósitos generales de criptografía. Es usado para asegurar las conexiones en un servidor dentro de tu software.

Esto ya está instalado en todos los servidores de DreamHost. DreamHost corre la versión OpenSSL 1.1.1 en servidores que corren Ubuntu 18 y 1.1.0l en servidores que corren Debian Stretch.

¿Necesito instalar mi propia versión?

La versión del servidor funciona para la mayoría de las aplicaciones web. Sin embargo, las versiones nuevas pueden requerir una versión más alta. Por ejemplo, Python 3.7.1 requiere la versión 1.0.2 o mas alta. Si deseas usar este software que requiere una versión alta debes instalar la nueva versión de OpenSSL localmente en tu Usuario Shell.

Instalar OpenSSL

Este ejemplo instala la versión 1.1.1g.

  1. Inicia sesión en tu servidor vía SSH.
  2. Visita https://www.openssl.org/source/ y localiza la versión que deseas descargar. Da clic derecho y selecciona Copiar dirección de enlace.
  3. Corre wget dentro de la URL para descargar el archivo.
    [server]$ wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz
  4. Confirma la integridad del archivo descargando el archivo SHA256 en la misma página al lado de este.
    [server]$ wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz.sha256
  5. Revisa el checksum para confirmar que la versión que has descargado es segura de usar.
    [server]$ sha256sum openssl-1.1.1g.tar.gz
    ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46  openssl-1.1.1gb.tar.gz
    [server]$ cat openssl-1.1.1g.tar.gz.sha256
    ddb04774f1e32f0c49751e21b67216ac87852ceb056b75209af2443400636d46
    Si son iguales, procede al siguiente paso.
  6. Descomprime este archivo.
    [server]$ tar zxvf openssl-1.1.1g.tar.gz
  7. Cambia dentro del nuevo directorio openssl.
    [server]$ cd openssl-1.1.1g
  8. Configura openssl:

    Esto se configurará para ser instalado en un directorio llamado openssl dentro de tu usuario. Asegúrate de cambiar username a tu Usuario Shell.

    Puedes instalarlo donde quieras, solo asegúrate de NO instalarlo dentro del directorio llamado openssl-1.1.1g. Este directorio fue ya creado cuando descomprimiste el archivo .tar.gz. Si lo configuras ahí, fallará (pues ya existe).

    Revisa la siguiente página de OpenSSL para ver información de opciones de configuración:

    [server]$ ./config --prefix=/home/username/openssl --openssldir=/home/username/openssl no-ssl2
  9. Corre el comando make, seguido por make test.
    [server]$ make
    [server]$ make test
    Al final, deberás ver All tests successful.
  10. Corre el comando make install.
    [server]$ make install
  11. Cambia al directorio principal de tu usuario.
    [server]$ cd ~
  12. Agrega las siguientes líneas a tu .bash_profile. Revisa el artículo Crear y editar un archivo vía SSH para ver instrucciones.
    export PATH=$HOME/openssl/bin:$PATH
    export LD_LIBRARY_PATH=$HOME/openssl/lib
    export LC_ALL="en_US.UTF-8"
    export LDFLAGS="-L /home/username/openssl/lib -Wl,-rpath,/home/username/openssl/lib"

    En la última línea, asegúrate de cambiar username por tu Usuario Shell.

  13. Actualiza el .bash_profile.
    [server]$ . ~/.bash_profile
  14. Prueba para confirmar si está instalado en la ubicación correcta y que la versión sea 1.1.1.
    [server]$ which openssl
    /home/username/openssl/bin/openssl
    [server]$ openssl version
    OpenSSL 1.1.1g  21 Apr 2020

OpenSSL se ha instalado localmente dentro de tu usuario.

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?