miércoles, 7 de abril de 2021

Actualizar versión de SSH en Linux



Cómo actualizar la versión de SSH en un servidor con Linux.



Las versiones tempranas de OpenSSH 7.x que encontramos en multitud de sistemas Linux relativamente modernos contienen bugs que hacen saltar todas las alarmas en las auditorías de seguridad, con problemas tipo "OpenSSH user enumeration vulnerability".

Para resolver estos problemas, podemos actualizar la versión de SSH compilando el código fuente de una versión superior con los pasos que mostraré a continuación.

El sistema que muestra el problema mencionado tiene la siguiente versión de SSH instalada:

HOST # ssh -V OpenSSH_7.6p1, OpenSSL 1.1.0i-fips 14 Aug 2018

Para descargar versiones más actuales de OpenSSH para Linux, podemos ir a la web de SSH:

https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/

Desde el servidor, podemos descargar una de las versiones, en este caso será la versión 8.8, con wget:

HOST # wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.8p1.tar.gz --2021-09-29 10:35:53-- https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.8p1.tar.gz Resolving cdn.openbsd.org (cdn.openbsd.org)... 151.101.130.217, 151.101.194.217, 151.101.2.217, ... Connecting to cdn.openbsd.org (cdn.openbsd.org)|151.101.130.217|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 1815060 (1.7M) [application/octet-stream] Saving to: ‘openssh-8.8p1.tar.gz’ openssh-8.8p1.tar.gz 100%[==========>] 1.73M --.-KB/s in 0.06s 2021-09-29 10:35:53 (27.5 MB/s) - ‘openssh-8.8p1.tar.gz’ saved [1815060/1815060]

Descomprimimos el fichero descargado:

HOST # tar xvf openssh-8.8p1.tar.gz

Entramos el directorio que se ha creado, con "cd openssh*".

A continuación, compilamos el código fuente:

HOST # ./configure HOST # make HOST # make install

Cuando acabe la compilación ya correrá la nueva versión de SSH en el sistema (v8.8):

HOST # ssh -V OpenSSH_8.8p1, OpenSSL 1.1.0i-fips 14 Aug 2018

A partir de este momento ya no debería saltar ningún error relativo a SSH en la siguiente auditoría.
2

2 comentarios:

  1. Buenas estoy intentando actualizar mi versión de OpenSSH pero al ejecutar el comando "./configure" me salta el siguiente error:

    configure:2690: checking for cc
    configure:2720: result: no
    configure:2690: checking for gcc
    configure:2720: result: no
    configure:2690: checking for clang
    configure:2720: result: no
    configure:2742: error: in `/openssh-9.0p1':
    configure:2744: error: no acceptable C compiler found in $PATH

    Si sabes como solucionar este tema te lo agradecería.

    ResponderEliminar
    Respuestas
    1. Hola ledtapia,

      Tu sistema se queja de que no tiene ningún compilador de código C instalado. Deberías instalar el compilador "gcc", por ejemplo.

      Debian/Ubuntu: apt install gcc
      SUSE: zypper install gcc
      Centos: yum install gcc

      Un saludo

      Eliminar