GNU/Linux >> Tutoriels Linux >  >> Cent OS

Installer et utiliser Guacamole Remote Desktop sur CentOS 8

Apache Guacamole est une application de bureau à distance gratuite, open source, basée sur le Web et sans client qui prend en charge les protocoles standard tels que VNC, RDP et SSH. Il vous permet d'accéder à Linux et Windows PC à partir d'un navigateur Web via RDP, SSH ou VNC. Il est sans client, vous n'avez donc pas besoin d'installer de plugins ou de logiciel client. Il est composé de deux composants Guacamole Server et Guacamole Client. Le serveur Guacamole fournit les composants côté serveur et natifs nécessaires pour se connecter à un PC distant, tandis que le client Guacamole est une application Web HTML 5 utilisée pour se connecter au PC distant.

Dans ce tutoriel, nous allons vous montrer comment installer le serveur Guacamole sur CentOS 8.

Prérequis

  • Un serveur exécutant CentOS 8.
  • Un mot de passe root est configuré sur le serveur.

Mise en route

Tout d'abord, vous devrez installer certains packages requis sur votre serveur. Vous pouvez tous les installer avec la commande suivante :

dnf install -y unzip curl make cmake wget gcc zlib-devel compat-openssl10

Après avoir installé tous les packages requis, vous devrez activer le dépôt EPEL, PowerTools et Devel sur votre système. Vous pouvez les activer avec la commande suivante :

dnf install epel-release -y
dnf config-manager --set-enabled PowerTools
dnf config-manager --enable Devel

Ensuite, installez les autres outils requis avec la commande suivante :

dnf install cairo-devel libuv-devel libjpeg-turbo-devel libjpeg-devel libpng-devel libtool uuid-devel freerdp-devel pango-devel libvncserver-devel pulseaudio-libs-devel openssl-devel libvorbis-devel libwebp-devel libssh2-devel libtheora opus lame-libs

Ensuite, désactivez le référentiel Devel avec la commande suivante :

dnf config-manager --disable Devel

Ensuite, vous devrez compiler la bibliothèque telnet dans votre système.

Tout d'abord, téléchargez-le avec la commande suivante :

curl -s https://api.github.com/repos/seanmiddleditch/libtelnet/releases/latest | grep browser_download_url | cut -d '"' -f 4 | wget -qi -

Une fois téléchargé, extrayez le fichier téléchargé avec la commande suivante :

tar -xf libtelnet-*.tar.gz

Ensuite, changez le répertoire en répertoire extrait et configurez-le avec la commande suivante :

cd libtelnet-*/
./configure

Ensuite, installez-le sur votre système avec la commande suivante :

make 
make install

Une fois installé, vous pouvez passer à l'étape suivante.

Installer Java

Guacamole est un logiciel basé sur Java, Java doit donc être installé sur votre serveur. S'il n'est pas installé, vous pouvez l'installer avec la commande suivante :

dnf install java-11-openjdk-devel

Une fois installé, vérifiez la version de Java à l'aide de la commande suivante :

java -version

Vous devriez obtenir le résultat suivant :

openjdk version "11.0.9.1" 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)

Installer Tomcat

Apache Tomcat est utilisé pour servir le contenu du client guacamole. Vous devrez donc installer Tomcat sur votre serveur.

Commencez par créer un utilisateur et un groupe distincts pour Tomcat avec la commande suivante :

groupadd --system tomcat
useradd -d /usr/share/tomcat -r -s /bin/false -g tomcat tomcat

Ensuite, téléchargez la dernière version de Tomcat avec la commande suivante :

wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.43/bin/apache-tomcat-9.0.43.tar.gz

Une fois le téléchargement terminé, extrayez le fichier téléchargé avec la commande suivante :

tar -xvf apache-tomcat-9.0.43.tar.gz

Ensuite, déplacez le Tomcat vers le répertoire /usr/share

mv apache-tomcat-9.0.43 /usr/share/tomcat

Ensuite, définissez la propriété appropriée sur le répertoire Tomcat :

chown -R tomcat:tomcat /usr/share/tomcat/

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Créer un fichier de service Systemd pour Tomcat

Ensuite, vous devrez créer un fichier de service systemd pour Tomcat. Vous pouvez le créer avec la commande suivante :

