martes, 29 de noviembre de 2011

Autenticación por clave pública

  1. Lo primero que debemos hacer es introducir el comando ssh-keygen -t rsa en el terminal de comandos en el equipo cliente. A continuación nos pedirá la ubicación del fichero, pulsamos Enter sobre la que nos da por defecto:


















Nos generará el par de claves publica/privada:


















2. Crearemos el directorio .ssh/ en el equipo servidor en la carpeta personal de usuario (/home/usuario)

3. Seguidamente copiaremos el fichero de clave pública al equipo servidor mediante el comando scp:

scp /home/usuario/.ssh/id_rsa.pub usuario@192.168.200.1:/home/usuario/.ssh


Introduiciremos la contraseña y se efectuará la copia del fichero:










































































4. Dentro del directorio .ssh/ del equipo servidor crearemos un fichero en blanco llamado authorized_keys en el que copiaremos el fichero id_rsa.pub para que el servidor tenga esa clave como clave reconocida

Para ello introduciremos los siguientes comandos en orden:

touch authorized_keys
chmod 600 authorized_keys (asignar permisos correspondientes a la carpeta)
cat id_rsa.pub >> authorized_keys (volcar la clave en el fichero)

5. Por último nos conectaremos al servidor y nos deberá autenticar por la clave pública





Terminal Services

Con esta aplicación conseguiremos ejecutar un escritorio remoto de otro equipo a través de SSH


En primer lugar debemos configurar en Windows 2008 Server esta aplicación. Haremos lo siguiente:


  • Iremos a Inicio > Panel de Control > Sistema > Configuración de acceso remoto. En la pestaña de Acceso remoto activar la segunda opción.


Hay que tener en cuenta que todos los equipos soportan la encriptación de 128 bits, por tanto debemos configurar el servidor para que acepte también una inferior.

Para ello vamos a Herramientas administrativas > Terminal Services > Configuración de Terminal Server




Dentro de esta ventana haremos clic derecho sobre RCP-TCP y seleccionamos Propiedades.

Aqui debemos comprobar que el parámetro de nivel de encriptación está en el valor "Negottiate"




Conexión desde Windows XP


Para ello solo tenemos que irnos al menu Inicio > Todos los programas > Accesorios > Escritorio remoto o ejecutar el comando mstsc.exe en Inicio > Ejecutar. Aparecerá esto:






Ahi escribiremos la IP del servidor al que nos queremos conectar y despues autenticarnos con el usuario y contraseña de ese equipo.







Conexión desde Ubuntu


Ir a Aplicaciones > Internet > Cliente de Terminal Server




Seguidamente introduciremos la IP del servidor al que queramos conectarnos:






FreeSSH en Windows Server 2008

FreeSSH es un servidor SSH para Windows Server 2008. Procederemos a descargarlo.

Tras descargarlo, lanzaremos el acceso directo que tendremos en el escritorio. Al hacerlo nos aparecerá en el System Tray un icono, desde este lanzaremos la aplicación.

Una vez iniciada la configuraremos. Le indicaremos en la pantalla inicial nos indica que el servidor esta corriendo:


En la pestaña SSH configuraremos la IP de nuestro equipo (en el apartado Listen address) y el puerto de la conexión (Port)



Podemos crear un usuario (o varios) para establecer las conexiones. Para ello nos vamos a la pestaña Users y pulsamos en add:



Donde:


  • Login es el usuario con el que nos autenticaremos en el servidor
  • Authorization es el tipo de autorización, que puede ser por la contraseña de usuario del propio equipo Windows o por clave publica
  • Abajo estarán los permisos de ese usuario

A tener en cuenta:

Debemos abrir los puertos correspondientes en  el firewall de Windows para que este servidor funcione correctamente. Para ello nos vamos a Inicio > Herramientas administrativas > Firewall de Windows con seguridad avanzada:


Una vez dentro del mismo debemos crear una regla de entrada para permitir la conexión desde fuera. Para ello en el menu de la izquierda haremos clie en Reglas de Entrada y seguidamente, en la parte derecha, en Nueva Regla:



Nos aparecerá el asistente para crear la nueva regla de entrada. En ella tendremos que especificar que tipo de regla queremos aplicar, si es sobre una aplicación, un puerto o una predefinida. En nuestro caso seleccionaremos la opción Puerto y pulsaremos Siguiente:


En la siguiente parte le especificaremos que se trata de un puerto TCP y que se aplica a puertos locales específicos. Y indicamos el puerto específico: el puerto 22



En la siguiente ventana indicaremos la opción Permitir la conexión, para que no haya excpeciones a la hora de mantener una conexión:


En la siguiente ventana no tocaremos nada:


Ya por ultimo pondremos un nombre cualquiera a la regla. Ya habremos finalizado la acción de crear la nueva regla de entrada:




Para crear una regla de salida se seguirán los mismos pasos exceptuando que en el primer paso anterior en lugar de seleccionar reglas de entrada seleccionaremos regla de salida. El resto del procedimiento es similar.

Conexión desde Windows XP


Para conectarnos desde Windows XP lo haremos con Putty. Lo arrancamos y nos aparece la siguiente interfaz. En ella escribiremos la IP del servidor al que queremos conectarnos y pulsamos Open




Tras esto nos pedirá que confirmemos la clave pública, que aceptaremos, y seguidamente escribiremos el login con el cual se ha configurado el servidor.






Conexión desde Ubuntu

Para la conexión solo hace falta escribir en la linea de comandos: ssh usuario@192.168.200.6 e introducir posteriormente su debida contraseña:





