
¿Qué es un protocolo de red?
Los protocolos de red, como su propio nombre indica, establecen de manera detallada el proceso que deben seguir los sistemas informáticos para realizar conexiones y transferencias de información. Gracias a estos protocolos los sistemas involucrados en una comunicación son capaces de entenderse y proporcionar una interfaz homogénea para el acceso a un tipo de servicio.
Los protocolos de Internet son diversos. HTTP es el que usan los navegadores para conectarse con servidores web y recibir información de las páginas. Además, como HTTP es un protocolo tan extendido, muchos otros sistemas se apoyan en él para realizar comunicaciones, como los servicios web o diversos programas de mensajería. Pero existen otros protocolos importantes como IMAP, POP y SMTP que permiten trabajar con el correo electrónico, o FTP para la transferencia de archivos.
¿Qué es el protocolo SSH?
SSH son las siglas de Secure Shell y es un protocolo de red destinado principalmente a la conexión con máquinas a las que accedemos por línea de comandos. En otras palabras, con SSH podemos conectarnos con servidores usando la red Internet como vía para las comunicaciones. Esto es algo en lo que profundizamos en Comandos básicos para administrar servidores Linux por SSH.
Su característica más importante es que siempre se realiza de manera segura. Gracias a SSH, la información que viaja por la Red no es legible por terceras personas y, para ello, todo el tránsito de la información se realiza encriptando los datos. Esto es importante para garantizar que el tráfico de datos se realice siempre de manera confidencial y que nadie sea capaz de escuchar el canal de comunicaciones para robar información o claves de acceso a los servidores.
El puerto predeterminado para las conexiones SSH es el 22.
¿Cómo funciona SSH?
El protocolo SSH utiliza una arquitectura cliente-servidor para establecer conexiones seguras. Aquí hay un resumen de cómo funciona:
- Cliente SSH: Es la aplicación que utilizas para conectarte a un servidor remoto. Puedes utilizar diferentes clientes SSH, como OpenSSH en sistemas Linux o PuTTY en Windows.
- Servidor SSH: Se ejecuta en el servidor remoto al que deseas acceder. Este servidor está configurado para aceptar conexiones SSH y autenticar a los usuarios.
- Autenticación: Cuando intentas conectarte a un servidor remoto, el cliente SSH y el servidor SSH inician un proceso de autenticación. Esto generalmente implica el uso de un nombre de usuario y una contraseña (o una clave SSH). La clave SSH es una forma más segura de autenticación y se recomienda encarecidamente su uso.
Aproveche la solución de evaluación de vulnerabilidades más confiable del sector para evaluar toda la superficie de ataque moderna.
Conocer..
¿Para qué se utiliza SSH?
Debido a su seguridad, SSH es el modo preferido para la realización de conexión con servidores que necesitamos administrar. La diferencia con respecto a otros protocolos más antiguos como Telnet es que el protocolo SSH siempre es seguro.
Sin embargo, aprovechando la seguridad de las comunicaciones, también se utiliza para otros objetivos como:
- Transferencia de Archivos Segura: Permite transferir archivos de forma segura entre sistemas locales y remotos utilizando herramientas como el comando SCP o SFTP.
- Creación de Túneles de Red: SSH se utiliza para crear túneles de datos seguros que redirigen el tráfico de red a través de conexiones SSH, lo que puede ayudar a proteger la comunicación en redes no seguras. Se usan en sistemas como Ngrok, un software que permite a los desarrolladores exponer de manera remota los trabajos, tal como los tienen funcionando en su servidor de desarrollo local.
Técnicas de cifrado SSH
El protocolo SSH utiliza diferentes técnicas de seguridad para proteger sus conexiones.
Cifrado Simétrico
El cifrado simétrico es una técnica en la que se utiliza la misma clave tanto para cifrar como para descifrar los datos entre el cliente y el servidor, lo que garantiza su seguridad y confidencialidad.
Cifrado Asimétrico
En cambio, el cifrado asimétrico utiliza dos claves: una pública y otra privada; en otras palabras, se hace uso de una clave para el cifrado y otra para el descifrado, verificando así la identidad tanto del cliente como la del servidor.
Cuando un cliente se conecta a un servidor, utiliza la clave pública del servidor para cifrar un mensaje que sólo puede descifrarse con la clave privada correspondiente.
Hashing
El hashing es una técnica que se utiliza para verificar la integridad de los datos transmitidos. El algoritmo toma un conjunto de datos y genera un valor hash único, que es una representación de los datos originales.
Este valor se envía junto con los datos a través de la conexión SSH. En el extremo receptor, los datos se vuelven a calcular y se genera un nuevo valor hash.
- Si coincide con el recibido, se confirma que los datos no se han modificado.
- Si no coincide, los datos podrían haber sido alterados y se considera una posible amenaza de seguridad.