nano /etc/systemd/system/tomcat.service

Ajoutez les lignes suivantes :

[Unit]
Description=Tomcat Server
After=syslog.target network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment=JAVA_HOME=/usr/lib/jvm/jre
Environment='JAVA_OPTS=-Djava.awt.headless=true'
Environment=CATALINA_HOME=/usr/share/tomcat
Environment=CATALINA_BASE=/usr/share/tomcat
Environment=CATALINA_PID=/usr/share/tomcat/temp/tomcat.pid
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M'
ExecStart=/usr/share/tomcat/bin/catalina.sh start
ExecStop=/usr/share/tomcat/bin/catalina.sh stop

[Install]
WantedBy=multi-user.target

Enregistrez et fermez le fichier puis rechargez le démon systemd avec la commande suivante :

systemctl daemon-reload

Ensuite, démarrez le service Tomcat et activez-le pour qu'il démarre au redémarrage du système :

systemctl start tomcat
systemctl enable tomcat

Vous pouvez également vérifier l'état de Tomcat avec la commande suivante :

systemctl status tomcat

Vous devriez obtenir le résultat suivant :

? tomcat.service - Tomcat Server
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: disabled)
   Active: active (running) since Tue 2021-02-16 09:34:45 EST; 6s ago
  Process: 26546 ExecStart=/usr/share/tomcat/bin/catalina.sh start (code=exited, status=0/SUCCESS)
 Main PID: 26551 (java)
    Tasks: 35 (limit: 12523)
   Memory: 89.7M
   CGroup: /system.slice/tomcat.service
           ??26551 /usr/lib/jvm/jre/bin/java -Djava.util.logging.config.file=/usr/share/tomcat/conf/logging.properties -Djava.util.logging.man>

Feb 16 09:34:45 centos8 systemd[1]: Starting Tomcat Server...
Feb 16 09:34:45 centos8 systemd[1]: Started Tomcat Server.

Installer Apache Guacamole

Tout d'abord, téléchargez la dernière version de Guacamole avec la commande suivante :

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

Une fois le téléchargement terminé, extrayez le fichier téléchargé avec la commande suivante :

tar -xvzf guacamole-server-1.3.0.tar.gz

Ensuite, remplacez le répertoire par le répertoire extrait et configurez-le avec la commande suivante :

cd guacamole-server-1.3.0
./configure --with-init-dir=/etc/init.d

Ensuite, installez-le sur votre système avec la commande suivante :

make
make install
ldconfig

Ensuite, rechargez le démon systemd avec la commande suivante :

systemctl daemon-reload

Ensuite, démarrez le service Guacamole et activez-le au redémarrage du système :

systemctl start guacd
systemctl enable guacd

Vous pouvez vérifier l'état du Guacamole avec la commande suivante :

systemctl status guacd

Vous devriez obtenir le résultat suivant :

? guacd.service - LSB: Guacamole proxy daemon
   Loaded: loaded (/etc/rc.d/init.d/guacd; generated)
   Active: active (running) since Tue 2021-02-16 09:37:15 EST; 4s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 35723 ExecStart=/etc/rc.d/init.d/guacd start (code=exited, status=0/SUCCESS)
    Tasks: 1 (limit: 12523)
   Memory: 12.1M
   CGroup: /system.slice/guacd.service
           ??35726 /usr/local/sbin/guacd -p /var/run/guacd.pid

Feb 16 09:37:15 centos8 systemd[1]: Starting LSB: Guacamole proxy daemon...
Feb 16 09:37:15 centos8 guacd[35723]: Starting guacd: guacd[35724]: INFO:        Guacamole proxy daemon (guacd) version 1.3.0 started
Feb 16 09:37:15 centos8 guacd[35723]: SUCCESS
Feb 16 09:37:15 centos8 guacd[35726]: Listening on host 127.0.0.1, port 4822
Feb 16 09:37:15 centos8 systemd[1]: Started LSB: Guacamole proxy daemon.

Installer le client Guacamole

Ensuite, créez un répertoire pour Guacamole et téléchargez le fichier client Guacamole avec la commande suivante :

mkdir /etc/guacamole
wget https://downloads.apache.org/guacamole/1.3.0/binary/guacamole-1.3.0.war

Une fois téléchargé, déplacez le fichier téléchargé dans le répertoire /etc/guacamole :

