Posteado por: Gabriel en: Agosto 1, 2008
Hola a todos, ya se que hace tiempo no estuve posteando nada, esto se debe principalmente a que no tengo mucho tiempo libre, y el poco tiempo que me estuvo quedando libre estos días después del trabajo lo estuve destinando para interiorizarme en un tema de tesis que me está interesante, además de eso, estuve leyendo libros que me ayuden a plantear mejor mi ante proyecto de tesis, pero de esto hablaré en otra ocasión.
Hoy voy a documentar la configuración de un servidor VNC en Red Hat Enterprise Linux 4
U6 (desde
ahora RHEL), ¿porque no en openSUSE? y porque en openSUSE uso FreeNX y el paquete viene en el mismo DVD de instalación o en los repositorios de la comunidad, sin embargo, no encontré FreeNX para RHEL 4 U6 ni en el disco de instalación ni en la web (la verdad que no busque mucho, admito eso), de igual manera VNC servirá para el mismo fin, aunque prefiero FreeNX =) .
Lo primero que debemos saber es si tenemos instalado el paquete del servicio VNC, en la versión comentada del RHEL el paquete que viene junto con el disco de instalación se llama vnc-server y para saber si está instalado lo podemos probar con el comando rpmquery:
[root@test /]# rpmquery vnc-server
vnc-server-4.0-11.el4
Y si no está instalado el paquete ya sabemos que hay que hacer ¿no?, verificado esto tratamos de arrancar el servicio:
[root@test /]# service vncserver start
Iniciando Servidor VNC: [ OK ]
[root@test /]#
Configuramos con la herramienta system-config-services que cada ves que arranque la máquina ya levante el servicio Vnc:
Luego nos toca preparar las sesiones para poder acceder a ellas remotamente, yo voy a configurar el servicio Vnc para que cuando acceda a la sesión 10 (ip_servidor:10) me conecte al entorno del usuario Gabriel y con la sesión 11 (ip_servidor:11) al entorno del usuario Root. Para habilitar la sesión 10 para el usuarios Gabriel nos tenemos que logear con el mismo, y ejecutar el siguiente comando:
[gabriel@test ~]$ vncserver :10
You will require a password to access your desktops.
Password:
Verify:
New 'test:10 (gabriel)' desktop is test:10
Creating default startup script /home/gabriel/.vnc/xstartup
Starting applications specified in /home/gabriel/.vnc/xstartup
Log file is /home/gabriel/.vnc/test:10.log
[gabriel@test ~]$
Como ven ya nos solicita para crear una contraseña de acceso que nos solicitará cuando tratemos de acceder remotamente, también se creó una carpeta oculta en donde se encuentran varios archivos, uno de los cuales tocaremos más adelante. Para el usuario root repetimos los mismos pasos pero sustituyendo el número de sesión:
[gabriel@oratest ~]$ su - root
Password:
[root@oratest ~]# vncserver :11
You will require a password to access your desktops.
Password:
Verify:
New 'test:11 (root)' desktop is test:11
Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/test:11.log
[root@test ~]#
Luego de hacer esto ya podemos conectarnos desde nuestros clientes Vnc pero nos aparecerá un escritorio muy sencillo, si nos sirve así lo dejamos pero si queremos que aparezca el mismo escritorio que usamos de forma local (gnome, kde, etc), tenemos que realizar unas pequeñas modificaciones en el archivo xstartup que se encuentra en el directorio .vnc del HOME de cada usuario, editamos el archivo y lo modificamos para que quede como sigue:
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
#[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
#[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
#xsetroot -solid grey
#vncconfig -iconic &
#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &
Solo dejamos esas dos líneas activas y las demás las comentamos todas con el carácter “#”, si estas 2 lineas no existen las escribimos nosotros nomas, para que esta configuración tenga efecto tenemos que finalizar la ejecución del servicio Vnc que está corriendo para esta sesión (hay un proceso por cada usuario que tenga una sesión vnc) y volver a iniciar la sesión:
[gabriel@test ~]$ vncserver -kill :10
Killing Xvnc process ID 25691
[gabriel@test ~]$ vncserver :10
New 'test:10 (gabriel)' desktop is test:10
Starting applications specified in /home/gabriel/.vnc/xstartup
Log file is /home/gabriel/.vnc/test:10.log
[gabriel@test ~]$
El mismo paso tengo que realizar con el usuario root (para mi caso) si quiero cambiar el tipo de escritorio, en mi caso lo dejaré como se generó por defecto.
Así como está todo, cuando reiniciemos la máquina las sesiones de VNC no volverán a estar activas por cada usuario, si queremos que se activen durante el arranque de sistema debemos modificar el archivo /etc/sysconfig/vncservers agregando al final lo siguiente:
VNCSERVERS="10:gabriel 11:root"
de esta forma, la próxima ves que reiniciemos el equipo las sesiones ya estarán listas para ser accedidas.
Detalles a tener en cuenta:
[gabriel@oratest ~]$ vncpasswd
Password:
Verify:
[gabriel@oratest ~]$Algunas Capturas:
Excelente, tengo un servidor con red hat enterprise y me sirvió a la perfección =)
Hola como estas gracias por tu informacion me ha servido de mucho, tengo un pequeño problema segui paso a paso y todo salio como nos muestras, pero al momento de conectarme desde una pc no me deja que crees q este sucediendo
he usado real vnc y tightvnc, y no he podido conectarmeque crees que pueda pasar.
Saludos
Marcos
Hola Gabriel, cheque lo que me dijiste y tengo el mismo problema crees que sea que esten por ahi bloqueado los puertos?
Saludos
Hola Gabriel,
Un articulo muy bueno la verdad, me ha sido de gran ayuda, muchas gracias por tu ayuda…. Yo soy administrador de sistemas y vmware certified asi que si necesitas cualquier ayuda en sistemas no dudes en consultarmelo, te debo una…
Muy Gabriel por dar esos tips concisos y precisos, mira yo tengo en la informatica mucho tiempo… Cualquier ayuda que necesites por favor no dudes en preguntarme. Yo soy Profesor de Servidores como Linux, Server 2003 y otros sistemas operativos… Gracias…
Agosto 14, 2008 a 8:25 pm
Que tal Gabriel
Gracias por la info, tengo este detalle ya puedo conectarme a mi Linux desde mi Windows pero quisiera saber como acceder al escritorio actual de mi Servidor o como cambiarme de la sesion:11 a la :0 desde linux, para poder ver lo que actualmente esta en el servidor.
De ante mano Gracias