domingo, octubre 25, 2009

TigerVNC, el cliente VNC de Fedora.


En pocas palabras el archivo para agregar personas que a la vez deben poseer cuentas UNIX en tu máquina, es el siguiente:

nano /etc/sysconfig/vncservers


Simplemente agregué las siguientes líneas, si deseas agregar más líneas por la seguridad, revisa:
man vncviewer

Las líneas son:
VNCSERVERS="3:maximi89"
VNCSERVERARGS[3]="-geometry 1024x768 -depth 8"

#VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost"

Deseas agregar más usuarios?
VNCSERVERS="1:tiger 2:albatros 3:leopard"
VNCSERVERARGS[1]="-geometry 1024x768 -depth 16"
VNCSERVERARGS[2]="-geometry 800x600 -depth 8"
VNCSERVERARGS[3]="-geometry 1024x768 -depth 16"

Cada usuario tiene un número asociado al argumento que le da una configuración.


Además, debes configurar una clave para TigerVNC:
vncpasswd

donde la clave se guardará en:
/home/user/.vnc/passwd

Para revisar, iniciar, reiniciar o parar el servidor, ejecuta:
[maximi89@gateway ~]$ service vncserver
Uso: /etc/init.d/vncserver {start|stop|restart|try-restart|status|force-reload}

con la opción que más se acomode a tus necesidades.

Deseas que TigerVNC se inicie cada vez que enciendes la computadora?

chkconfig vncserver on



-Cómo me conecto al servidor?

Abre tu cliente de vnc gráfico desde windows, o puedes ejecutar desde otro linux lo siguiente:

vncviewer [Server's IP]:[Port]:[Display]


Ejemplo:
# vncviewer 192.168.0.1:5903:3


esto tiene que ver directamente con la configuración que has hecho en
/etc/sysconfig/vncservers

Más funciones o configuraciones para el servidor VNC, como por ejemplo cambiar fondo de pantalla:

/home/leopard/.vnc/xstartup

xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
twm &


xsetroot en este caso configura el fondo de pantalla
vncconfig es un programa suplementario que puede ser usado para controlar el servidor vnc. Aparte de esto, cuando corre sin argumentos actúa como una aplicación ayudante y su principal propósito es de proveer soporte para transferencia de "copia" entre el cliente (vncviewer) y el servidor vnc.
xterm inicia un terminal xterm.
twm inicia el manejador de ventanas por defecto del servidor X. probablemente queramos cambiar eso por un gestor de ventanas más amigable, ej fluxbox.

Para que los cambios hagan efecto reinicia el servidor como root:
service vncserver restart

Seguridad con VNC:
El protocolo de VNC viaja sin encriptar, lo único que asegura la clave de "vncpasswd", es que no ingresen a su servidor de manera fácil, pero si le hacen fuerza bruta es muy probable que puedan ingresar.
Cualquiera podría ver lo que usted hace, para evitar esto, vamos a encriptar la conexión usando SSH:

ssh -f -L 25903:127.0.0.1:5903 user@server.example.com sleep 10; vncviewer 127.0.0.1:25903:3


* -L 25903:127.0.0.1:5903 forwards our local port 25903 to port 5903 on the remote machine. In other words, it creates the tunnel.
* -f forks the SSH session to the background, while sleep is being executed on the remote machine. This ssh option is needed because we want to execute the following command (vncviewer) in the same local machine’s terminal.
* vncviewer connects to the forwarded local port 25903 in order to connect to the VNC server through the encrypted tunnel.

El comando sleep es la de mayor importancia de la línea entera como ella mantiene el túnel encriptado por 10 segundos. Si la aplicación no se ocupa durante este periodo, entonces el túnel se cierra. Por el contrario, si una aplicación la usa durante el periodo de 10 segundos, entonces el túnel permanece abierto hasta que la aplicación cliente se cierre. De esta manera el túnel es automáticamente cerrado al tiempo que nosotros cerremos la ventana vncviewer, sin dejar ningún proceso SSH corriendo en nuestra estación de trabajo. Esto es pura conveniencia! Más información la pueden encontrar en el artículo de Auto Cerrado de Túneles SSH.

Usando túneles de SSH para conectar a tu servidor de VNC, tiene dos ventajas:

1. La sesión entera es encriptada.
2. Dejando el puerto 5903 abierto en tu máquina remota no se requiere más, ya que todo tiene lugar a través del túnel SSH. Entonces, nadie sabrá que estás corriendo un servidor de VNC en la máquina remota.


Se recomienda leer, ya que de ahí se basa este manual.
# man vncserver
# man Xvnc
# man vncconfig
# man vncviewer
# man ssh


Nota:
esta guía se basa directamente en todo lo escrito en el siguiente enlace, por lo que se recomienda que lea la guía original si sabe inglés.

Fuente: http://www.g-loaded.eu/2005/11/10/configure-vnc-server-in-fedora/

Otra guía con otro servidor la puedes encontrar en español en:
http://linuxalpoder.wordpress.com/2007/11/08/controlar-remotamente-nuestro-linux-con-vnc/


Proyecto:
https://fedoraproject.org/wiki/Features/TigerVNC

No hay comentarios.: