GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare il client desktop remoto Guacamole basato sul Web su Ubuntu 18.04 LTS

Se sei un amministratore di sistema e responsabile della gestione di macchine Windows e Linux, spesso potresti aver bisogno di un software client desktop remoto per gestirle. Apache Guacamole è un'applicazione desktop remoto gratuita, open source e basata sul Web che ti consente di accedere alle tue macchine desktop tramite un browser web. È un'applicazione Web HTML5 senza client che supporta protocolli standard come VNC, RDP e SSH. Non è necessario installare e client software o plug-in sul server. Con Guacamole puoi passare facilmente da un computer desktop remoto all'altro con la stessa finestra del browser.

In questo tutorial, mostreremo come installare il gateway desktop remoto Apache Guacamole sul server Ubuntu 18.04 LTS.

Prerequisiti

  • Un server che esegue Ubuntu 18.04.
  • Una password di root è impostata sul tuo server.

Per iniziare

Prima di iniziare, è una buona idea aggiornare il pacchetto del sistema all'ultima versione. Puoi aggiornarli usando il seguente comando:

apt-get update -y
apt-get upgrade -y

Una volta aggiornati tutti i pacchetti, riavvia il sistema per applicare le modifiche.

Installa le dipendenze richieste

Prima di iniziare, dovrai installare alcune dipendenze nel tuo sistema per compilare Guacamole dal sorgente. Puoi installarli tutti usando il seguente comando:

apt-get install gcc-6 g++-6 libossp-uuid-dev libavcodec-dev libpango1.0-dev libssh2-1-dev libcairo2-dev libjpeg-turbo8-dev libpng-dev libavutil-dev libswscale-dev libfreerdp-dev libvncserver-dev libssl-dev libvorbis-dev libwebp-dev -y

Una volta installati tutti i pacchetti, puoi procedere al passaggio successivo.

Installa il server Tomcat

Successivamente, dovrai installare Tomcat nel tuo server per servire il contenuto del client guacamole agli utenti che si connettono al server guacamole tramite il browser web. Puoi installarlo usando il seguente comando:

apt-get install tomcat8 tomcat8-admin tomcat8-common tomcat8-user -y

Una volta installato Tomcat, puoi procedere al passaggio successivo.

Installa Guacamole Server

Guacamole è separato in due componenti, guacamole-server che fornisce il proxy guacd e le relative librerie, e guacamole-client che fornisce il client che deve essere servito dal tuo server Tomcat. Per impostazione predefinita, Guacamole Server non è disponibile nel repository predefinito di Ubuntu 18.04. Quindi dovrai compilarlo dal sorgente.

Innanzitutto, scarica l'ultima versione del sorgente Guacamole usando il seguente comando:

wget http://apachemirror.wuchna.com/guacamole/1.1.0/source/guacamole-server-1.1.0.tar.gz

Una volta completato il download, estrai il file scaricato con il seguente comando:

tar -xvzf guacamole-server-1.1.0.tar.gz

Quindi, cambia la directory nella directory estratta e configurala con il seguente comando:

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

Una volta completata la configurazione, dovresti ottenere il seguente output:

   Library status:

     freerdp2 ............ no
     pango ............... yes
     libavcodec .......... yes
     libavutil ........... yes
     libssh2 ............. yes
     libssl .............. yes
     libswscale .......... yes
     libtelnet ........... no
     libVNCServer ........ yes
     libvorbis ........... yes
     libpulse ............ no
     libwebsockets ....... no
     libwebp ............. yes
     wsock32 ............. no

   Protocol support:

      Kubernetes .... no
      RDP ........... no
      SSH ........... yes
      Telnet ........ no
      VNC ........... yes

   Services / tools:

      guacd ...... yes
      guacenc .... yes
      guaclog .... yes

   FreeRDP plugins: no
   Init scripts: /etc/init.d
   Systemd units: no

Type "make" to compile guacamole-server.

Quindi, esegui il seguente comando per compilare guacamole-server:

make

Una volta completata con successo la compilazione, puoi installarla con il seguente comando:

