This example is one method of setting up a secure VNC session tunneling over SSH. It assumes a VNC server has been installed on the remote system.


SSH into the remote system configure the VNC session and start VNC server


macOS

After the vncserver is running, open the Teminal app in the Applications → Utilities folder

Create a SSH tunnel to remote VNC session using the command:

ssh -L 8888:127.0.0.1:5902 <username>@<servername>.ae.utexas.edu

Select "Connect to Server..." under the Go menu in the Finder. Enter the server name:


Windows

Download and unzip MobaXterm Home Edition (portable edition) 

Open MobaXterm and start local terminal

After the vncserver is running, in MobaXterm select the Session icon to configure the VNC session

Select VNC and enter localhost in the remote hostname and select the port the vncserver was started on like 5902 in the set above

Select SSH gateway (jump host) under the Network settings

In the SSH jump host enter the remote system name and your logon name

Select the Bookmark settings and change the session name from localhost to the remote system name

When you connect (execute) the session, it will first ask for your remote system password, then ask for your vncpasswd