29 des. 2008

Synergy

Lo siento, hoy estoy realmente emocionada!!! que maravilla esto de la informática! bueno me calmo y os cuento este nuevo hallazgo, no se si algunos de vosotros habéis oído a hablar él, si no es así en unos minutos descubriréis su maravillosa potencia!

¿Cuantas veces estás encima de la mesa trabajando con varios portátiles a la vez, ya sea configurándolos, trabajando en algún desarrollo o algo de diseño porque con una pantalla no te bastaba? ¿Cuantas veces has deseado poder trabajar mas rápidamente con un solo teclado? pues la solución es Synergy, una herramienta libre que permite compartir por la red un mismo teclado y ratón entre varias pantallas, ¡además es multiplataforma!

Synergy trabaja mediante un sistema cliente-servidor, el servidor es la maquina con la que vas a trabajar remotamente con las otras, las otras maquinas van a ser los clientes.
Mi mente inquieta ha pensado que pasaria si en la misma red existen 2 servidores, ¿sería posible controlar varios ordenadores con varios teclados? pues parece que no, o parece que no está del todo implementado, he probado de arrancar primero las dos maquinas que tengo a mano para probar como servidores, pero no funcionaba, así que he pensado que necesitaban un cliente, así que he arrancado un cliente y un servidor a cada maquina, así funcionaba a medias, una vez en la maquina 2 no podía volver a la maquina1 :S matando los procesos en la maquina2 el cursor de la maquina1 ha vuelto a su casa.

Vale, tras esta explicación vamos a ver como configurar Synergy en nuestros sistemas, voy a contar la instalación en GNU/Linux Debian, que es la que he probado, pero en la siguiente página web explican muy bien como hacerlo en todos los sistemas operativos disponibles:
http://synergy2.sourceforge.net/running.html

La prueba la he hecho con 2 ordenadores con GNU/Linux instalado, hola os presento a h2so4 y a sofre, y la conexión se ha hecho por wifi, pero para hacerselo mas difícil conectados a dos AP distintos, uno con cobertura total (servidor - sofre) y el otro a media potencia g, aprox. 30Mbps (cliente - h2so4).

Primer paso, instalar Synergy en ambas maquinas:

sofre:~# apt-get install synergy
h2so4:~# apt-get install synergy

A continuación le indicaremos en ambas maquinas dónde se encuentra la otra máquina, para ello editaremos el /etc/hosts

En /etc/hosts de sofre añadimos:
192.168.1.25 h2so4

y en /etc/hosts de h2so4 añadimos:
192.168.1.42 sofre

Para comprobar que las dos maquinas se ven mediante el hostname hacemos un ping con el hostname.

Ahora será necesario indicarle a synergy qué host se encuentra a la izquierda y qué otro a la derecha. Es importante indicar las pantallas que tiene alrededor cada una de los equipos, ya que si alguna está mal definida podría hacer que no podamos volver a las otras pantallas y nos quedamos encarcelados en la pantalla de algun cliente...

Creamos el fichero /etc/synergy.conf
No es necesario que el fichero se llame así, ni que esté en /etc, puedes crear tantas configuraciones como quieras y puedes guardarlas donde sea, porque al momento de ejecutar synergy le pasaremos el fichero de configuración que queremos usar. El contenido de este, sería el siguiente y residirá en la máquina servidora:

section: screens
sofre:
h2so4:
end
section: links
sofre:
right = h2so4
h2so4:
left = sofre
end

Esta configuración nos muestra que sofre (el que será el servidor) se encuentra a la izquierda y h2so (que será el cliente) se encuentra a la derecha. Si vas a usar mas pantallas, simplemente será añadir mas entradas en el fichero, y aplicando un poco los conocimientos que nos dió barrio sésamo, a la izquierda tengo..., a la derecha tengo..., arriba tengo..., abajo tengo... los comandos posibles son left, right, up y down.
En esta página vais a encontrar más información sobre la configuración de este fichero:
http://synergy2.sourceforge.net/configuration.html

Ahora ya sólo tenemos que arrancar Synergy. Por defecto Synergy se ejecuta en background, pero para que sea en foreground para ver los mensajes que suelta el programa podemos usar la opción -f, así que para ver qué es lo que ocurre vamos a usar esta opción.

En el servidor ejecutamos (sofre):
# synergys -f --config /etc/synergy.conf

y en el cliente (h2so4):
# synergyc -f sofre

A partir de ahora, si desde la maquina servidora te diriges fuera de la pantalla, vas a aparecer en una de las maquinas clientes y con tu teclado vas a poder trabajar en la otra pantalla, cabe remarcar que con el teclado y el ratón te mueves con un portapapeles, es decir, ¡que puedes copiar texto e imágenes de una pantalla a otra!

Pero tras trabajar un rato piensas, ¿y la seguridad? ¿es seguro usar esto? pues en principio si y no, si porque configuras en el fichero de configuración las maquinas las cuales te vas a conectar (a menos que se use suplantación de identidad, las máquinas que van a intervenir en la sesión de Synergy sólo va a afectar a las máquinas indicadas), y por otra no.
Synergy no trabaja encriptado, supongo uno de los porque es tan rápido, pero en la siguiente página web cuentan como hacer pasar las conexiones de Synergy por un túnel OpenSSH:

http://synergy2.sourceforge.net/security.html

Y en esta otra página nos cuenta cómo configurar el autostart para tu Synergy:

http://synergy2.sourceforge.net/autostart.html

Si ves que te mareas con tanta configuración te recomiendo crear 2 scripts, uno para el servidor:

# vi S20_Synergy
synergys --config /etc/synergy.conf

y en el cliente

# vi S20_Synergy
synergyc sofre

Y los guardas en /etc/rc5.d con derechos de ejecución y Synergy se arrancará automáticamente al entrar en init 5 (el nivel init por defecto en debian para el arranque con entorno gráfico).
Es importante que ambos sistemas usen entorno X, así que adiós a las tty :(

He estado mirando un poco también acerca del protocolo que usa, parece que usa algo propio, no un vnc o similar como me imaginaba, en la wikipedia nos cuentan:

TCP/IP communications (on port 24800) are used to send mouse/keyboard and clipboard events between computers. Communications are not encrypted, and key presses, mouse movements, and clipboard contents sent to Synergy clients can be easily sniffed on network traffic.

la versión en castellano también nos ofrece información ampliada y nos recuerda que será necesario desactivar el firewall (en el caso que esté activo) en el puerto 24800 y también que se recomienda que este programa no se use desencriptado en redes que no sean las nuestras.

Pues aquí os dejo con esta maravilla ;)

Anotación: Este programa lo encontré en una página web llamada tooltorials.com dónde hay varios tutoriales (windowseros), Este post se lo dedico a mi jefe, que dice que esto son chorradas xD

0 comentaris:

Publica un comentari a l'entrada