Кажется, тут ходят рядом с работающим вариантом. :)
У меня работает таким образом. Сначала по ssh в консоли настраиваем на удаленной машине настраиваем x11vnc. Как я понял, с этим справились. А теперь пробрасываем display :0 удаленного компа (иксы там, естественно, должны быть запущены) на локальный display :1 , и уже к нему будем цепляться с помощью vncviewer.
Итак, цепляемся к удаленной машине через ssh с запуском там x11vnc и пробросом иксов (скорректировать значения значения переменных $RemoteUser, $SSHPort, $RemoteIP под свою ситуацию):
ssh -C -t -l $RemoteUser -p $SSHPort -L 5901:localhost:5900 $RemoteIP 'x11vnc -localhost -noxdamage -rfbauth .vnc/passwd -display :0'
И запускаем локально vncviewer:
vncviewer localhost:1