Documentos de Académico
Documentos de Profesional
Documentos de Cultura
GC-F-004 V.01
INTEGRANTES:
Juan Cuartas
Yadira Osma
Antonio Ocoró
GC-F-004 V.01
Introducción
En la siguiente presentación hablaremos sobre el servicio de ssh, como instalar y configurar con un nivel
decente de seguridad el servicio SSH, como implementar las llaves publicas y privadas para afianzar la
seguridad del equipo local y también mostraremos como copiar, descargar archivos desde un equipo remoto
usando el servicio de ssh.
GC-F-004 V.01
¿Qué es SSH?
(Secure Shell) Servicio que permite que un usuario acceda de forma remota a un sistema Linux, las
comunicación entre cliente y servidor viajan cifradas desde el primer momento.
Seria muy difícil que un usuario malintencionado pueda extraer la información debido a que SSH usa un
algoritmo de cifrado. SSH utiliza el puerto TCP22.
GC-F-004 V.01
SSH...
A diferencia de otros protocolos de comunicación remota tales como FTP o Telnet, SSH encripta la sesión de
conexión, haciendo imposible que alguien pueda obtener contraseñas no encriptadas.
GC-F-004 V.01
SSH...
GC-F-004 V.01
Características SSH
GC-F-004 V.01
Características SSH
GC-F-004 V.01
Características SSH
Seguridad
El cifrado de SSH proporciona autenticidad e
integridad de los datos transmitidos por una red
insegura como internet.
Utiliza llaves públicas para la autenticación en la
máquina remota.
SSH no sólo sirve para usar comandos en
máquinas remotas, sino para transferencias de
ficheros de forma segura ya sea por SCP o sFTP
y servicios de escritorio remoto.
GC-F-004 V.01
Características SSH
GC-F-004 V.01
Versiones SSH
GC-F-004 V.01
La suite OpenSSH bajo Red Hat Enterprise Linux utiliza por
defecto la versión 2 de SSH, la cual tiene un algoritmo de
intercambio de llaves mejorado que no es vulnerable al hueco de
seguridad en la versión 1. Sin embargo, la suite OpenSSH
también soporta las conexiones de la versión 1.
GC-F-004 V.01
¿Porque usar SSH?
Los usuarios nefarios tienen a su disposición una variedad de herramientas que les permiten interceptar y
redirigir el tráfico de la red para ganar acceso al sistema. El cliente SSH y el servidor usan firmas digitales para
verificar su identidad. Adicionalmente, toda la comunicación entre los sistemas cliente y servidor es encriptada.
No servirán de nada los intentos de falsificar la identidad de cualquiera de los dos lados de la comunicación ya
que cada paquete está cifrado por medio de una llave conocida sólo por el sistema local y el remoto.
GC-F-004 V.01
Secuencia de eventos de una conexión SSH
GC-F-004 V.01
Capa de transporte
GC-F-004 V.01
Al contactar un cliente a un servidor por medio del
protocolo SSH, se negocian varios puntos importantes para
que ambos sistemas puedan construir la capa de transporte
correctamente. Durante el intercambio se producen los
siguientes pasos:
GC-F-004 V.01
Intercambio de claves
Se determina el algoritmo de encriptación de la clave pública
Se determina el algoritmo de la encriptación simétrica
Se determina el algoritmo autenticación de mensajes
Se determina el algoritmo de hash que hay que usar
GC-F-004 V.01
El servidor se identifica ante el cliente con una llave de
host única durante el intercambio de llaves. Obviamente
si este cliente nunca se había comunicado antes con este
determinado servidor, la llave del servidor le resultará
desconocida al cliente y no lo conectará. OpenSSH evita
este problema permitiendo que el cliente acepte la llave
del host del servidor después que el usuario es notificado
y verifica la aceptación de la nueva llave del host.
GC-F-004 V.01
Para las conexiones posteriores, la llave del host del servidor se
puede verificar con la versión guardada en el cliente,
proporcionando la confianza de que el cliente se está realmente
comunicando con el servidor deseado. Si en el futuro, la llave
del host ya no coincide, el usuario debe eliminar la versión
guardada antes de que una conexión pueda ocurrir.
GC-F-004 V.01
Un agresor podría enmascararse como servidor SSH durante el
contacto inicial ya que el sistema local no conoce la diferencia
entre el servidor en cuestión y el falso configurado por un
agresor. Para evitar que esto ocurra, debería verificar la
integridad del nuevo servidor SSH contactando con el
administrador del servidor antes de conectarse por primera vez
o en el evento de que no coincidan las claves.
GC-F-004 V.01
SSH fue ideado para funcionar con casi cualquier tipo de
algoritmo de clave pública o formato de codificación. Después
del intercambio de claves inicial se crea un valor hash usado
para el intercambio y un valor compartido secreto, los dos
sistemas empiezan inmediatamente a calcular claves y
algoritmos nuevos para proteger la autenticación y los datos que
se enviarán a través de la conexión en el futuro.
GC-F-004 V.01
Autenticación
GC-F-004 V.01
Archivos de configuración de SSH
Openssh tiene dos conjuntos diferentes de archivos de configuración: uno para los programas cliente (ssh, scp,
y sftp) y otro para el demonio del servidor (sshd).
La información de configuración SSH para todo el sistema está almacenada en el directorio /etc/ssh/:
ssh_config — El archivo de configuración del sistema cliente SSH por defecto que se sobrescribe si hay
alguno ya presente en el directorio principal del usuario (~/.ssh/config).
sshd_config — El archivo de configuración para el demonio sshd.
ssh_host_dsa_key — La clave privada DSA usada por el demonio sshd.
ssh_host_dsa_key.pub — La clave pública DSA usada por el demonio sshd.
GC-F-004 V.01
Archivos de configuración de SSH
ssh_host_key — La clave privada RSA usada por el demonio sshd para la versión 1 del protocolo SSH.
ssh_host_key.pub — La clave pública RSA usada por el demonio sshd para la versión 1 del protocolo SSH.
ssh_host_rsa_key — La clave privada RSA usada por el demonio sshd para la versión 2 del protocolo SSH.
ssh_host_rsa_key.pub — La clave pública RSA usada por el demonio sshd para la versión 2 del protocolo
SSH.
GC-F-004 V.01
Archivos de configuración de SSH
La información para la configuración SSH específica para el usuario está almacenada en el directorio principal
~/.ssh/:
authorized_keys — Este archivo que contiene una lista de claves públicas "autorizadas". Cuando un cliente se
conecta al servidor, el servidor valida al cliente chequeando su clave pública firmada almacenada dentro de este
archivo.
id_dsa — Contiene la clave privada DSA del usuario.
id_dsa.pub — Contiene la clave pública DSA del usuario.
id_rsa — La clave RSA privada usada por ssh para la versión 2 del protocolo SSH.
id_rsa.pub — La clave pública RSA usada por ssh para la versión 2 del protocolo SSH.
GC-F-004 V.01
Archivos de configuración de SSH
identity — La clave privada RSA usada por ssh para la versión 1 del protocolo SSH.
identity.pub — La clave pública RSA usada por ssh para la versión 1 del protocolo SSH.
known_hosts — Este archivo contiene las claves de host DSA de los servidores SSH accesados por el
usuario. Este archivo es muy importante para asegurarse de que el cliente SHH está conectado al servidor
SSH correcto.
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
Colocamos el servicio de
ssh en todos los niveles de
ejecución.
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
Buscamos el archivo de
configuración y lo abrimos para
editarlo.
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de servidor SSH
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Implementación de llaves
GC-F-004 V.01
Pruebas
GC-F-004 V.01
Pruebas
GC-F-004 V.01
Pruebas
GC-F-004 V.01
Pruebas
GC-F-004 V.01
Pruebas
GC-F-004 V.01
Pruebas con Windows XP
GC-F-004 V.01
Pruebas con Windows XP
GC-F-004 V.01
Pruebas con Windows XP
GC-F-004 V.01
Pruebas con Windows XP
GC-F-004 V.01
Pruebas con Windows XP
GC-F-004 V.01
Conclusión
En este presentación aprendimos que además de acceder a maquinas remotas también podemos copiar datos
de forma segura, gestionar claves RSA para no conectar dispositivos y pasar los datos de cualquier otra
aplicación por un canal tunelizado mediante ssh.
Como muchas empresas se encuentran expuestas a amenazas pues se gestionan las llaves criptográficas para
autenticar accesos a sistemas internos y servicios críticos.
GC-F-004 V.01