Secure Shell (SSH)
Agenda
Introducción de SSH y definición
Beneficios que ofrece SSH
Métodos de autenticación
Encriptación e Integridad de datos
¿Qué es SSH?
Es un protocolo abierto de comunicación en una red.
SSH permite tener acceso a un shell (terminal) de una máquina remota.
Además, permite la transferencia de archivos y hacer conexiones seguras sobre
otros protocolos.
Breve historia de SSH
La primera versión se desarrolló en el año de 1995 para ser el sucesor de
protocolos como: rlogin, rcp, rsh.
En 1997 se desarrolló la versión 2 luego de que se encontraron vulnerabilidades
en la versión 1.
¿Cómo funciona SSH?
Objetivos
Explorar los principio del protocolo SSH
Conocer los métodos de autenticación
Conocer las funcionalidades y la seguridad del protocolo
Beneficios de usar SSH
El protocolo Secure Shell proporciona cuatro beneficios básicos de seguridad:
- User Authentication
- Host Authentication
- Data Encryption
- Data Integrity
User Authentication
Se refiere a la identidad del usuario.
Puede ser por contraseña o por llave.
Por contraseña.-Si el nombre de usuario y la contraseña dados en la
autenticación coincide con el nombre de usuario y la contraseña almacenados
en un sistema remoto, usted está autenticado y tiene acceso.
User Authentication
Por llave pública (Public Key Authentication).- La autenticación de clave pública
utiliza un par de claves generadas por computadora, una pública y una privada.
Cada clave suele tener una longitud de entre 1024 y 2048 bits, y aparece como
la muestra de abajo:
User Authentication
Las claves público-privadas se generan normalmente utilizando un comando de
generación de claves. También se puede crear una llave sin ningún argumento.
Ambas claves se generan al mismo tiempo y, aunque las dos están relacionados,
una clave privada no se puede calcular a partir de una clave pública
correspondiente.
User Authentication
Para acceder a una cuenta en un servidor Secure Shell, una copia de la
La clave pública del cliente debe ser cargada en el servidor.
ssh-copy-id user@IP-SERVER
Host Authentication
Una clave de host es utilizada por un servidor para probar su identidad a un
cliente y por un cliente para verificar un Host "conocido".
Las claves de host se describen como persistentes (se cambian con poca
frecuencia) y son asimétricos, al igual que los pares de claves pública / privada.
Si una máquina está ejecutando solo un servidor SSH, una sola clave de host
sirve para identificar tanto la máquina como el servidor.
Si una máquina está ejecutando múltiples servidores SSH, puede ya sea que
tenga varias claves de host o use una sola clave para múltiples servidores
Data Encryption
La encriptación se refiere a la privacidad, se protegen los datos de un atacante
que pueda estar escuchando (Sniffing) los paquetes de la red.
algoritmos de clave
simétrica (por ejemplo,
DES, 3DES, Blowfish, AES
y Twofish).
Data Integrity
La integridad de los datos garantiza que los datos enviados desde un extremo de
una transacción llegan inalterados a el otro extremo.
Incluso con el cifrado de Secure Shell, los datos que se envían a través de la red
todavía podría ser vulnerable a que alguien inserte datos no deseados en el flujo
de datos.
Secure Shell version 2 (SSH2) usa algoritmos Message Authentication Code
(MAC).
Conclusiones
SSH es un protocolo que permite el intercambio de información entre un cliente y
un servidor de manera segura.
SSH permite acceder a un servidor remoto de manera my segura.
SSH garantiza la integridad de los datos.
Referencias
Secure SHell: Connect remotely anything, anywhere, Universidad de Luxemburgo.
An Overview of the Secure Shell (SSH), Vandyke.