make install

Una volta installato, esegui il comando seguente per aggiornare la cache di sistema delle librerie installate

ldconfig

Quindi, abilita l'avvio del servizio Guacamole all'avvio e avvialo con il seguente comando:

systemctl enable guacd
systemctl start guacd

Puoi anche controllare lo stato del servizio Guacamole con il seguente comando:

systemctl status guacd

Dovresti ottenere il seguente output:

? guacd.service - LSB: Guacamole proxy daemon
   Loaded: loaded (/etc/init.d/guacd; generated)
   Active: active (running) since Sat 2020-04-11 14:48:03 UTC; 7s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 28833 ExecStart=/etc/init.d/guacd start (code=exited, status=0/SUCCESS)
    Tasks: 1 (limit: 2359)
   CGroup: /system.slice/guacd.service
           ??28847 /usr/local/sbin/guacd -p /var/run/guacd.pid

Apr 11 14:48:03 ubuntu1804 systemd[1]: Starting LSB: Guacamole proxy daemon...
Apr 11 14:48:03 ubuntu1804 guacd[28834]: Guacamole proxy daemon (guacd) version 1.1.0 started
Apr 11 14:48:03 ubuntu1804 guacd[28833]: Starting guacd: guacd[28834]: INFO:        Guacamole proxy daemon (guacd) version 1.1.0 started
Apr 11 14:48:03 ubuntu1804 guacd[28833]: SUCCESS
Apr 11 14:48:03 ubuntu1804 systemd[1]: Started LSB: Guacamole proxy daemon.
Apr 11 14:48:03 ubuntu1804 guacd[28847]: Listening on host 127.0.0.1, port 4822

Installa il client Guacamole

Successivamente, dovrai installare il client Guacamole sul tuo server. Il client Guacamole è scritto in Java ed è multipiattaforma. Questo costituirà l'applicazione HTML5 finale che ti verrà presentata.

Innanzitutto, scarica il file binario Guacamole con il seguente comando:

wget https://mirrors.estointernet.in/apache/guacamole/1.1.0/binary/guacamole-1.1.0.war

Una volta completato il download, copialo nella directory /etc/guacamole:

mkdir /etc/guacamole
mv guacamole-1.1.0.war /etc/guacamole/guacamole.war

Quindi, crea un collegamento simbolico del client guacamole alla directory Tomcat webapps con il seguente comando:

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

Infine, riavvia il servizio Tomcat e Guacamole per distribuire la nuova applicazione web

systemctl restart tomcat8
systemctl restart guacd

Configura Guacomole

Dopo aver installato Guacamole, è necessario configurare utenti e connessioni per far funzionare correttamente Guacamole.

Innanzitutto, crea un file di configurazione principale di Guacamole denominato guacamole.properties.

nano /etc/guacamole/guacamole.properties

Aggiungi le seguenti righe:

guacd-hostname: localhost
guacd-port:    4822
user-mapping:    /etc/guacamole/user-mapping.xml

Salva e chiudi il file. Quindi, crea una directory lib e extensions con il seguente comando:

mkdir /etc/guacamole/{extensions,lib}

Successivamente, la variabile d'ambiente della directory home di guacamole nel file di configurazione predefinito di tomcat8.

echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/tomcat8

Il metodo di autenticazione predefinito di Guacamole legge tutti gli utenti e le connessioni da un unico file chiamato user-mapping.xml. Questo file definirà l'utente autorizzato ad accedere all'interfaccia utente web di Guacamole, i server a cui connettersi e il metodo di connessione.

Innanzitutto, genera l'hash md5 per la password con il seguente comando:

echo -n yoursecurepassword | openssl md5

Dovresti ottenere il seguente output:

(stdin)= 55b38b03e7587a45fd886977842ff9b8

Nota:ricorda questo hash, dovrai specificarlo nel file user-mapping.xml.

Quindi, crea un nuovo user-mapping.xml con il seguente comando:

nano /etc/guacamole/user-mapping.xml

Aggiungi le seguenti righe:

