Guacamole Remote Administration Tool Installation on CentOS/RHEL 6

Guacamole Remote Administration Tool Installation on CentOS/RHEL 6

by -
0 1251

Guacamole Remote Administration Tool Installation on CentOS/RHEL 6

This article explain about an awesome Remote Administration tool called Guacamole  which will help you to fulfill your daily needs for accessing system on remote freely from outer network . You will need to configure this server on gateway /Public ip address or can set forwarding to reach from outer network.

What is Guacamole ?

The Guacamole is a remote administration tool based on HTML5. It provides remote access to systems through a web browser. There are no plugins or software required on client machine that’s the biggest advantage of this tool in industrial environment.

Guacamole features

Can access Microsoft Windows through RDP, VNC & Telnet
Can access Linux system through VNC, SSH & Telnet

Server Information

Operating System: CentOS 6.5 basic installation
IP Address: 192.168.0.65
Selinux : Disabled

Installation Step

Before starting installation, need to install EPEL repository on server. Install EPEL as per your server architecture.

[root@guacamole ~]# wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

[root@guacamole ~]# rpm -ivh epel-release-6-8.noarch.rpm

Install required package

[root@guacamole ~]# yum  install libvncserver freerdp libvorbis libguac libguac-client-vnc libguac-client-rdp libguac-client-ssh cairo-devel pango-devel libvorbis-devel openssl-devel libssh-devel pulseaudio-libs-devel libvncserver-devel java-1.7.0-openjdk.x86_64  freerdp-devel uuid-devel libssh2-devel libtelnet libtelnet-devel tomcat6 tomcat6-webapps tomcat6-admin-webapps –y

Install server package and compile 

[root@guacamole ~]# mkdir guacamole && cd guacamole

[root@guacamole ~]# wget http://sourceforge.net/projects/guacamole/files/current/source/guacamole-server-0.9.5.tar.gz

[root@guacamole ~]#tar -xvzf guacamole-server-0.9.5.tar.gz

[root@guacamole guacamole]# cd guacamole-server-0.9.5

[root@guacamole guacamole]# ./configure –with-init-dir=/etc/init.d

Output of last line:
————————————————
guacamole-server version 0.9.5
————————————————

Library status:

freerdp …………. yes
pango …………… yes
libssh2 …………. yes
libssl ………….. yes
libtelnet ……….. yes
libVNCServer …….. yes
libvorbis ……….. yes
libpulse ………… yes

Protocol support:

RDP ……. yes
SSH ……. yes
Telnet …. yes
VNC ……. yes

Init scripts: /etc/init.d

Type “make” to compile guacamole-server.

[root@guacamole guacamole]# make

[root@guacamole guacamole]# make install

[root@guacamole guacamole]# ldconfig

[root@guacamole guacamole]# mkdir /var/lib/guacamole && cd /var/lib/guacamole/

[root@guacamole guacamole]# wget http://sourceforge.net/projects/guacamole/files/current/binary/guacamole-0.9.5.war -O guacamole.war

[root@guacamole guacamole]# ln -s /var/lib/guacamole/guacamole.war /var/lib/tomcat6/webapps

Buid MySQL database for authentication

[root@guacamole guacamole]# yum install install mysql mysql-server

[root@guacamole guacamole]# mkdir /root/guacamole/sqlauth && cd /root/guacamole/sqlauth

[root@guacamole sqlauth]# wget http://sourceforge.net/projects/guacamole/files/current/extensions/guacamole-auth-mysql-0.9.5.tar.gz

[root@guacamole sqlauth]# tar -zxf guacamole-auth-mysql-0.9.5.tar.gz

[root@guacamole sqlauth]# wget http://dev.mysql.com/get/Downloads/Connector/j/mysql-connector-java-5.1.32.tar.gz

[root@guacamole sqlauth]# tar -zxf mysql-connector-java-5.1.32.tar.gz

[root@guacamole sqlauth]# mv mysql-connector-java-5.1.32/mysql-connector-java-5.1.32-bin.jar /root/guacamole/sqlauth/guacamole-auth-mysql-0.9.5/lib/

[root@guacamole sqlauth]# mkdir /var/lib/guacamole/classpath/

[root@guacamole sqlauth]# cp /root/guacamole/sqlauth/guacamole-auth-mysql-0.9.5/lib/* /var/lib/guacamole/classpath/

Start MySQL Service

[root@guacamole sqlauth]# service mysqld start

Now configure MySQL database

[root@guacamole sqlauth]# mysqladmin -u root password NEWPASSWORD

Login in database, create database, user and provide privilege to user for database

[root@guacamole sqlauth]# mysql -u root –p

mysql> create database guacamole;

mysql> create user ‘guacamole’@’localhost’ identified by ‘PASSWORD’;

mysql> grant select,insert,update,delete on guacamole.* to ‘guacamole’@’localhost’;

mysql> flush privileges;

mysql> \q

Now, import database

[root@guacamole sqlauth]#cd /root/guacamole/sqlauth/guacamole-auth-mysql-0.9.5/schema/

[root@guacamole schema]# cat ./*.sql | mysql -u root -p guacamole

Configure Guacamole

[root@guacamole schema]# mkdir /etc/guacamole

[root@guacamole schema]# mkdir /usr/share/tomcat6/.guacamole

Make entry in file of Mysql, and guacamole credential

[root@guacamole schema]# vi /etc/guacamole/guacamole.properties

# Hostname and port of guacamole proxy

guacd-hostname: localhost

guacd-port:     4822

# Location to read extra .jar’s from

lib-directory:  /var/lib/guacamole/classpath

# Authentication provider class

auth-provider: net.sourceforge.guacamole.net.auth.mysql.MySQLAuthenticationProvider

# MySQL properties

mysql-hostname: localhost

mysql-port: 3306

mysql-database: guacamole

mysql-username: guacamole

mysql-password: guacDBPass

Note: where guacamole default port  is 4822, mysql db name: guacamole, username: guacamole & password: redhat(change with yours)

Create softlink for guacamole config

[root@guacamole schema]# ln -sf /etc/guacamole/guacamole.properties /usr/share/tomcat6/.guacamole/

[root@guacamole schema]# cd /

[root@guacamole /]# rm -rf /var/lib/guacamole/classpath/schema

[root@guacamole /]# chkconfig tomcat6 on && chkconfig mysqld on && chkconfig guacd on

[root@guacamole /]# /etc/init.d/tomcat6 restart && /etc/init.d/mysqld restart && /etc/init.d/guacd restart

Test apache tomcat and access Guacamole page

Open browser with http://server-ip-address:8080/

Access guacamole login page

Username: guacadmin

Password: guacadmin

URL: http://server-ip-address:8080/guacamole

Guacamol Login Page 

guacamole-login1

Guacamole Home page

homepage2

Installation part has been completed.

Create new connection (Remote Access) using RDP

To add host, Click on New connection option on Home page .

connection3

connection4

Access Windows host through Guacamole from web

Click on establish connection of Windows-PC

session-1

Windows Remote Sesstion

session-2

Troubleshooting

error no acceptable c compiler found in $path see config.log’ for more details

[root@guacamole ~]#yum groupinstall “Development Tools”

Download PDF

NO COMMENTS

Leave a Reply

Required Captcha *