JPerez_JCaballero_DocumentacionSSHWindows

22
Admon de sistemas operativos – ssh en windows SSH en Windows Uso de SSH en Windows (ficheros, puertos y servicios implicados, restricción de usuarios, seguridad y ventajas) 24-1-2013 REALIZADO POR: JAVIER PÉREZ GONZÁLEZ JULIO CABALLERO BLASCO

Transcript of JPerez_JCaballero_DocumentacionSSHWindows

Admo n de sistemas operativos – ssh en windows SSH en Windows

Uso de SSH en Windows (ficheros, puertos y servicios

implicados, restricción de usuarios, seguridad y ventajas)

24-1-2013

REALIZADO POR:

JAVIER PÉREZ GONZÁLEZ

JULIO CABALLERO BLASCO

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

2 jueves, 24 de enero de 2013

ÍNDICE -¿Que es ssh? ......................................................................................................................... 3

- Uso de ssh en Windows ....................................................................................................... 3

1- Programas Servidor SSH ................................................................................................. 3

2- Programas Cliente SSH ................................................................................................... 5

2- Ficheros, puertos y servicios implicados. .......................................................................... 5

1- Instalación de un Servidor SSH....................................................................................... 5

Ficheros Implicados .......................................................................................................... 10

Archivos de log ................................................................................................................. 11

Puertos y servicios implicados ......................................................................................... 11

Habilitar puertos múltiples para conexión SSH ............................................................ 11

WinSCP ............................................................................................................................. 13

3- Restricción de usuarios. ................................................................................................... 14

Fichero sshd_config .......................................................................................................... 14

Directivas AllowUsers y DenyUsers .............................................................................. 14

4- Seguridad. ........................................................................................................................ 20

Túneles SSH ...................................................................................................................... 20

5- Ventajas y Desventajas. .................................................................................................... 21

Ventajas ............................................................................................................................ 21

Desventajas ...................................................................................................................... 21

6- Fuentes............................................................................................................................. 22

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

3 jueves, 24 de enero de 2013

Uso de ssh en Windows. Ficheros, puertos y servicios implicados. Restriccio n de Usuarios. Seguridad. Ventajas e inconvenientes.

-¿Que es ssh?

SSH (Secure SHell, en español: intérprete de órdenes segura) es el nombre de un protocolo y del programa que lo implementa, y sirve para acceder a máquinas remotas a través de una red. Permite manejar por completo la computadora mediante un intérprete de comandos, y también puede redirigir el tráfico de X para poder ejecutar programas gráficos si tenemos un Servidor X (en sistemas Unix y Windows) corriendo. Además de la conexión a otros dispositivos, SSH nos permite copiar datos de forma segura (tanto ficheros sueltos como simular sesiones FTP cifradas), 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. 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 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.

- Uso de ssh en Windows

1- Programas Servidor SSH

Existen una gran variedad de programas para poder montar un servidor SSH en windows. He aquí algunos de ellos: - KpyM SSH Server Es un servidor ssh gratis y opensource para Windows NT/2000/2003/XP. Proporciona acceso a un servidor remoto a través del protocolo ssh. Soporta aplicaciones de línea de comandos (dir, ftp, etc.) y aplicaciones gráficas de color (edit.com, tetrix.exe, etc.) KTS acepta conexiones de clientes SSH que funcionen bajo cualquier sistema operativo. Además, KTS proporciona la posibilidad de transmitir archivos y manipularlos utilizando el protocolo SFTP (Secure File Transfer Protocol). Este servidor se ejecuta como servicio y utiliza el sistema de identificación de Windows, de modo que no es necesario guardar usuarios y contraseñas adicionales. Se puede descargar desde este enlace: http://www.kpym.com/2/kpym/download.htm

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

4 jueves, 24 de enero de 2013

- FreeSSHd

