Elegant solution for remotely accessible vnc desktops

I wanted to give windows users in my network quick access to a linux graphical desktop. I chose the vnc protocol, because there are many good and open source implementations (notably tightvnc which comes with in a portable version).

Features

  • vnc terminal server, which can handle any number of clients
  • minimal setup for users
  • different resolutions chosen by the vnc port that the client connects to

Client setup

  • From the local network: Almost none, clients connect to vnc ports 5951, 5952 etc. depending on the resolution they want.
    vncviewer -encodings tight ::5952
  • From remote, using ssh:
    • Create a port forward from 590x to 595x on the server
    • Connect your vnc client to localhost:595x
      Example:
      ssh yourserver.tld -L localhost:5902:localhost:5952
      vncviewer -encodings tight ::5902

Server setup:

Add custom services to your /etc/services file, so that your inetd.conf can use them:

# Local services                                                                           
custom-vnc 5951/tcp                                                                        
custom-vncc 5952/tcp                                                                       
custom-vnccc 5953/tcp                                                                      
custom-vncccc 5954/tcp   

Add one line per resolution you want to your inetd.conf. Add more resolutions at your taste. Of course, geometry should match the screen size of your clients.

#custom-vnc stream tcp nowait nobody /usr/bin/Xvnc Xvnc :8 -inetd -query localhost -once -geometry 1280x1024 -depth 24 -ac                                                            
custom-vnc stream tcp nowait nobody /usr/bin/Xvnc Xvnc :8 -inetd -query localhost -once -geometry 1024x768 -depth 24 -ac                                                              
custom-vncc stream tcp nowait nobody /usr/bin/Xvnc Xvnc :8 -inetd -query localhost -once -geometry 1280x1024 -depth 24 -ac                                                            
custom-vnccc stream tcp nowait nobody /usr/bin/Xvnc Xvnc :8 -inetd -query localhost -once -geometry 1680x1024 -depth 24 -ac

Ref: http://linuxreviews.org/howtos/xvnc/#toc3

Discussion

Enter your comment
If you can't read the letters on the image, download this .wav file to get them read to you.
 
blog/elegant_solution_for_remotely_accessible_vnc_desktops.txt · Last modified: 2011/11/11 08:06 by brb
Back to top
chimeric.de = chi`s home Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0