Control remoto FreeNX desde el servidor (clientes Ubuntu y WIndows XP)

En primer lugar, y antes de cualquier cosa, debemos descargar la aplicación FreeNX, que se encuentra dividido en 3 partes en las máquinas Ubuntu Servidor, Ubuntu Cliente y en el cliente WIndows XP

Para instalarlo en las máquinas Ubuntu Servidor (en el cliente se harán los mismos pasos):



  • Una vez descargados las 3 partes de la aplicación (server, node y client), la instalaremos en el siguiente orden
    • 1º: el client
    • 2º: el node
    • 3º: el server
  • Para instalar estas 3 partes utilizaremos el comando sudo dpkg -i. Esta operación la realizaremos con los 3 paquetes en el orden expresado anteriormente. Si no se instala en ese orden, la aplicación no funcionará correctamente, por lo tanto es una cuestión a tener muy en cuenta. Procedemos a la instalación, ubicándonos en la ubicación donde se encuentren los paquetes, en nuestro caso /home/usuario/Escritorio




Para instalarlo en la máquina cliente Windows XP:

Tras descargar la aplicación,teniendo en cuenta que debemos descargar el cliente para este sistema operativo, procederemos a instalarlo. Seguimos los pasos del asistente y lo dejaremos instalado en el equipo.


Conectar el Cliente Ubuntu al Servidor

Abrimos la aplicación, para ello accederemos a Aplicaciones > Otras > NXClient For Linux 


Ahora nos aparecerá el asistente para configurar la conexión al Servidor Ubuntu. En la primera ventana pulsaremos en "Next" y en la segunda ventana escribiremos un nombre cualquiera para denominar esta conexión, el nombre del equipo al que queremos conectarnos, en nuestro caso 192.168.200.1 y el puerto por defecto (22). Pulsamos "Next" para iniciar la conexión:


Ahora selecccionaremos el tipo de sistema al que queremos conectarnos. Como en nuestro caso queremos conectarnos a la máquina Ubuntu Servidor, dejaremos las opciones que nos marcan por defecto:


Ahora introduciremos la contraseña del otro equipo para finalizar la conexión:



Tras esto, ya tendremos la conexión realizada:



Conectar el cliente Windows XP al servidor

Tras haber instalado la aplicación, haremos lo siguiente para conectarnos al equipo Servidor:

Iniciamos la aplicación en la primera ventana pulsamos Next.

En la segunda escribiremos un nombre cualquiera para identificar la conexión, el equipo al que queremos conectarnos (en nuestro caso 192.168.200.1)


En la siguiente ventana nos pide que tipo de SO queremos conectar. Como queremos conectarnos a la máquina cliente dejaremos las opciones por defecto.


Al final nos pide la clave del otro equipo. La introducimos y pulsamos Login. La conexión, tras unos segundos, se realizará:


X11 desde un cliente con carga en el servidor

Para realizar esta operación seguiremos los siguientes pasos:

  1. Editamos el fichero /etc/ssh/sshd_config del servidor SSH y comprobar que la opción X11 Forwarding tiene el valor yes. SI no lo está, cambiarlo:


  2. Editar el fichero /etc/ssh/ssh_config del equipo cliente y comprobar que la opción ForwardX11 esté a yes. Si no lo está, descomentar la linea borrando la almohadilla que hay al principio de la misma y cambiando el valor no por yes.


   3. Ejecutar en el cliente el comando ssh -l usuario 192.168.200.1. Introducimos a continuación la contraseña del otro equipo.

    4.  Ejecutar en el cliente el comando de una aplicación, por ejemplo xeyes &

   5.  Comprobar que se consumen los recursos del servidor y no del cliente. Para ello utilizar el comando top en el cliente y en la lista de procesos que se abre comprobar que aparezca el proceso lanzado en el paso anterior


lunes, 28 de noviembre de 2011

SCP

Parte teórica
Se utiliza para transmitir ficheros de forma segura (estilo FTP seguro)

Parte práctica

  • Creamos un fichero de texto, por ejemplo, en el equipo cliente llamado 1234.txt
  • En una terminal de comandos: introduciremos el comando:
scp /home/usuario/Escritorio usuario@192.168.200.1:/home/usuario/Escritorio/

Nos pedirá la clave del servidor la cual introduciremos y seguidamente se habrá transferido el fichero



Si nos vamos a la máquina cliente obtendremos que el archivo se ha copiado a la otra máquina


































Acceso directo a una carpeta en el Servidor

Para acceder remotamente a una carpeta del equipo servidor desde un equipo cliente:



  • Creamos una carpeta en el directorio personal del usuario en el equipo servidor mediante la terminal de comandos. En ella introduciremos el siguiente comando para crear la carpeta: sudo mkdir compartida . Acto seguido asignaremos permisos totales a esa carpeta: sudo chmod 777 compartida/ 
















  • Para acceder desde el cliente a esa carpeta haremos lo siguiente:
    • En la barra inferior de menús, haremos clic en Lugares - Conectar con el servidor. Aqui introduciremos la Dirección ip (192.168.200.1), el puerto (22), la ruta de la carpeta que a la que queremos acceder (home/usuario/compartido) y el nombre de un marcador para que cree en el menú Lugares un acceso directo a ese recurso compartido



























Nos aparecerá la siguiente ventana y ya habremos tomado posesión de esa carpeta:



En Windows descargar y ejecutar la aplicación Putty:
En ella introducir la IP del servidor (192.168.200.1) y el puerto (22) y pulsar OK

















Asi nos conectamos al servidor SSH desde un equipo Windows XP y podemos trabajar remotamente