Es un servidor SSH gratuito. Proporciona un fuerte modelo de encriptación e identificación para redes inseguras como Internet. Los usuarios pueden realizar conexiones remotas o incluso acceder a sus archivos gracias a un servidor SFTP que lleva incorporado. Está disponible en el siguiente enlace: http://www.freesshd.com/?ctt=download - OpenSSH para Windows Es un paquete gratuito que instala herramientas de servidor y cliente en el paquete Cygwin sin la necesidad de instalar el programa CygWin completo. Es similar al paquete de NetworkSimplicity. El paquete de OpenSSH para Windows proporciona soporte para SSH/SCP y SFTP. OpenSSH par windows está disponible en el siguiente enlace: http://sourceforge.net/projects/sshwindows/files/OpenSSH%20for%20Windows%20-%20Release/ -WinSSHD Es un servidor seguro SSH para Windows NT4/2000/XP/2003 y Vista que soporta los siguientes servicios SSH: Acceso remoto seguro vía consola (soporta vt100, xterm y bvterm), acceso remoto seguro via GUI (Se requiere escritorio remoto o WinVNC), transferencia de archivos segura utilizando SFTP y SCP (compatible con los clientes más populares), conexión TCP/IP segura (reenvío de puerto). Puedes utilizar WinSSHD por un período de 30 días. Se puede descargar desde el siguiente enlace: http://dl.bitvise.com/WinSSHD4-Inst.exe - copSSH - OpenSSH para Windows Es una implementación de un cliente y servidor SSH para sistemas Windows. Es otro paquete de OpenSSH, cygwin, algunas herramientas populares y además con algunas de las mejores prácticas relativas a seguridad. Puedes usar COPSSH para la administración remota de tus sistemas o para obtener información remota de forma segura. Está disponible en el siguiente enlace: https://www.itefix.no/i2/copssh-get

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

5 jueves, 24 de enero de 2013

2- Programas Cliente SSH Existen muy pocos clientes ssh para los sistemas Windows. Los 2 más conocidos son los siguientes: -Putty PuTTY es un cliente SSH, Telnet, rlogin, y TCP raw con licencia libre. Disponible originalmente sólo para Windows, ahora también está disponible en varias plataformas Unix, y se está desarrollando la versión para Mac OS clásico y Mac OS X. Otra gente ha contribuido con versiones no oficiales para otras plataformas, tales como Symbian para teléfonos móviles. Es software beta escrito y mantenido principalmente por Simon Tatham, open source y licenciado bajo la Licencia MIT. Se puede descargar desde aquí: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe -SSH Secure Shell Cliente SSH con una intefaz muy amigable, el único inconveniente es que es de paga. Una de sus características principales es que también cuenta con un explorador gráfico de archivos por lo que copiar, mover y borrar archivos es una tarea realmente sencilla. Disponible para descargar el programa con un periodo de 45 días de evaluación desde el siguiente enlace: http://www.ssh.com/index.php/evaluation-downloads/ssh-clientserver-evaluation.html

2- Ficheros, puertos y servicios implicados.

1- Instalación de un Servidor SSH 1- Primero descargamos un Servidor SSH, por ejemplo OPENSSH para Windows 7. Nos lo descargamos del siguiente enlace y lo instalamos: http://ignum.dl.sourceforge.net/project/sshwindows/OpenSSH%20for%20Windows%20-%20Release/3.8p1-1%2020040709%20Build/setupssh381-20040709.zip 2- Marcamos todas las opciones para instalar el cliente, servidor y para crear accesos directos en el menú de inicio

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

6 jueves, 24 de enero de 2013

3- Elegimos la ruta de instalación

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

7 jueves, 24 de enero de 2013

4- En la siguiente captura nos dice que debemos editar el fichero c:\OpenSSH\etc\passwd. Si no modificamos este fichero no podremos conectarnos desde ningún cliente.

5- Abrimos el símbolo del sistema y vamos al directorio c:/OpenSSH/bin y creamos el fichero de grupos y usuarios por defecto