<user-mapping>
    <authorize 
            username="admin"
            password="55b38b03e7587a45fd886977842ff9b8"
            encoding="md5">

        <connection name="Ubuntu-Server">
            <protocol>ssh</protocol>
            <param name="hostname">192.168.0.150</param>
            <param name="port">22<param>
            <param name="username">root</param>
        </connection>
        <connection name="Windows Server">
            <protocol>rdp</protocol>
            <param name="hostname">192.168.0.100</param>
            <param name="port">3389</param>
        </connection>
    </authorize>
</user-mapping>

Salva e chiudi il file quando hai finito. Quindi, riavvia il servizio Tomcat e Guacamole per applicare le modifiche:

systemctl restart tomcat8
systemctl restart guacd

Accedi all'interfaccia web di Guacamole

A questo punto il server Guacamole è installato e configurato. Ora è il momento di accedervi tramite un browser web.

Apri il tuo browser web e digita l'URL http://your-server-ip:8080/guacamole/. Verrai reindirizzato alla pagina di accesso di Apache Guacamole:

Fornisci il nome utente e la password che hai specificato nel file user-mapping.xml e fai clic su Accedi pulsante. Dovresti vedere la dashboard predefinita di Apache Guacamole con tutte le connessioni:

Ora, fai clic sul server Ubuntu e ti verrà chiesto di inserire la password per l'utente che hai definito in user-mapping.xml come mostrato di seguito:

Fornisci la password degli utenti del tuo sistema e premi Invio . Accederai al server Ubuntu come mostrato di seguito:

Configura Nginx come proxy inverso per Guacamole

Successivamente, dovrai configurare Nginx come proxy inverso per accedere alla dashboard di Guacamole. Innanzitutto, installa il server web Nginx usando il seguente comando:

apt-get install nginx -y

Una volta installato, crea un nuovo file di configurazione dell'host virtuale Nginx:

nano /etc/nginx/sites-available/guacamole.conf

Aggiungi le seguenti righe:

server {
        listen 80;
        server_name your-server-ip;
        access_log  /var/log/nginx/guac_access.log;
        error_log  /var/log/nginx/guac_error.log;

        location / {
                    proxy_pass http://your-server-ip:8080/guacamole/;
                    proxy_buffering off;
                    proxy_http_version 1.1;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_set_header Upgrade $http_upgrade;
                    proxy_set_header Connection $http_connection;
                    proxy_cookie_path /guacamole/ /;
        }

}

Salva e chiudi il file quando hai finito. Quindi, abilita l'host virtuale Nginx con il seguente comando:

ln -s /etc/nginx/sites-available/guacamole.conf /etc/nginx/sites-enabled/

Quindi, controlla Nginx per eventuali errori di sintassi con il seguente comando:

nginx -t

Dovresti ottenere il seguente output:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Infine, riavvia il servizio Nginx per applicare le modifiche:

systemctl restart nginx

Ora puoi accedere all'interfaccia web di Guacamole utilizzando l'URL http://your-server-ip.

Conclusione

Congratulazioni! hai installato correttamente il gateway desktop remoto Guacamole sul server Ubuntu 18.04. Ora puoi aggiungere un altro server remoto che desideri gestire in remoto tramite un browser web.


Ubuntu
  1. Come installare il client desktop remoto Guacamole basato sul web su Ubuntu 20.04 LTS

  2. Come installare Ubuntu 20.04 LTS Desktop

  3. Come installare Dropbox in Ubuntu 18.04 LTS Desktop

  4. Come installare il client Mattermost su Ubuntu 18.04

  5. Come installare Xrdp (desktop remoto) su Ubuntu 20.04 LTS

Come installare il client desktop WordPress su Ubuntu 20.04

Come installare TeamViewer su Ubuntu 16.04 LTS

Come installare Chrome Remote Desktop su Ubuntu 20.04 LTS

Come installare il client desktop Remmina su Ubuntu 20.04 LTS

Come installare il client desktop remoto Remmina in Ubuntu Linux

Come installare Guacamole su Ubuntu 20.04