User Tools

Site Tools


software:guacamole

Guacamole

Guacamole is a great webapp to use an HTML5 enabled browser as RDP/VNC client

nginx as reverse proxy for tomcat8

server {
        listen 8443 ssl spdy;

        ssl on;
        ssl_certificate /etc/nginx/ssl/nginx.crt;
        ssl_certificate_key /etc/nginx/ssl/nginx.key;
        ssl_session_cache shared:SSL:10m;
        ssl_ciphers 'AES256+EECDH:AES256+EDH:!aNULL';
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_stapling on;
        ssl_stapling_verify on;
        ssl_prefer_server_ciphers on;

        # Found below settings to be performing best but it will work with your own
        tcp_nodelay    on;
        tcp_nopush     off;
        sendfile       on;
        client_body_buffer_size 10K;
        client_header_buffer_size 1k;
        client_max_body_size 8m;
        large_client_header_buffers 2 1k;
        client_body_timeout 12;
        client_header_timeout 12;
        keepalive_timeout 15;
        send_timeout 10;

        # HINT: You might want to enable access_log during the testing!
        access_log off;

        # Don't turn ON proxy_buffering!; this will impact the line quality
        proxy_buffering off;
        proxy_redirect  off;

        # Enabling websockets using the first 3 lines; Check /var/log/tomcat8/catalina.out while testing; guacamole will show you a fallback message if websockets fail to work.
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        # Just something that was advised by someone from the dev team; worked fine without it too.
        proxy_cookie_path /guacamole/ /;

        location / {
                # I am running the Tomcat8 and Guacamole on the local server
                proxy_pass http://localhost:8080;
                break;
        }
}
software/guacamole.txt · Last modified: 2015/02/06 17:49 by Michele Porelli