6- Descargamos las librerías cygwin1.dll y cygintl-2.dll y las copiamos en el directorio c:/OpenSSH/bin . Las podemos descargar aquí http://samanthahalfon.net/resources/cygwin_includes.zip

7- Hacemos propietario al Administrador de todos los elementos de c:/OpenSSH/etc y damos permisos de lectura y escritura al propietario de los ficheros c:/OpenSSH/etc

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

8 jueves, 24 de enero de 2013

8- Activamos el servicio ssh

9- Modificamos el fichero c:/OpenSSH/etc/sshd_conf y modificamos la siguiente linea para que permita conectarse desde cualquier equipo

10- Ahora procedemos a conectarnos desde otro equipo, con el cliente Putty y podemos comprobar que funciona perfectamente. Primeramente tenemos que añadir la clave pública del servidor a nuestro equipo.

11- Ponemos el usuario con el que nos vamos a conectar y la contraseña

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

9 jueves, 24 de enero de 2013

12- Ya estamos dentro del equipo que hace de servidor SSH

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

10 jueves, 24 de enero de 2013

Ficheros Implicados

El programa OpenSSH se instala por defecto en la carpeta c:\Archivos de programas\OpenSSH Este es el contenido de la carpeta c:\Archivos de programa\OpenSSH\etc

moduli: ssh_config: configuración del sistema cliente SSH por defecto. ssh_host_dsa_key: clave privada DSA usada para el dominio sshd ssh_host_dsa_key.pub: clave pública DSA usada por el dominio sshd ssh_host_key: Clave privada RSA usada por el dominio sshd para SSHv1 ssh_host_key.pub: Clave pública RSA usada por el dominio sshd para SSHv1 ssh_host_rsa_key: Clave privada RSA usada por el dominio sshd para SSHv2 ssh_host_rsa_key.pub: Clave privada RSA usada por el dominio sshd para SSHv2 sshd_config: configuración del sistema servidor SSH por defecto.

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

11 jueves, 24 de enero de 2013

Archivos de log Se encuentran en OpenSSH\var\log:

Puertos y servicios implicados

Puertos: El servicio SSH utiliza el puerto 22 Servicios Implicados: El servicio que necesitamos tener arrancado es Opensshd. Podemos arrancarlo desde consola poniendo “net start opensshd” o podemos arrancarlo desde Panel de Control/Sistema y seguridad/Herramientas administrativas/Servicios

Habilitar puertos múltiples para conexión SSH

Para ello editamos el fichero sshd_config y añadimos la línea Port PUERTODESEADO. Reiniciamos el servicio y lo probamos con Putty.

Accedemos mediante la dirección IP y el puerto que queremos:

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

12 jueves, 24 de enero de 2013

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

13 jueves, 24 de enero de 2013

WinSCP

WinSCP es una aplicación de Software libre. WinSCP es un cliente SFTP gráfico para Windows que emplea SSH. El anterior protocolo SCP también puede ser empleado. Su función principal es facilitar la transferencia segura de archivos entre dos sistemas informáticos, el local y uno remoto. Ahora vamos a comprobar su funcionamiento 1- Después de descargar e instalar WINSCP http://winscp.net/download/winscp513setup.exe , Ejecutamos el programa y ponemos la dirección ip, el puerto, el usuario y la contraseña

2- Ahora debemos guardar la clave pública del servidor en nuestro equipo. Para ello hacemos click en Sí.

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

14 jueves, 24 de enero de 2013

3- Podemos ver los archivos de la maquina remota y de la propia máquina. Con solo arrastrar los archivos o carpetas podemos copiarlos a través del protocolo SSH

3- Restricción de usuarios. Fichero sshd_config Directivas AllowUsers y DenyUsers Con las directivas AllowUsers y DenyUsers User podemos restringir que usuarios pueden acceder al servidor SSH. -Con la directiva AllowUsers podemos decir que usuarios permitimos conectarse al Servidor. Todos los demás no podrá conectarse. -Con la directiva DenyUsers podemos decir que usuarios denegamos el acceso al Servidor. Todos los demás podrán conectarse sin problemas Comprobamos como funciona estás directivas: 1- Creamos 2 usuarios, por ejemplo usuario1 y usuario2

