Connexion avec Guacamole en HLM5- Partie 1

Niveau:3

Introduction:

Guacamole est une passerelle de bureau à distance sans aucun plugins ou logiciel client. Il utilise la technologie HTML5 Donc pour accéder à vos postes de travail  il vous suffit d’un navigateur Web. Il prend en charge les protocoles standards tels que VNC, RDP et SSH.
guacamole_1
Dans ce chapitre, nous allons installer Guacamole sur un Raspberry et y accéder via les protocoles VNC,RDP et SSH. Bien sur vous pouvez accéder à d’autre machine de votre réseau local.

Installation de Guacamole:

Prés-requis:

Distribution Raspbian Jessie avec une connexion réseau.

Tester avec la version Pixel.

Installation des protocoles VNC et RDP:

Je vais faire assez court car ces sujets sont déjà traités sur mon site.
Pour le protocole RDP taper la commande suivante:
sudo apt-get update
sudo apt-get install xrdp -y
Pour le protocole VNC taper la commande suivante:
sudo apt-get install tightvncserver -y
tightvncserver
Entrer votre mot de passe dans mon cas « motdepasse »
Le mot de passe pris en compte sera « motdepas » c’est pas très grave car il est tronqué automatiquement.

Installation de Guacamole:

Installation des dépendances et des bibliothèques.

Taper les commandes suivantes:
sudo apt-get install apt-transport-https -y
sudo apt-get install libcairo2-dev libjpeg62-turbo-dev libpng12-dev libossp-uuid-dev libfreerdp-dev libpango1.0-dev libssh2-1-dev libvncserver-dev libpulse-dev libssl-dev libvorbis-dev libwebp-dev -y

Installation du serveur.

Téléchargement du fichier source.

wget --user-agent="Mozilla" "http://apache.org/dyn/closer.cgi?action=download&filename=incubator/guacamole/0.9.12-incubating/source/guacamole-server-0.9.12-incubating.tar.gz" -O guacamole-server-0.9.12-incubating.tar.gz

Décompression du fichier.
tar zxf  guacamole-server-0.9.12-incubating.tar.gz

Aller dans le répertoire de décompression afin d’effectuer l’installation.
cd guacamole-server-0.9.12-incubating 

Configuration de Guacamole pour la compilation et l’installation.

./configure --with-init-dir=/etc/init.d

guacamole_2

Ensuite taper les commandes:
make
sudo make install
sudo ldconfig

Installation de Tomcat8.

sudo apt-get install tomcat8 -y

Faire un test en tapant l’adresse IP de votre Raspberry et le port 8080.

guacamole_3

Installation du client Guacamole.

Téléchargement du fichier source.

Taper les commandes suivantes:

cd

 wget --user-agent="Mozilla" "http://apache.org/dyn/closer.cgi?action=download&filename=incubator/guacamole/0.9.12-incubating/binary/guacamole-0.9.12-incubating.war" -O guacamole-0.9.12-incubating.war

mv guacamole-0.9.12-incubating.war guacamole.war

Installation du client sur le serveur web.
sudo cp guacamole.war /var/lib/tomcat8/webapps

Faire un test en tapant l’adresse IP de votre Raspberry et le port 8080/guacamole/.

guacamole_4

guacamole_5

Si la page n’apparaît pas de suite, rafraîchir la page.

Configuration du client.

Création des répertoires:

sudo mkdir /etc/guacamole
sudo mkdir /usr/share/tomcat8/.guacamole

Edition du fichier de configuration.

sudo 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
basic-user-mapping: /etc/guacamole/user-mapping.xml

guacamole_6

Faire un crtl+X et sauvegarder en répondant y.

Création du lien symbolique pour le fichier de configuration.

sudo ln -s /etc/guacamole/guacamole.properties /usr/share/tomcat8/.guacamole/

Configuration de l’utilisateur.

Création du mot passe avec cryptage MD5.

Pour le mot de passe « christophe ».

printf '%s' "christophe" | md5sum

guacamole_7

Edition du fichier de configuration.

sudo nano /etc/guacamole/user-mapping.xml

<user-mapping>
<authorize username="test"
password="60784186ea5b29f3f7e16238805ab329"
encoding="md5">
<connection name="SSH">
<protocol>ssh</protocol>
<param name="hostname">localhost</param>
<param name="port">22</param>
<param name="username">pi</param>
</connection>
<connection name="RDP">
<protocol>rdp</protocol>
<param name="hostname">localhost</param>
<param name="port">3389</param>
<param name="username">pi</param>
<param name="server-layout">fr-fr-azerty</param>
<param name="color-depth">16</param>
</connection>
<connection name="VNC-Connection">
<protocol>vnc</protocol>
<param name="hostname">localhost</param>
<param name="port">5901</param>
<param name="password">motdepasse</param>
</connection>
</authorize>
</user-mapping>

guacamole_8

Faire un crtl+X et sauvegarder en répondant y.

Taper les commandes suivantes:

sudo chmod 600 /etc/guacamole/user-mapping.xml
sudo chown tomcat8:tomcat8 /etc/guacamole/user-mapping.xml

Test de connexion au serveur Guacamole.

Démarrer le proxy.

sudo /etc/init.d/guacd restart

Redémarrage du serveur Tomcat.

sudo /etc/init.d/tomcat8 restart

Faire un test en tapant l’adresse IP de votre Raspberry et le port 8080/guacamole/.

Entrer le login test et le mot de passe christophe

guacamole_9

Faire un clique sur RDP.

guacamole_10

Entrer votre mot de passe: Par défaut raspberry

guacamole_11

guacamole_12

Nous voila connecté.

Apres un redémarrage:

Pour le serveur VNC, il faut le lancer avec la commande:

vncserver

Pour le proxy Guacamole, il faut le lancer avec la commande:

sudo /etc/init.d/guacd start

Dans une deuxième partie, nous parlerons de la mise en oeuvre au démarrage du RPI et configuration de votre routeur pour un accès externe.