mv guacamole-1.3.0.war /etc/guacamole/guacamole.war

Ensuite, créez un lien symbolique du fichier guacamole.war vers le répertoire /usr/share/tomcat :

ln -s /etc/guacamole/guacamole.war /usr/share/tomcat/webapps/

Ensuite, définissez le répertoire d'accueil de Guacamole avec la commande suivante :

echo "GUACAMOLE_HOME=/etc/guacamole" | tee -a /etc/default/tomcat

Ensuite, créez un fichier de configuration Guacamole avec la commande suivante :

nano /etc/guacamole/guacamole.properties

Ajoutez les lignes suivantes :

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

Enregistrez et fermez le fichier puis créez le lien symbolique du répertoire /etc/guacamole :

ln -s /etc/guacamole /usr/share/tomcat/.guacamole

Configurer Guacamole

Ensuite, vous devrez créer un fichier de mappage utilisateur Guacamole pour définir le serveur distant auquel vous souhaitez vous connecter depuis Guacamole.

Tout d'abord, générez un mot de passe secret avec la commande suivante :

echo -n your-password | openssl md5

Vous devriez voir le résultat suivant :

(stdin)= 0f6e4a1df0cf5ee97c2066953bed21b2

Créez ensuite un fichier user-mapping.xml avec la commande suivante :

nano /etc/guacamole/user-mapping.xml

Ajoutez les détails de votre serveur Windows et Linux distant comme indiqué ci-dessous :

<user-mapping>
<authorize 
            username="admin"
            password="0f6e4a1df0cf5ee97c2066953bed21b2"
            encoding="md5">

        <!-- First authorized Remote connection -->
        <connection name="CentOS 8">
            <protocol>ssh</protocol>
            <param name="hostname">69.87.218.51</param>
            <param name="port">22</param>

        </connection>

        <connection name="Windows Server">
            <protocol>rdp</protocol>
            <param name="hostname">15.185.162.149</param>
            <param name="port">3389</param>
            <param name="username">administrator</param>

        </connection>

    </authorize>

</user-mapping>

Enregistrez et fermez le fichier, puis redémarrez les services Guacamole et Tomcat pour appliquer les modifications :

systemctl restart tomcat guacd

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Configurer le pare-feu

Ensuite, vous devrez autoriser les ports 4822 et 8080 via un pare-feu. Vous pouvez les autoriser avec la commande suivante :

firewall-cmd --permanent --add-port=4822/tcp
firewall-cmd --permanent --add-port=8080/tcp

Ensuite, rechargez le pare-feu pour appliquer les modifications :

firewall-cmd --reload

Accéder à l'interface Web Guacamole

Maintenant, ouvrez votre navigateur Web et accédez à l'interface Web Guacamole en utilisant l'URL http://your-server-ip:8080/guacamole . Vous devriez voir l'écran suivant :

Indiquez votre nom d'utilisateur et votre mot de passe d'administrateur et cliquez sur Connexion bouton. Vous devriez voir le tableau de bord Guacamole dans l'écran suivant :

Sur l'écran ci-dessus, vous pouvez voir les serveurs Windows et Linux. Vous pouvez cliquer sur pour vous connecter et gérer les serveurs distants.

Conclusion

Toutes nos félicitations! vous avez installé et configuré avec succès le serveur Guacamole sur CentOS 8. Vous pouvez maintenant ajouter d'autres serveurs distants à votre serveur Guacamole et les gérer via un navigateur Web.


Cent OS
  1. Comment installer et utiliser PHP Composer sur CentOS 7

  2. Comment installer et utiliser ifconfig sur CentOS 7

  3. Comment installer et utiliser Docker sur CentOS 7

  4. Comment installer et utiliser Docker Compose sur CentOS 7

  5. Installez xrdp Remote Desktop sur CentOS 6 / RHEL 6

Comment installer et utiliser l'outil d'analyse des performances des performances sur CentOS 8

Comment installer et utiliser Apache Guacamole Remote Desktop sur Rocky Linux 8

Installer et utiliser NoMachine Remote Desktop sur CentOS 8

Comment installer et utiliser TermRecord sur CentOS 8

Comment installer et utiliser Traceroute sur CentOS 7

Comment installer et utiliser Docker sur CentOS 8