ML
    • Recent
    • Categories
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Do you use Guacamole?

    Scheduled Pinned Locked Moved IT Discussion
    guacamole
    14 Posts 7 Posters 4.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      Alex Sage @NashBrydges
      last edited by

      @nashbrydges Great Topic. I look forward to watching this 🙂

      1 Reply Last reply Reply Quote 0
      • FATeknollogeeF
        FATeknollogee @NashBrydges
        last edited by

        @nashbrydges I'm interested. You have any how-to-install notes?

        NashBrydgesN 1 Reply Last reply Reply Quote 0
        • scottalanmillerS
          scottalanmiller
          last edited by

          It's part of the Apache project, SSL security is very good. It's basically a very secure VPN. I'd be no more concerned than with SSH, same level of security.

          1 Reply Last reply Reply Quote 2
          • CloudKnightC
            CloudKnight
            last edited by

            Its very good, I have installed and used many times, would be nice to have a feature to limit the amount of login attempts or google Captcha.

            NashBrydgesN 1 Reply Last reply Reply Quote 0
            • NashBrydgesN
              NashBrydges @FATeknollogee
              last edited by

              @fateknollogee said in Do you use Guacamole?:

              @nashbrydges I'm interested. You have any how-to-install notes?

              I can't take any credit for these but I used the install script here with a fresh Ubuntu 17.04 install and it worked flawlessly.

              https://www.chasewright.com/guacamole-with-mysql-on-ubuntu/

              He also has one for a CentOS7 install somewhere on his site.

              My Nginx proxy runs on a separate VM but the conf file for that looks like this.

              server {
                 listen 80;
                 server_name mydomain.ca;
                 return 301 https://$server_name$request_uri;
              }
              
              server {
                listen 443 ssl http2;
                server_name mydomain.ca;
                
                add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
                add_header X-XSS-Protection "1; mode=block";
                add_header X-Content-Type-Options nosniff;
                add_header Referrer-Policy strict-origin;
                #Had to comment out the line below as the CSP policy broke functionality.
                #add_header Content-Security-Policy "default-src https: data: 'unsafe-inline' 'unsafe-eval'" always;
                ssl_stapling on;
                ssl_stapling_verify on;
                server_tokens off;
              
                ssl on;
                ssl_certificate /etc/letsencrypt/live/mydomain.ca/fullchain.pem;
                ssl_certificate_key /etc/letsencrypt/live/mydomain.ca/privkey.pem;
                ssl_session_timeout 5m;
                ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
                ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
                ssl_prefer_server_ciphers on;
                ssl_session_cache shared:SSL:10m;
                ssl_dhparam /etc/ssl/certs/dhparam.pem;
                proxy_cookie_path / "/; secure; HttpOnly";
              
              
                  location / {
                      proxy_set_header X-Real-IP $remote_addr;
                      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                      proxy_set_header Host $http_host;
                      proxy_set_header X-NginX-Proxy true;
                      proxy_pass http://192.168.100.79:8080/guacamole/;
                     #The line below is required because Guacamole is essentially streaming so buffering would get in the way
                      proxy_buffering off;
                      proxy_redirect off;
                      access_log off;
                      proxy_cookie_path / "/; secure; HttpOnly";
              
                      # Socket.IO Support
                      proxy_http_version 1.1;
                      proxy_set_header Upgrade $http_upgrade;
                      proxy_set_header Connection "upgrade";
                 }
                 
              }
              
              

              One additional note that took some Googling. If you're going to remote into a Win 10 desktop, you not only need to disable the NLA checkbox but you also need the following registry change.

              [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]

              Change the value from a 2 to a 1 for the following key

              "SecurityLayer”=dword:00000001

              So far it seems exceptionally smooth and way better than using my Sophos XG HTML5 RDP function. Not to mention I can run all of it through the proxy and manage SSL via Nginx which I can't do through Sophos XG.

              1 Reply Last reply Reply Quote 2
              • NashBrydgesN
                NashBrydges @CloudKnight
                last edited by

                @stuartjordan said in Do you use Guacamole?:

                Its very good, I have installed and used many times, would be nice to have a feature to limit the amount of login attempts or google Captcha.

                I wrote a custom Fail2ban block script for a web app I had designed for a friend. Do you know where the access logs would be stored for Guac? I might be able to create something similar to use Fail2ban for.

                1 Reply Last reply Reply Quote 1
                • travisdh1T
                  travisdh1
                  last edited by

                  fail2ban can handle it, tho some issues with rule matching happens according to the Google search I just did. https://www.jimwilbur.com/2016/08/fail2ban_guacamole/

                  NashBrydgesN 2 Replies Last reply Reply Quote 3
                  • NashBrydgesN
                    NashBrydges @travisdh1
                    last edited by

                    @travisdh1 Sweet! Gonna have to give this a try.

                    1 Reply Last reply Reply Quote 0
                    • dbeatoD
                      dbeato
                      last edited by

                      @nashbrydges said in Do you use Guacamole?:

                      as ever heard of any security holes or issues with Guacamole that

                      So far two vulnerabilities
                      https://www.cvedetails.com/product/23320/Guac-dev-Guacamole.html?vendor_id=12346

                      I would use it with SSL and make sure there is a firewall before it or HTTPS Proxy.

                      travisdh1T 1 Reply Last reply Reply Quote 1
                      • travisdh1T
                        travisdh1 @dbeato
                        last edited by

                        @dbeato said in Do you use Guacamole?:

                        @nashbrydges said in Do you use Guacamole?:

                        as ever heard of any security holes or issues with Guacamole that

                        So far two vulnerabilities
                        https://www.cvedetails.com/product/23320/Guac-dev-Guacamole.html?vendor_id=12346

                        I would use it with SSL and make sure there is a firewall before it or HTTPS Proxy.

                        Well, SSL should be standard. Certbot is your friend, ssl all the things!

                        1 Reply Last reply Reply Quote 2
                        • NashBrydgesN
                          NashBrydges @travisdh1
                          last edited by

                          @travisdh1 said in Do you use Guacamole?:

                          fail2ban can handle it, tho some issues with rule matching happens according to the Google search I just did. https://www.jimwilbur.com/2016/08/fail2ban_guacamole/

                          Fail2ban now appears to be blocking failed attempts.

                          Using your link, I noticed catalina.out wasn't capturing failed logins so I created a blank file at /etc/rsyslog.d/tomcat.conf and then restarted rsyslog.

                          The regex wasn't working and the link didn't have the proper regex to use so a little search brought me here.
                          https://www.cb-net.co.uk/linux/debian-8-6-proxy-guacamole-via-nginx-using-https-and-fail2ban/

                          About 3/4 of the way down, the correct regex is shown as follows.
                          failregex = \bAuthentication attempt from \[<HOST>(?:,.*)?\] for user ".*" failed\.

                          Restarted Fail2ban confirmed that the regex would work
                          fail2ban-regex '/var/log/tomcat8/catalina.out' /etc/fail2ban/filter.d/guacamole.conf

                          I tried to login using an incorrect user/pwd combo. Sure enough, the outcome was this (masked IP address).

                          nashbrydges@guacamole:~$ sudo fail2ban-client status guacamole
                          Status for the jail: guacamole
                          |- Filter
                          |  |- Currently failed: 1
                          |  |- Total failed:     13
                          |  `- File list:        /var/log/tomcat8/catalina.out
                          `- Actions
                             |- Currently banned: 1
                             |- Total banned:     2
                             `- Banned IP list:   xxx.xxx.xxx.135
                          
                          travisdh1T CloudKnightC 2 Replies Last reply Reply Quote 2
                          • travisdh1T
                            travisdh1 @NashBrydges
                            last edited by

                            @nashbrydges Thanks for the confirmation that it works right!

                            1 Reply Last reply Reply Quote 0
                            • CloudKnightC
                              CloudKnight @NashBrydges
                              last edited by

                              @nashbrydges Thanks for posting this nash, will have to try this with fail2ban.

                              If anyone is interested there is a nice bash script for getting Guacamole installed:
                              https://sourceforge.net/projects/guacamoleinstallscript/

                              1 Reply Last reply Reply Quote 0
                              • 1 / 1
                              • First post
                                Last post