I am playing with remote support tools. There are a lot of good payed tools like TeamViewer, GoToMeeting and others but they are expensive. I found that UltraVNC has some tools like Single Click which can make it easy to provide remote support to your customers. Finally I ended by ChunkVNC which is basically UltraVNC but looking much more better.
There is a lot of tutorials on the Internet but they describe direct connection support. Which means at least one of the PC’s has to be accessible from the outside world. But I wanted to setup some server which I would connect to instead of connecting directly to customer’s PC. This server is called Repeater. UltraVNC has a repeater targeting Windows platform. But I have a Linux server and I wanted it to be running there. Fortunately a Linux port of the UltraVNC Repeater is also available. I have created a mirror of the latest version in case the original page won’t work.
The installation itself is not a big problem even though you have to compile the sources.
- Connect to the server using SSH
- Go to temp: cd /tmp/
- Download the sources: wget http://downloads.stefko.cz/uvncrepeater.tar.gz
- Extract them: tar zxvf uvncrepeater.tar.gz
- Go to the sources directory: cd uvncrepeater/
- Compile the sources: make
- Copy repeater to sbin: cp repeater /usr/sbin/repeater
- Run it: /usr/sbin/repeater
If you want to make it running as a service you can use the following piece of code:
#! /bin/sh
# vnc: start/stop/restart the VNC repeater server
# chkconfig: 3 20 80
# description: VNC repeater server
vnc_start() {
if [ ! -f /etc/uvncrepeater.ini ]; then
echo "File /etc/uvncrepeater.ini does not exist. Aborting."
exit
fi
/usr/sbin/repeater 2>>/var/log/vnc.log &
pgrep repeater >/var/run/vnc.pid
}
vnc_stop() {
killall repeater
rm /var/run/vnc.pid
}
vnc_restart() {
if [ -r /var/run/vnc.pid ]; then
kill `cat /var/run/vnc.pid`
else
echo "Killing repeater in the absence of /var/run/vnc.pid"
killall repeater
fi
sleep 1
vnc_start
}
case "$1" in
'start')
vnc_start
;;
'stop')
vnc_stop
;;
'restart')
vnc_restart
;;
*)
echo "usage $0 start|stop|restart"
esac
Take the code and save it into /etc/init.d/vnc file on the server. Then run the following commands to install it as a service:
- chmod +x /etc/init.d/vnc
- chkconfig –add vnc
- chkconfig –level 3 vnc on