Ir al contenido principal

VNC Virtual Networking Computer en CentOS 5

VNC significa Virtual Network Computing. Es un software de control remoto que le permite ver e interactuar con un ordenador (el "servidor"), utilizando un simple programa (el "espectador") en otro equipo en cualquier lugar en Internet. Los dos equipos ni siquiera tienen que ser del mismo tipo, de modo de ejemplo, puede usar VNC para ver una oficina de Linux en su máquina Windows en casa. VNC es libre y está a disposición del público y generalizado en el uso activo por millones en toda la industria, la academia y el sector privado.



Requisitos
VNC Server http://www.realvnc.com/

Instalación en Linux Centos
Verificamos si nuestro equipo cuenta con vnc viewer y vnc server instalado.

$ rpm -qa|grep vnc


Como podemos observar en la imagen, mi equipo cuenta con los rpm instalados,
si fuera necesario la instalación. podriamos ejecutar el siguiente comando.

$ yum -y install vnc vnc-server



Una vez instalado lo Rpms tenemos que configurar una session para la conexion con un usuario.
para esto tenemos que modificar el siguiente archivo.

$ vi /etc/sysconfig/vncservers



Ahora podemos configurar N sesiones y a cada sesion le podemos dar una configuración de resolución de escritorio diferente.

Antes de comenzar vncserver como un servicio, vamos a crear una contraseña con vnc usando el comando vncpasswd, el cual crea un directorio oculto .Vnc dentro del directorio home de la cuenta con el archivo passwd que contiene su contraseña VNC.

$ vncpasswd



Ahora vamos a arrancar vncserver como un servicio.



Editemos el script llamado XSTARTUP,Descomente las dos líneas siguientes

unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc

como se muestra a continuación! De lo contrario, recibirá nada más que gris pantalla cuando se conecte por vncviewer.

$ vi ~/.vnc/xstartup




Ahora vamos a reiniciar el servicio para que cargue la modificacion del script xstartup.

$ sudo /sbin/service vncserver start




para hacer pruebas de conexion con vncviewer podemos usar el siguiente comando.

$ vncviewer localhost:5901


Para conectarse a un sistema remoto con el servicio de Firewall activado, el puerto 5801 y 5901 debe ser abierto.
Añadir siguiente líneas negras para abrir el puerto 5801 y5901.

$ sudo vi /etc/sysconfig/iptables


# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5801 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT


luego hay que reiniciar el servicio de iptables.

$ sudo /sbin/service iptables restart


Tips
Si necesitas habilitar 2 sessiones en vnc?
VNCSERVERS="1:root 2:atorres"


Usted, por supuesto, tienes que ejecutar vncpasswd para los usuarios. También en su actualización de seguridad, puede que desee aclarar que VNC utiliza el puerto 5901 para la conexión 1. usted tendría que tener los puertos 5901 y 5902 abierto para la conexión 2.

Si quisieramos conectarnos a una pc remotamente con vnc?

$ vncviewer 172.16.0.200:5901


Cuando necesites bajar una sesion?

$ vncserver -kill :1
#Killing Xvnc process ID 13728


ahora es común no tener el vncviewer instalado de donde quisieramos conectarnos, bueno simple y sencillo podemos conectarnos por el navegador web apuntando
a la dirección ip y al puerto 5801; es por esto que en el iptables abrimos el puerto 5801.
http://172.16.0.180:5801



Como podemos observar se apertura una ventana indicandonos la direccion ip del servidor vnc y el número de sesión o conexión a la ingresaremos.


nos hace una solicitud del password vnc del usuario de la sesión 1 que en mi caso es el root.


y listo esta es la forma de como poder conectarnos por la consola web a nuestro servidor usando vnc .

Comentarios

Entradas más populares de este blog

JSP y MySQL Conexion a Base de Datos

Tema anterior: http://superahacker.blogspot.com/2009/06/instalacion-netbeans-glassfish.html El modulo JSP con conexion a una base de datos MySQL, tiene las siguientes caracteristicas usar una clase Java llamada "Customers" que se encuentra en un package llamado "Mypackage" , para usar sus metodos y con ellos llevar acabo una consulta.

JSP y MsSQL Conexion a Base de Datos

Tema anterior: http://superahacker.blogspot.com/2009/09/jsp-y-mysql-conexion-base-de-datos.html El modulo JSP con conexion a una base de datos Ms SQL Server, tiene las siguientes caracteristicas usar una clase Java llamada "Customers" que se encuentra en un package llamado "Mypackage" , para usar sus metodos y con ellos llevar acabo una consulta.

FreeTDS para el acceso a MsSQL desde PHP en Linux CentOS 5

Tema Anterior: http://superahacker.blogspot.com/2009/04/instalacion-de-unixodbc-para-la.html En esta ocasion la situación es como conectar con PHP 5 desde un Servidor Linux a una base de Datos Ms Sql Server en Servidor Windows.