Recherche de site Web

Comment installer Guacamole pour accéder à vos ordinateurs de n'importe où dans Ubuntu


Apache Guacamole est une passerelle Web open source sans client qui fournit un accès à distance aux serveurs et même aux PC clients via un navigateur Web en utilisant des protocoles tels que SSH, VNC. et RDP.

Apache Guacamole comprend 2 composants principaux :

  • Serveur Guacamole : il fournit tous les composants côté serveur et natifs requis par Guacamole pour se connecter aux postes de travail distants.
  • Client Guacamole : Il s'agit d'une application Web HTML 5 et d'un client qui vous permet de vous connecter à vos serveurs/ordinateurs de bureau distants. Ceci est soutenu par le serveur Tomcat.

Dans cet article, nous vous guiderons dans l'installation d'Apache Guacamole sur Ubuntu 20.04.

Conditions préalables

Avant de commencer, assurez-vous d'avoir les éléments suivants :

  • Une instance d'Ubuntu 20.04 LTS avec l'utilisateur sudo configuré.
  • Minimum 2 Go de RAM

Voyons maintenant et installons Guacamole sur Ubuntu 20.04 LTS.

Sur cette page

  • Comment installer Apache Guacamole sur Ubuntu Server
  • Comment installer Tomcat sur le serveur Ubuntu
  • Comment installer le client Guacamole dans Ubuntu
  • Comment configurer le client Guacamole dans Ubuntu
  • Comment configurer les connexions du serveur Guacamole dans Ubuntu
  • Comment accéder au serveur Ubuntu distant via l'interface utilisateur Web Guacamole

Étape 1 : Installation d'Apache Guacamole sur Ubuntu Server

1. L'installation de Apache Guacamole se fait en compilant le code source. Pour que cela soit réalisé, certains outils de build sont requis comme condition préalable. Par conséquent, exécutez la commande apt suivante :

sudo apt-get install make 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

2. Une fois l'installation des outils de build terminée, continuez et téléchargez le dernier fichier source de l'archive tar à partir de la page de version de Guacamole. Au moment de la rédaction de ce guide, la dernière version est Guacamole version 1.2.0. Pour télécharger le dernier fichier tarball, exécutez simplement la commande wget ci-dessous.

wget https://downloads.apache.org/guacamole/1.2.0/source/guacamole-server-1.2.0.tar.gz

3. Ensuite, extrayez le fichier tarball Guacamole et accédez au dossier non compressé.

tar -xvf guacamole-server-1.2.0.tar.gz
cd guacamole-server-1.2.0

4. Ensuite, exécutez le script de configuration pour vérifier s'il manque des dépendances. Cela prend généralement environ deux minutes, alors soyez patient pendant que le script effectue la vérification des dépendances. Un barrage de résultats s'affichera, comprenant des détails sur la version du serveur, comme indiqué.

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

5. Pour compiler et installer Guacamole, exécutez les commandes ci-dessous, l'une après l'autre.

sudo make
sudo make install

6. Exécutez ensuite la commande ldconfig pour créer tous les liens pertinents et mettre en cache les bibliothèques partagées les plus récemment dans le répertoire du serveur Guacamole.

sudo ldconfig

7. Pour faire fonctionner le serveur Guacamole, nous allons démarrer le démon Guacamoleguacd – et l'activer sur démarrez et vérifiez l’état comme indiqué.

sudo systemctl start guacd
sudo systemctl enable guacd
sudo systemctl status guacd

Étape 2 : Installation de Tomcat sur le serveur Ubuntu

8. Le serveur Tomcat est une exigence car il sera utilisé pour servir le contenu du client Guacamole aux utilisateurs qui se connectent au serveur via un navigateur. Par conséquent, exécutez la commande suivante pour installer Tomcat :

sudo apt install tomcat9 tomcat9-admin tomcat9-common tomcat9-user

9. Lors de l'installation, le serveur Tomcat doit être opérationnel. Vous pouvez confirmer l'état du serveur comme indiqué :

sudo systemctl status tomcat

10. Si Tomcat n'est pas en cours d'exécution, démarrez-le et activez-le au démarrage :

sudo systemctl start tomcat
sudo systemctl enable tomcat

11. Par défaut, Tomcat s'exécute sur le port 8080 et si UFW est en cours d'exécution, vous devez autoriser ce port comme indiqué :

sudo ufw allow 8080/tcp
sudo ufw reload

Étape 3 : Installation du client Guacamole dans Ubuntu

12. Une fois le serveur Tomcat installé, nous allons procéder à l'installation du client Guacamole qui est une application Web basée sur Java qui permet aux utilisateurs de se connecter au serveur.

Tout d’abord, nous allons créer un répertoire de configuration comme indiqué.

sudo mkdir /etc/guacamole

