Guacamole Remote Administration Tool Installation on CentOS/RHEL 6

Guacamole Remote Administration Tool Installation on CentOS/RHEL 6

by -
0 1903

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.

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

[[email protected] ~]# rpm -ivh epel-release-6-8.noarch.rpm

Install required package

[[email protected] ~]# 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 

[[email protected] ~]# mkdir guacamole && cd guacamole

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

[[email protected] ~]#tar -xvzf guacamole-server-0.9.5.tar.gz

[[email protected] guacamole]# cd guacamole-server-0.9.5

[[email protected] 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.

[[email protected] guacamole]# make

[[email protected] guacamole]# make install

[[email protected] guacamole]# ldconfig

[[email protected] guacamole]# mkdir /var/lib/guacamole && cd /var/lib/guacamole/

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

[[email protected] guacamole]# ln -s /var/lib/guacamole/guacamole.war /var/lib/tomcat6/webapps

Buid MySQL database for authentication

[[email protected] guacamole]# yum install install mysql mysql-server

[[email protected] guacamole]# mkdir /root/guacamole/sqlauth && cd /root/guacamole/sqlauth

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

[[email protected] sqlauth]# tar -zxf guacamole-auth-mysql-0.9.5.tar.gz

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

[[email protected] sqlauth]# tar -zxf mysql-connector-java-5.1.32.tar.gz

[[email protected] 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/

[[email protected] sqlauth]# mkdir /var/lib/guacamole/classpath/

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

Start MySQL Service

[[email protected] sqlauth]# service mysqld start

Now configure MySQL database

[[email protected] sqlauth]# mysqladmin -u root password NEWPASSWORD

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

[[email protected] 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

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

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

Configure Guacamole

[[email protected] schema]# mkdir /etc/guacamole

[[email protected] schema]# mkdir /usr/share/tomcat6/.guacamole

Make entry in file of Mysql, and guacamole credential

[[email protected] 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

[[email protected] schema]# ln -sf /etc/guacamole/guacamole.properties /usr/share/tomcat6/.guacamole/

[[email protected] schema]# cd /

[[email protected] /]# rm -rf /var/lib/guacamole/classpath/schema

[[email protected] /]# chkconfig tomcat6 on && chkconfig mysqld on && chkconfig guacd on

[[email protected] /]# /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

[[email protected] ~]#yum groupinstall “Development Tools”

Download PDF

CEO, KV IT-Solutions Pvt. Ltd. | [email protected] | 9810028374|
Linux Professional and an Industrial Trainer | 20 + years Experience in IT Industry

” We are born free, No Gate and Windows can snatch our freedom “

SIMILAR ARTICLES

0 1574

0 1206

0 1101

NO COMMENTS

Leave a Reply