Sometimes you’d like to connect not only via SSH to some machines but via GUI but you can’t because sime firewall restrict connections others than http(s) (80/443).
So Guacamole is what you are looking for, quote from their homepage:
Guacamole is an HTML5 web application that provides access to desktop environments using remote desktop protocols such as VNC or RDP. A centralized server acts as a tunnel and proxy, allowing access to multiple desktops through a web browser. No plugins are needed: the client requires nothing more than a web browser supporting HTML5 and AJAX.