13. Nous allons télécharger le binaire du client Guacamole dans le répertoire /etc/guacamole à l'aide de la commande comme indiqué.

sudo wget https://downloads.apache.org/guacamole/1.2.0/binary/guacamole-1.2.0.war -O /etc/guacamole/guacamole.war

14. Une fois téléchargé, créez un lien symbolique vers le répertoire Tomcat WebApps comme indiqué.

ln -s /etc/guacamole/guacamole.war /var/lib/tomcat9/webapps/

15. Pour déployer l'application Web, redémarrez le serveur Tomcat et le démon Guacamole.

sudo systemctl restart tomcat9
sudo systemctl restart guacd

Étape 4 : Configuration du client Guacamole dans Ubuntu

Il existe 2 fichiers de configuration majeurs associés à Guacamole ; le fichier /etc/guacamole et le fichier /etc/guacamole/guacamole.properties qui est utilisé par Guacamole et ses extensions.

16. Avant de continuer, nous devons créer des répertoires pour les extensions et les bibliothèques.

sudo mkdir /etc/guacamole/{extensions,lib}

17. Ensuite, configurez la variable d'environnement du répertoire personnel et ajoutez-la au fichier de configuration /etc/default/tomcat9.

sudo echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/tomcat9

Étape 5 : Configuration des connexions au serveur Guacamole dans Ubuntu

18. Pour déterminer comment guacamole se connecte au démon guacamoleguacd – nous allons créer le guacamole .properties comme indiqué.

sudo vim /etc/guacamole/guacamole.properties

Ajoutez le contenu ci-dessous et enregistrez le fichier.

guacd-hostname: localhost
guacd-port:     4822
user-mapping:   /etc/guacamole/user-mapping.xml
auth-provider:  net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider

19. Ensuite, nous allons créer le fichier user-mapping.xml qui définit les utilisateurs qui peuvent se connecter et se connecter à Guacamole via l'interface Web d'un navigateur.

Avant de faire cela, nous devons générer un mot de passe haché pour l'utilisateur connecté, comme indiqué. Assurez-vous de remplacer votre mot de passe fort par votre propre mot de passe.

echo -n yourStrongPassword | openssl md5

Vous devriez obtenir quelque chose comme ça.

(stdin)= efd7ff06c71f155a2f07fbb23d69609

Copiez le mot de passe haché et enregistrez-le quelque part car vous en aurez besoin dans le fichier user-mapping.xml.

20. Créez maintenant le fichier user-mapping.xml.

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

Collez le contenu ci-dessous.

<user-mapping>
    <authorize 
            username="tecmint"
            password="efd7ff06c71f155a2f07fbb23d69609"
            encoding="md5">

        <connection name="Ubuntu20.04-Focal-Fossa">
            <protocol>ssh</protocol>
            <param name="hostname">173.82.187.242</param>
            <param name="port">22</param>
            <param name="username">root</param>
        </connection>
        <connection name="Windows Server">
            <protocol>rdp</protocol>
            <param name="hostname">173.82.187.22</param>
            <param name="port">3389</param>
        </connection>
    </authorize>
</user-mapping>

Nous avons défini deux profils de connexion qui vous permettent de vous connecter à 2 systèmes distants qui sont en ligne :

  • Serveur Ubuntu 20.04 – IP : 173.82.187.242 via le protocole SSH
  • Windows Server – IP : 173.82.187.22 via le protocole RDP

21. Pour appliquer les modifications, redémarrez le serveur Tomcat et Guacamole :

sudo systemctl restart tomcat9
sudo systemctl restart guacd

À ce stade, le serveur et le client Guacamole ont été configurés. Accédez maintenant à l'interface utilisateur Web de Guacamole à l'aide du navigateur.

Étape 6 : Accéder à l’interface utilisateur Web de Guacamole

22. Pour accéder à l'interface utilisateur Web de Guacamole, ouvrez votre navigateur et parcourez l'adresse de votre serveur comme indiqué :

http://server-ip:8080/guacamole

23. Connectez-vous à l'aide des informations d'identification que vous avez spécifiées dans le fichier user-mapping.xml. Une fois connecté, vous trouverez les connexions au serveur que vous avez définies dans le fichier répertorié sur le bouton sous la section TOUTES LES CONNEXIONS.

24. Pour accéder au serveur Ubuntu 20.04 LTS, cliquez sur la connexion et cela initie une connexion SSH au serveur Ubuntu distant. Vous serez invité à saisir le mot de passe et une fois que vous l'aurez saisi et appuyé sur ENTRÉE, vous serez connecté au système distant comme indiqué.

Pour la machine serveur Windows, cliquez sur la connexion au serveur correspondante et fournissez le mot de passe pour vous connecter au serveur via RDP.

Et ceci conclut notre guide dans lequel nous vous avons montré comment installer et configurer Guacamole sur Ubuntu 20.04 LTS.