How To Setup Apache Guacamole On Ubuntu 20.04 LTS
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Apache Guacamole is a clientless HTML5 web based remote desktop gateway which provides remote access to servers and desktops through a web browser. It supports standard protocols like VNC, RDP, and SSH.
Offcial Website -https://guacamole.apache.org/
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Os : Ubuntu 20.04 LTS (focal fossa) 64Bit | Hostname: www.yourdomain.com | IP Address of Server:192.168.1.10
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lsb_release -cd ; getconf LONG_BIT ; hostname ; hostname -I
apt install -y gcc g++ libcairo2-dev libjpeg-turbo8-dev libpng-dev libtool-bin libossp-uuid-dev libavcodec-dev libavutil-dev libswscale-dev freerdp2-dev libpango1.0-dev libssh2-1-dev libvncserver-dev libtelnet-dev libssl-dev libvorbis-dev libwebp-dev build-essential net-tools curl git software-properties-common tomcat9 tomcat9-admin tomcat9-common tomcat9-user
wget https://downloads.apache.org/guacamole/1.1.0/source/guacamole-server-1.1.0.tar.gz
tar xzf guacamole-server-1.1.0.tar.gz ; cd guacamole-server-1.1.0 ;
./configure --with-init-dir=/etc/init.d
make
make install
ldconfig
systemctl enable guacd ; systemctl start guacd ; systemctl status guacd
mkdir /etc/guacamole
wget https://downloads.apache.org/guacamole/1.1.0/binary/guacamole-1.1.0.war -O /etc/guacamole/guacamole.war
ln -s /etc/guacamole/guacamole.war /var/lib/tomcat9/webapps/
systemctl restart tomcat9 ; systemctl restart guacd
mkdir /etc/guacamole/{extensions,lib} ; echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/tomcat9
nano /etc/guacamole/guacamole.properties
guacd-hostname: localhost
guacd-port: 4822
user-mapping: /etc/guacamole/user-mapping.xml
auth-provider: net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider
ln -s /etc/guacamole /usr/share/tomcat9/.guacamole
echo -n password | openssl md5
nano /etc/guacamole/user-mapping.xml
<user-mapping>
<!-- Per-user authentication and config information -->
<!-- A user using md5 to hash the password
guacadmin user and its md5 hashed password below is used to
login to Guacamole Web UI-->
<authorize
username="guacadmin"
password="5f4dcc3b5aa765d61d8327deb882cf99"
encoding="md5">
<!-- First authorized Remote connection -->
<connection name="ubuntu">
<protocol>ssh</protocol>
<param name="hostname">192.168.1.10</param>
<param name="port">22</param>
</connection>
<!-- Second authorized remote connection -->
<connection name="Windows 10">
<protocol>rdp</protocol>
<param name="hostname">192.168.1.100</param>
<param name="port">3389</param>
<param name="ignore-cert">true</param>
</connection>
</authorize>
</user-mapping>
systemctl restart tomcat9 guacd
http://192.168.1.10:8080/guacamole/.
apt -y install openssh-server
nano /etc/ssh/sshd_config [ PermitRootLogin no ]
systemctl restart ssh
Example-
User-guacadmin Password -password
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
I tried 16.04 with 0.9.9. I tried 18.04 with 0.9.9, 1.0, 1.1 and they all had issues (couldn't log in, couldn't display, etc...)
ReplyDeleteYour instructions were concise and got everything up and running in about 30 minutes including install of ubuntu. Thank you!
i think it has to be focal fossa
DeleteThank you so much for the video, but i don't know the default password for admin access to http://IP:8080/guacamole/#/ ?
ReplyDeleteit's password
DeleteWorked the very first time on Ubuntu 20. I wish I would have found your page 3 days ago. Would of saved me a lot of time. Thank you!!
ReplyDeleteIt worked fine, thank you but question ...
ReplyDeletehow can i access it with just http://10.100.100.231:8080/. instead of http://10.100.100.231:8080/guacamole/
so i can map it to my nginx reverse proxy
also where would i add this line "proxy_buffering off;" , so its smooth over WAN , as it lags
also the settings are greyed out , any idea? so i can create users and add connections over GUI ( just like how we can do it if it was installed docker )
ReplyDeleteI get "invalid login" and came across this video trying to fix. These are the same directions I have followed and tried everything in the last 20 forum posts I have found. Something is causing it to not use my username and MD% has'ed password in the file. Any ideas? I have stepped through the setup instructions on 5-6 tutorials now and have followed them to a T and cannot login for the life of me.
ReplyDeleteWhat if you do not use the user-map.xml but want to use the database to manage connections?
ReplyDeletewe use login as ubuntu and what is the password we need to give to connect to that ubuntu server
ReplyDelete