2- Creamos de nuevo los archivos etc\group y etc\passwd

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

15 jueves, 24 de enero de 2013

3- Comprobamos que se han añadido los usuarios nuevos

4- Ahora modificamos el fichero sshd_config y añadimos primero al usuario que vamos a permitir con la directiva AllowUsers

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

16 jueves, 24 de enero de 2013

5- Comprobamos si podemos acceder con el usuario1

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

17 jueves, 24 de enero de 2013

6- Comprobamos que no podemos acceder con usuario2

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

18 jueves, 24 de enero de 2013

Con la opción ListenAddress IP le decimos por la subred que va a escuchar ssh para que se pueda realizar una conexion.

Con la opción PermitRootLogin permitimos acceder al equipo por ssh mediante el usuario root:

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

19 jueves, 24 de enero de 2013

Con la opción PermitEmptyPasswords, permitimos que al estar activado puedan acceder mediante usuarios que no tengan contraseña asignada:

Con la opción KerberosAuthentication, permite la autenticación mediante Kerberos. Con la opción KerberosOrLocalPasswd, si falla la autenticación por Kerberos se puede entrar comprobando el fichero c:/Openssh/etc/passwd.

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

20 jueves, 24 de enero de 2013

4- 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 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. Utiliza Criptografía asimétrica, es decir utiliza una clave privada y una clave pública para cifrar la conexión.

Túneles SSH

El protocolo SSH se utiliza con frecuencia para tunelizar tráfico confidencial

sobre Internet de una manera segura. Por ejemplo, un servidor de ficheros puede

compartir archivos usando el protocolo SMB (Server Message Block), cuyos datos no

viajan cifrados.

Para poder montar el sistema de archivo de forma segura, se establece una conexión

mediante un túnel SSH que encamina todo el tráfico SMB al servidor de archivos dentro

de una conexión cifrada SSH. Aunque el protocolo SMB sigue siendo inseguro, al viajar

dentro de una conexión cifrada se impide el acceso al mismo.

Se pueden hacer tanto directos (un puerto local a un puerto del lado remoto) como

inversos (un puerto remoto a un puerto del lado local).

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

21 jueves, 24 de enero de 2013

5- Ventajas y Desventajas.

Ventajas

- Después de la primera conexión, el cliente puede saber que está conectando al mismo servidor en futuras sesiones. - EL cliente transmite al servidor usuario y contraseña en formato cifrado. - Todos los datos que se envían o reciben en la conexión son cifrados. El cliente puede ejecutar aplicaciones gráficas desde el shell (interprete de ordenes) de forma segura (reenvío por X11).

Desventajas

- Hay que instalar un servidor para que funciones este servicio ya que no viene por

defecto en Windows

- No se puede acceder de forma anónima, es decir, no se puede acceder con un usuario

anónimo

[ADMÓN DE SISTEMAS OPERATIVOS – SSH EN WINDOWS Javier Pérez Julio Caballero

22 jueves, 24 de enero de 2013

6- Fuentes http://es.wikipedia.org/wiki/Secure_Shell http://www.webtutoriales.com/articulos/servidores-ssh http://www.webadictos.com.mx/2008/01/22/clientes-ssh-para-windows/ http://es.wikipedia.org/wiki/PuTTY www.worldgoneweb.com/2011/installing-openssh-on-windows-7/ https://es.wikipedia.org/wiki/T%C3%BAnel_(inform%C3%A1tica)#T.C3.BAnel_SSH http://www.lodemenos.net/Como-se-crea-un-tunel-ssh-entre-tu.html http://www.serinformaticos.es/?module=blog&page=viewpost&post=configurar-ssh-para-que-escuche-en-multiples-puertos.php