Guacamole - Installation et configuration

Réduire
X
Réduire
  •  

  • Guacamole - Installation et configuration

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		13,2 Ko  ID : 			217
    Intégration d'un serveur Guacamole dans une architecture RDS​, RDP et SSH.


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		179,4 Ko  ID : 			216

    1. Installation

    Il existe différent type d'installation de Guacamole.
    Soit un mode natively sur une Debian soit à partir d'un composant docker.

    Je vous propose les 2 méthodes

    2. Installation natively sur une Debian

    2.1 Téléchargement de Guacamole Serveur

    Commençons par se connecter au serveur en SSH.

    Passons en mode Root.

    Code:
    su - root
    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		3,3 Ko  ID : 			232

    Nous mettons à jour le serveur comme toujours.

    Code:
    apt update
    apt full-upgrade
    Puis nous installons l'ensemble des paquets dont nous avons besoin.

    Code:
    apt install build-essential libcairo2-dev libjpeg62-turbo-dev libpng-dev libtool-bin uuid-dev \
    libossp-uuid-dev libavcodec-dev libavformat-dev libavutil-dev libswscale-dev \
    freerdp2-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev \
    libwebsockets-dev libpulse-dev libssl-dev libvorbis-dev libwebp-dev
    Nous allons nous positionner dans le répertoire "/tmp" et télécharger l'archive tar.gz :

    Code:
    cd /tmp
    wget https://dlcdn.apache.org/guacamole/1.5.2/source/guacamole-server-1.5.2.tar.gz


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		96,5 Ko  ID : 			218

    2.2 Installation de Guacamole Serveur

    Une fois le téléchargement terminé, on décompresse l'archive tar.gz et on se positionne dans le répertoire obtenu

    Code:
    tar -xzf guacamole-server-1.5.2.tar.gz
    cd guacamole-server-1.5.2/


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		3,0 Ko  ID : 			219

    Nous exécutons la commande ci-dessous pour se préparer à la compilation, ce qui va permettre de vérifier la présence des dépendances :

    Code:
    ./configure --with-init-dir=/etc/init.d
    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		20,3 Ko  ID : 			273​​

    Avant de passer à la suite, on vérifie la sortie de cette commande.
    Normalement, les librairies principales et dont nous avons besoin sont sur le statut yes.

    Nous compilons le code source de guacamole-server :

    Code:
    make

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		23,4 Ko  ID : 			221

    Nous terminons par installer le composant Guacamole Serveur

    Code:
    make install

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		53,3 Ko  ID : 			222

    Code:
    ldconfig
    Nous allons démarrer le service et activer le son service

    Code:
    systemctl daemon-reload
    systemctl start guacd
    systemctl enable guacd
    Nous vérifions le statut

    Code:
    systemctl status guacd


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		36,4 Ko  ID : 			223

    2.3 Configuration de Guacamole Serveur

    Nous créons l'arborescence pour la configuration.

    Code:
    mkdir -p /etc/guacamole/{extensions,lib}


    2.4 Installation de Tomcat

    Puis nous installons l'ensemble des paquets dont nous avons besoin.

    Code:
    apt install tomcat9 tomcat9-admin tomcat9-common tomcat9-user
    2.5 Configuration de Tomcat

    Nous éditons le fichier des comptes utilisateurs

    Code:
    nano /var/lib/tomcat9/conf/tomcat-users.xml
    Nous rajoutons à la fin

    Code:
    <role rolename="manager-gui"/>
    <role rolename="manager-script"/>
    <role rolename="manager-jmx"/>
    <role rolename="manager-status​"/>
    <user username="tomcat" password="P@$$w0rd!" roles="manager-gui"/>
    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		11,5 Ko  ID : 			274

    Nous sauvegarde le fichier

    Code:
    systemctl daemon-reload
    systemctl start tomcat9
    systemctl enable tomcat9
    2.6 Téléchargement de l'application Guacamole

    Nous allons nous positionner dans le répertoire "/tmp" et télécharger l'archive tar.gz :

    Code:
    cd /tmp
    wget https://downloads.apache.org/guacamole/1.5.2/binary/guacamole-1.5.2.war


    2.7 Mise en place de l'application de Guacamole

    Nous déplaçons la librairie de Web App vers Tomcat9

    Code:
    cp guacamole-1.5.2.war /var/lib/tomcat9/webapps/guacamole.war
    Nous relançons le service Tomcat9

    Code:
    systemctl restart tomcat9 guacd
    2.8 Installation MySQL

    Nous commençons par installer le paquet MySQL

    Code:
    wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb
    Nous exécutons le script pour sécuriser un minimum notre instance​.

    Code:
    dpkg -i mysql-apt-config_0.8.24-1_all.deb​
    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		84,3 Ko  ID : 			275

    Code:
    apt update
    Code:
    apt install mysql-server


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		121,4 Ko  ID : 			276

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		34,9 Ko  ID : 			277

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		8,0 Ko  ID : 			278

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		140,1 Ko  ID : 			279

    2.9 Configuration MySQL

    Nous allons se connecter en tant que root.

    Code:
    mysql -u root -p
    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		12,5 Ko  ID : 			225

    Nous créons une base de données et un utilisateur dédié pour Guacamole.
    (ne pas oublié de la mettre dans votre centraliser de mot de passe)

    Code:
    CREATE DATABASE guacamole_db;
    CREATE USER 'guacamole_user'@'localhost' IDENTIFIED BY 'P@$$w0rd!';
    GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole_user'@'localhost';
    FLUSH PRIVILEGES;
    EXIT;


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		19,6 Ko  ID : 			226

    Code:
    systemctl daemon-reload
    systemctl start mysql
    systemctl enable mysql
    2.10 Téléchargement d'extension JDBC

    Nous allons nous positionner dans le répertoire "/tmp" et télécharger l'archive tar.gz :

    Code:
    cd /tmp
    wget https://downloads.apache.org/guacamole/1.5.2/binary/guacamole-auth-jdbc-1.5.2.tar.gz

    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		90,3 Ko  ID : 			228

    Nous décompressons l'archive tar.gz obtenue

    Code:
    tar -xzf guacamole-auth-jdbc-1.5.2.tar.gz
    Code:
    cp guacamole-auth-jdbc-1.5.2/mysql/guacamole-auth-jdbc-mysql-1.5.2.jar /etc/guacamole/extensions/
    Nous allons nous positionner dans le répertoire "/tmp" et télécharger le driver pour notre linux :

    Code:
    cd /tmp
    wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-j-8.0.33.tar.gz


    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		188,5 Ko  ID : 			231

    Nous décompressons l'archive tar.gz obtenue

    Code:
    tar -xzf mysql-connector-j-8.0.33.tar.gz
    Nous déplaçons le fichier ".jar" de l'extension dans le répertoire

    Code:
    cp mysql-connector-j-8.0.33/mysql-connector-j-8.0.33.jar /etc/guacamole/lib/
    Nous importons la structure de la base de données Guacamole dans notre base de données guacamole_db.

    Code:
    cd guacamole-auth-jdbc-1.5.2/mysql/schema/
    cat *.sql | mysql -u root -p guacamole_db



    Cliquez sur l'image pour la voir en taille réelle   Nom : 		image.png  Affichages :	0  Taille :		6,1 Ko  ID : 			230

    Nous créons et éditer le fichier guacamole.properties

    Code:
    nano /etc/guacamole/guacamole.properties
    Nous insérons les lignes ci-dessous en adaptant les trois dernières lignes avec vos valeurs

    Code:
    # MySQL
    mysql-hostname: localhost
    mysql-port: 3306
    mysql-database: guacamole_db
    mysql-username: guacamole_user
    mysql-password: P@$$w0rd!

    2.11 Relance des services

    Nous relançons les services Tomcat9, guacd, mysql

    Code:
    systemctl daemon-reload
    systemctl restart tomcat9 guacd mysql


    guacadmin

    2.10 Téléchargement d'autre extension

    Nous allons nous positionner dans le répertoire "/tmp" et télécharger l'archive tar.gz :

    Nous décompressons les archives tar.gz obtenue


    tar -xzf guacamole-auth-duo-1.5.3.tar.gz
    tar -xzf guacamole-auth-header-1.5.3.tar.gz
    tar -xzf guacamole-auth-quickconnect-1.5.3.tar.gz
    tar -xzf guacamole-auth-sso-1.5.3.tar.gz
    tar -xzf guacamole-history-recording-storage-1.5.3.tar.gz
    tar -xzf guacamole-vault-1.5.3.tar.gz
    ​​​​

    Nous déplacons le fichier ".jar" de l'extension dans le répertoire


    mv guacamole-auth-duo-1.5.3/guacamole-auth-duo-1.5.3.jar /etc/guacamole/extensions/
    mv guacamole-auth-header-1.5.3/guacamole-auth-header-1.5.3.jar /etc/guacamole/extensions/
    mv guacamole-auth-quickconnect-1.5.3/guacamole-auth-quickconnect-1.5.3.jar /etc/guacamole/extensions/
    mv guacamole-auth-sso-1.5.3/guacamole-auth-sso-1.5.3.jar /etc/guacamole/extensions/
    mv guacamole-history-recording-storage-1.5.3/guacamole-history-recording-storage-1.5.3.jar /etc/guacamole/extensions/
    mv guacamole-vault-1.5.3/guacamole-vault-1.5.3.jar /etc/guacamole/extensions/
    ​​​​​​​​

    Code:
    # TOTP
    totp-issuer: Guacamole Tips-Of-Mine
    totp-digits: 6
    totp-period: 60
    totp-mode: sha1​


    Code:
    # ActiveDirectory
    #
    ldap-hostname: swdcop01.tips-of-mine.local
    ldap-port: 389
    ldap-encryption-method​: none
    
    #Utilisateur de service
    ldap-search-bind-dn: [email protected]
    ldap-search-bind-password: P@ssword!
    
    # Recherche des utilisateurs
    ldap-user-base-dn: OU=,DC=local
    ldap-username-attribute: sAMAccountName
    ldap-user-search-filter: (&(objectClass=User) (sAMAccountName=*)(memberof:1.2.840.113556.1.4.1941:=CN=GDL-Guacamole-Access,Ou=DC=local))
    
    # Recherche des groupes
    ldap-group-base-dn: OU=,DC=local
    ldap-group-search-filter: (objectClass=Group)
    
    # force le mode
    Extension-priority: ldap
    2.11 Relance des services

    Nous relancons les services Tomcat9, guacd, mariadb


    systemctl daemon-reload
    systemctl restart tomcat9 guacd mysql
    ​​​​​​​

    3. Installer les prérequis sur un environnement Docker

    test

    test
    ​​​​​​​

    4. Configuration de l'interface

    Fichiers attachés
      L'envoi de commentaires est désactivé.

    Article Tags

    Réduire

    Latest Articles

    Réduire

    • Sécurité - Désactivation des protocoles LLMNR et NetBIOS
      par hcornet
      1 - Qu'est-ce que le protocole LLMNR


      Le protocole LLMNR pour Local Link Multicast Name Resolution est un protocole utilisé en environnement Windows pour effectuer de la résolution de nom localement

      A quoi sert LLMNR puisque l'on a déjà le DNS

      LLMNR est actif par défaut sur Windows et il sera utilisé dans le cas où la résolution DNS échoue
      Une simple erreur de frappe = émission de requête LLMNR

      Utilité en environnement Workgroup,...
      08 January 2024, 20h41
    • Pingcastle : Un Allié Puissant pour la Sécurité
      par hcornet

      1. Introduction

      Dans le vaste écosystème de la sécurité informatique, le monitoring de l'Active Directory est une pièce maîtresse pour se distingue par sa polyvalence et son utilité transversale.
      Imaginez un outil capable de sécuriser, de surveiller et de faciliter les opérations sur les systèmes Windows, offrant une panoplie d'information pour les administrateurs système, les développeurs et les professionnels de la sécurité.

      Pingcastle n'est...
      06 December 2023, 21h44
    • BitWarden - Permettre au utilisateur de récupérer leur mot de passe
      par hcornet
      BitWarden à depuis peu mis en place un système qui permet au utilisateur de pouvoir récupérer leur mot de passe, sous la contrainte des administrateurs.




      ​...
      29 November 2023, 16h13
    • Guacamole - Installation et configuration
      par hcornet

      Intégration d'un serveur Guacamole dans une architecture RDS​, RDP et SSH.




      1. Installation

      Il existe différent type d'installation de Guacamole.
      Soit un mode natively sur une Debian soit à partir d'un composant docker.

      Je vous propose les 2 méthodes

      2. Installation natively sur une Debian

      2.1 Téléchargement de Guacamole Serveur

      Commençons par se connecter au serveur en SSH.
      ...
      05 November 2023, 17h58
    • Awingu - Installation et configuration
      par hcornet
      ​​

      Intégration d'un serveur Awingu dans une architecture RDS

      ​​
      1 - Prérequis

      Commencer par télécharger la version dont vous avez besoin depuis la repo officiel : https://repo-pub.awingu.com/appliances/

      Pour ma démonstration, j'ai télécharger la version ESXi et j'ai réalisé l'importation du fichier OVA.​

      Sur mon Active Directory, dans la partie Services, je créé une UO avec le nom Awingu
      Et je créé 3 groupes pour différent...
      04 November 2023, 15h23
    • Qu’est-ce qu’une cyberattaque ?
      par hcornet


      Le terme cyberattaque fait référence à une action conçue pour cibler un ordinateur ou tout élément d’un système d’informations informatisé visant à modifier, détruire ou voler des données, ainsi qu’à exploiter ou nuire à un réseau.
      Les cyberattaques ont augmenté parallèlement à la numérisation des entreprises qui est devenue de plus en plus populaire ces dernières années.

      Bien qu’il existe des dizaines de différents types de cyberattaques,...
      03 November 2023, 14h48
    Chargement...