Based on Raspbian (Debian Wheezy):
1) become root
sudo su -
2) Install x11vnc:
apt-get update apt-get install x11vnc
3) set password
x11vnc -storepasswd
enter a password of your choice
4) download startup script
cd /etc/init.d/
wget http://www.vk3erw.com/download/vncboot
5) make the startup script executable
chmod 775 /etc/init.d/vncboot
6) install there startup script:
update-rc.d vncboot defaults
7) start vnc
service vncboot start
You will see a few screens of text flicker past before you gte the command prompt. About 12 lines up from the end you should see "The VNC desktop is: raspberypi:0".
VNC is now ready and waiting for a conenction
After a reboot without a HDMI monitor connected you may find the VNC session results in a very small screen. This is due to the default graphics mode on boot.
You can force a larger screen by modifying /boot/config.txt:
sudo nano /boot/config.txt
uncomment and modifying the following lines:
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=58
^O to save, ^X to exit, then reboot the RaPi.