SSH3, nueva versión de SSH que utiliza QUIC+TLS1.3 ~ Segu-Info

Hace poco se dio a conocer el lanzamiento oficial de la primera versión
experimental del servidor y cliente para el protocolo SSH3 y que utiliza QUIC
(basado en UDP), TLS 1.3 que y aprovecha los mecanismos HTTP para la
autenticación de usuarios, as’i como tambi’en para establecer un canal de
comunicación seguro

SSH3 es una revisión completa del protocolo SSH, que integra su semántica con
los mecanismos HTTP. Surge de la investigación de dos investigadores que lo propusieron recientemente como Internet-Draft: draft-michel-remote-terminal-http3-00.

SSH3 utiliza mecanismos de autorización basados ​​en el protocolo HTTP, que
permiten nuevos métodos de autenticación, además de la autenticación clásica
mediante una contraseña y un par de claves, además de que en SSH3 se puede
configurar el acceso a un servidor remoto a través del proveedor de identidad
una organización o con una cuenta de Google o GitHub. SSH3 se basa en HTTP/3 y
QUIC y, además del reenvío TCP normal, también ofrece reenvío de puertos UDP y
un establecimiento de sesión más rápido y seguro.

En resumen, SSH3 utiliza
QUIC+TLS1.3 para el
establecimiento de canales seguros y los mecanismos de autorización HTTP para
la autenticación de usuarios. Entre otras, SSH3 permite las siguientes
mejoras:

  • Establecimiento de sesión significativamente más rápido
  • Nuevos métodos de autenticación HTTP como
    OAuth 2.0
    y
    OpenID Connect, además de la autenticación SSH clásica
  • Robustez ante ataques de escaneo de puertos: su servidor SSH3 puede hacerse
    invisible para otros usuarios de Internet
  • Reenvío de puertos UDP, además del reenvío de puertos TCP clásico
  • Todas las funciones que permite el protocolo QUIC moderno, incluyendo la
    migración de conexión (próximamente) y las conexiones multiruta.

Sobre SSH3

Los desarrolladores del proyecto mencionan que la creación de SSH3 surgió como
resultado de una revisión completa del protocolo SSH, llevada a cabo por un
grupo independiente de investigadores separados de los equipos que trabajan en
proyectos como OpenSSH y otras implementaciones del protocolo SSH clásico.

En SSH3, la semántica del protocolo SSH clásico se implementa a través de
mecanismos HTTP,

lo que no solo permite capacidades adicionales, sino que también asegura que
las actividades relacionadas con SSH estén ocultas entre el resto del tráfico,
entre otras cosas, SSH3 permite las siguientes mejoras que el protocolo SSH2
no podría proporcionar, as’i como también muchas de las características
populares de OpenSSH:

  • Establecimiento de sesión significativamente más rápido
  • Nuevos métodos de autenticación HTTP, como OAuth 2.0 y OpenID Connect,
    además de la autenticación SSH clásica.
  • Análisis ~/.ssh/authorized_keys en el servidor.
  • Analiza ~/.ssh/config en el cliente
  • Autenticación de servidor basada en certificados
  • Robustez ante ataques de escaneo de puertos: su servidor SSH3 puede volverse
    invisible para otros usuarios de Internet
  • Reenvío de puertos UDP: ahora puede acceder a su QUIC, DNS, RTP o cualquier
    servidor basado en UDP al que solo se pueda acceder desde su host SSH3.
  • Certificados X.509: ahora puede utilizar sus certificados HTTPS clásicos
    para autenticar su servidor SSH3. Este mecanismo es más seguro que el
    clásico mecanismo de clave de host SSHv2.
  • Capacidad de ocultar el servidor detrás de un enlace secreto.
  • Todas las funciones permitidas por el protocolo QUIC moderno: incluida la
    migración de conexiones y conexiones multiruta
  • Usar automáticamente la autenticación ssh-agent de clave pública
  • Reenvío de agente SSH para usar sus claves locales en su servidor remoto
  • Autenticación de usuario segura sin llave mediante OpenID Connect.


Para cifrar el canal de comunicación, SSH3 utiliza el protocolo TLS 1.3

y se pueden emplear métodos tradicionales basados en contraseñas y claves
públicas (RSA y EdDSA/ed25519). Adicionalmente, SSH3 ofrece la opción de
utilizar métodos basados en el protocolo OAuth 2.0, permitiendo transferir la
autenticación a proveedores externos.

Otro de los puntos fuertes de
SSH3 es que ofrece un establecimiento de sesión significativamente más
rápido que SSH2
, por ejemplo, establecer una nueva sesión con SSH2 puede tardar de 5 a 7
iteraciones de red (ida y vuelta), lo que el usuario puede notar fácilmente ya
que SSH3 solo necesita 3 iteraciones.

Cabe mencionar que SSH3 aún es experimental y su uso no es
recomendable para la producción o entornos críticos y como tal solo se
recomienda su instalación para conocer sus funcionalidades o poder
testear.

Descargar e instalar SSH3

Para los interesados en poder implementar un servidor SSH3 para pruebas,
pueden hacerlo compilando con Go el código fuente siguiendo las instrucciones
que compartimos a continuación.

Si estás interesado en poder conocer más al respecto, debes saber que el
cliente y del servidor está escrito en Go y distribuido bajo la licencia
Apache 2.0, puedes consultar los detalles en el siguiente enlace.


Ver fuente

Related Post