2. Además de la conexión a otros dispositivos, SSH nos permite copiar datos de forma segura
(tanto ficheros sueltos como simular sesiones FTPcifradas), gestionar claves RSA para no
escribir claves al conectar a los dispositivos y pasar los datos de cualquier otra aplicación por
un canal seguro tunelizado mediante SSH.
Seguridad
SSH trabaja de forma similar a como se hace con telnet La diferencia principal es que SSH
usa técnicas de cifrado que hacen que la información que viaja por el medio de
comunicación vaya de manera no legible y ninguna tercera persona pueda descubrir el
3. usuario y contraseña de la conexión ni lo que se escribe durante toda la sesión; aunque es
posible atacar este tipo de sistemas por medio de ataques de REPLAY y manipular así la
información entre destinos.
Historia
Al principio sólo existían los r-commands, que eran los basados en el programa rlogin, el
cual funciona de una forma similar a telnet.
La primera versión del protocolo y el programa eran libres y los creó un finlandés
llamado Tatu Ylönen, pero su licencia fue cambiando y terminó apareciendo la compañía
SSH Communications Security, que lo ofrecía gratuitamente para uso doméstico y
académico, pero exigía el pago a otras empresas. En el año 1997 (dos años después de
que
Autenticación
Autenticación por password
SSH permite autentificar a un usuario utilizando su password Unix ordinario. La única (e
importante) diferencia es que el password no viaja nunca en claro por la red. Si utilizamos
SSH para sustituir a telnet, rlogin o ftp evitaremos el peligro de que nuestro password sea
capturado por posibles "sniffers" en la red.
Por otra parte, seguiremos siendo vulnerables a los llamados "ataques de diccionario" contra
el password: si un atacante tiene acceso al fichero /etc/passwd, no resulta difícil averiguar
passwords formados a partir de palabras susceptibles de figurar en un diccionario. Esto
significa que sigue siendo extremadamente importante que el administrador proteja
debidamente el fichero /etc/passwd y que los usuarios utilicen passwords "seguros" (lo más
aleatorios posible, combinando mayúsculas, minúsculas, dígitos y puntuación).
Autenticación por clave pública
La segunda alternativa de autentificación utiliza un esquema de clave pública/privada,
también conocido como clave asimétrica. En este esquema se utiliza un par de claves:
1. Una clave pública, que se copia a todos los servidores a los que queremos conectarnos.
2. Una clave privada, que solamente nosotros poseemos; para mayor seguridad, esta clave está
cifrada con una frase de paso.
4. Estas dos claves poseen una característica importante: un texto cifrado con la clave pública
sólo puede ser descifrado usando la clave privada, mientras que un texto cifrado con la clave
privada sólo puede descifrarse mediante la clave pública.
Veamos cómo se aplica esta propiedad al proceso de autentificación:
1. El servidor nos envía un mensaje, que debemos devolver cifrado con nuestra clave privada.
2. El servidor descifra el mensaje de respuesta con nuestra clave pública.
3. El servidor compara el mensaje resultante con el texto original; si coinciden, el servidor nos
considera debidamente autentificados
Por supuesto, todo este proceso es transparente para el usuario; solamente tendremos que
preocuparnos de teclear la frase de paso cuando el programa lo pida. El punto más débil de
este esquema es cómo hacer llegar nuestra clave pública al servidor. De momento no existe
ninguna forma automática de hacerlo, y no hay más forma que hacerlo a mano.
La principal ventaja de este método de autentificación es que, aunque un atacante lograra
comprometer el servidor, sólo podría conseguir acceso a nuestra clave pública, pero nunca a
nuestra clave privada. De todas formas, en prevención de un posible compromiso del cliente,
es necesario que la clave privada esté protegida con una frase de paso adecuada. De esta
forma, nadie podráutilizarla aún en el caso de que consiguiera de alguna manera hacerse con
ella.
En el caso de realizar la conexión desde una máquina Unix, una ventaja secundaria es que
se puede utilizar un agente de autentificación para evitar tener que teclear la frase de paso
en cada conexión.
El mayor inconveniente de la autentificación por clave pública es la fase de configuración
previa, que puede resultar algo engorrosa. Los pasos a seguir son:
1. Generación de las claves.
2. Propagación de la clave pública.
3. Selección del par de claves
Conexión a un servidor remoto
Para conectarnos con un servidor SSH remoto desde un cliente tipo Unix/Linux podemos
abrir una consola y teclear:
$ ssh nombre.maquina.com
Si queremos conectar como root en el servidor remoto, pero en cliente estamos como otro
usuarios podemos teclear:
6. NAVEGAMOS ATRAVES DEL DIRECTORIO CON “CD” Y “LS” PARA VER LOS CARPETAS
ADENTRO HASTA UBICAR SSHD_CONFIG
PARAABRIRLA UTILIZAREMOS “SUDO NANO SSHD_CONFIG”
7. AQUI BUSCAMOS DONDE DICE “PermitRootLogin” y escribimos NO y luego guardamos con
CTRL+ X
11. EN ESTA PARTE PUSE EL COMANDO “DHCLIENT” PARA QUE ME ASIGNARA UNA IP Y
PODER CONECTARME CON SSH DESDE OTRA PC. EN ESTE CASO LA IP ES 192.168.1.70
AQUI NOS CONECTAMOS Y NOS MUESTRA EL SIGUIENTE MENSAJE CON LA LLAVE
DAMOS EN LA OPCION DE “SI”Y NOS PEDIRA USUARIO Y PASSWORD EN SSH.
12. CUANDO NOS LOGUEAMOS ASI NOS MOSTRARA EL SIGUIENTE MENSAJE.
SSH File Transfer (Windows Client)
EN ESTA PARTE ES TRANSFERENCIAS DESDE UN CLIENTE FTP YO ME INSTALE
FILLEZILLA .
13. EN LA PARTE DE ARRIBA LLENAMOS CON LO SIGUIENTES DATOS
SERVIDOR : 192.168.1.70
USUARIO: redes
PASSWORD: redes
PUERTO : 22
Y DAMOS CONEXION RAPIDA
AQUI YA ESTAMOS DENTRO DEL SERVIDOR DE CENTOS GRACIAS AL PROTOCOLO DE
TRANSFERENCIA FTP POR EL PUERTO 22.
14. EN ESTE CASO YO SUBIRE ESTA CARPETA CON IMAGENES AL SERVIDOR.
DAMOS CLICK DERECHO Y SUBIMOS ESTE ARCHIVO
COMO PUEDEN OBSERVAR LA CARPETA DE “CAPTURAS” SE SUBIO INMEDIATAMENTE
AL SERVIDOR A UNA VELOCIDAD DEMASIADAALTA.
16. PRIMERO NOS CONECTAMOS AL SERVIDOR CON SSH
Y UTILIZAREMOS EL COMANDO “SSH-KEYGEN -T RSA” PARA GENERAR UNA LLAVE
CON CIFRADO RSA Y DAMOS ENTER A TODO.
EN ESTA PARTE PONEMOS LOS SIGUIENTES COMANDOS
[cent@dlp ~]$
18. Y UTILIZAREMOS LOS SIGUIENTES COMANDOS EN MODO ADMINISTRADOR PARA
REALIZAR LA TRANSFERENCIA DEL SERVIDOR AL CLIENTE
[cent@dlp ~]$
mkdir ~/.ssh
chmod 700 ~/.ssh
19. EN ESTA PARTE NOS DESCARGO LA LLAVE PRIVADAAL SERVIDOR.
EN ESTA PARTE LO QUE TENEMOS QUE HACER ES IRNOS AL SERVIDOR FTP Y
DESCARGAR NUESTRAS LLAVES PRIVADAS A NUESTRO CLIENTE PARA PODERNOS
CONECTAR.
20. EN ESTA PARTE ABRIMOS PUTTY KEY GENERATOR Y DAMOS CLICK EN GENERATE
TENEMOS QUE MOVER EL MOUSE PARA QUE CARGUE.
21. ESTA ES LA LLAVE PRIVADA QUE NOS GENERO LA GUARDAMOS DONDE DICE “SAVE
PRIVATE KEY”
PRESIONAMOS SI
23. DESPUES DE ESTO CARGAMOS LA LLAVE EN “LOAD” Y VAMOS A LA RUTA DONDE ESTA
GUARDADA.
24. DESPUES ABRIMOS PUTTY Y NOS VAMOS DONDE DICE AUTH. Y DONDE DICEN
PARAMETERS BUSCAMOS NUESTRA LLAVE EN DONDE QUEDO GUARDADA.
Y POR ULTIMO ENTRAMOS AL SERVIDOR DESDE PUTTY.