[...]
I made a script called sshvnc which uses ssh to query existing
sessions on the remote host, set up tunnels, and run a viewer for the
first VNC session found. It can optionally also create a new session.
With this script, if you can say 'ssh user@host', you can also say
'sshvnc user@host'. I recommend setting up key-based authentication for
SSH, however. (That's achieved by 'ssh-keygen -t dsa; ssh-copy-id
user@host'.) (See [SSH features everyone should use] about
that.)
[...]