Proxy Capturador de sesiones para VNC

Si bien todos alguna vez usamos vnc tanto para cliente como servidor, poco nos preocupamos por si alguna vez quisiéramos tener aquella sesión alguna vez realizada en la cual pasaba algo importante; Bueno he realizado algunas investigaciones al respecto a las siguientes herramientas:

  • RFBproxy.
  • Vncreflector.
  • Netcat.
  • Vncproxy.
  • Vncspy.
  • Vnc2swf-0.5.0.

 

de todos los casos el mejorcito resulto ser RFBProxy es un proyecto no muy activo pero realmente util en sourgeforge que puede ser utilizado en windows y linux, su función capturar sesiones vnc de los clientes.

Origen ================Proxy================Destino

Lo utilicé con el fin de grabar sesiones de clientes específicos; para ello arme un script que permite a los usuario conectarse al cliente de manera transparente.

iniciar_proxy_server ip ultimas2cifrasDelPuerto

ejemplo

iniciar_proxy_server 192.168.20.2 0

esto indica ip y el puerto que como sabemos siempre es 5900, lo importante es las ultimas 2 cifras(según se requiera para la implementación los puertos pueden ser cambiados sin problemas) como siempre esta escuchando en 5900 por defecto tomamos el 0.

ahora la función iniciar_proxy_server es la siguiente:

 

function iniciar_proxy_server ()

{

#1º Parametro ip del server

#2º Parametro puerto del server

numparms=$#

local j=1

local inc=1

while [ $j -le $numparms ];

do

echo «Server ip $1 puerto $2»

$launcher_proxy $1 $2 $inc &

shift

shift

local j=$[$j+2]

local inc=$[$inc+1]

done

}

 

Lo que hacemos en el script es iterar sobre una lista de parámetros «ip puerto» y correr el proceso de rfbproxy.

Ahora viene la parte de grabar con el proxy de la función launcher_proxy:

nombre_archivo=»windows_$1″ <=maquina windows | linux
ip_server=$1
puerto_server=$2
incremental=$3
puerto_local=$[$puerto_server+$incremental] <= es el puerto local con el cual se conectara el cliente
while true ;do
/usr/bin/rfbproxy -d -v –server=»$ip_server:$puerto_server» :»$puerto_local» –record /srv/sesiones_vnc/»$nombre_archivo»
done

Aquí el proxy comienza a ejecutarse en la ip y puerto del objetivo, cuando le llegue una conexión a la ip del servidor en este caso el proxy en el puerto_local entonces este comenzara a grabar en el directorio /srv.

ejemplo

cliente inicia conexión =>> ipserverproxy 192.168.10.2 =>> objetivo ip = 192.168.10.44:5900

el cliente realiza vncviewer 192.168.10.2:0

siendo 0 el puerto 5900 del proxy enganchado a la pc 192.168.10.44 al puerto remoto 5900; comienza la grabación.

Luego nos podremos ver la sesión grabada con

rfbproxy -v –playback archivograbado -loop

y con un cliente supervisor por llamarlo de alguna manera ejecutar vncviewer 192.168.10.2 para ver el replay del video(también se puede exportar a «avi»).

 

pagina del proyecto:

https://rfbproxy.sourceforge.net/

Posteriormente existe la posibilidad de realizar un deb de la herramienta con los servicios de ejecución, quizás para lihuen :).

 

Un comentario

  1. leonardo dice:

    Que tal agradezco mucho tu aporte ya probe rfbproxy tengo mis scripts de conversion, solo que me atore en algo y no se si lo has probado con equipos que tienen password para coenctarse, mi problema es que cuando ejecuto rfbproxy –server ip:0 –shared –record arhivodesalida.fbs me lanza este mensaje

    rfbproxy compiled without libvncauth: can’t authenticate!
    Error during authentication

    no se como resolverlo he conseguido los archivos libvncauth pero no se que hacer a continuación para incluirlos

Comentarios