Com instal·lar Guacamole per accedir als vostres ordinadors des de qualsevol lloc d'Ubuntu


Apache Guacamole és una passarel·la web de codi obert sense client que proporciona accés remot als servidors i fins i tot als ordinadors clients mitjançant un navegador web mitjançant protocols com SSH, VNC i RDP.

Apache Guacamole consta de 2 components principals:

  • Servidor Guacamole: proporciona tots els components natius i del costat del servidor que Guacamole requereix per connectar-se a escriptoris remots.
  • Client Guacamole: aquesta és una aplicació web HTML 5 i un client que us permet connectar-vos als vostres servidors/escriptoris remots. Això està recolzat pel servidor Tomcat.

En aquest article, us guiarem per la instal·lació d'Apache Guacamole a Ubuntu 20.04.

Abans de començar, assegureu-vos que teniu el següent:

  • S'ha configurat una instància d'usuari sudo.
  • Mínim 2 GB de RAM

Ara aprofundim i instal·lem Guacamole a Ubuntu 20.04 LTS.

En aquesta pàgina

  • Com instal·lar Apache Guacamole al servidor Ubuntu
  • Com instal·lar Tomcat al servidor Ubuntu
  • Com instal·lar el client Guacamole a Ubuntu
  • Com configurar el client Guacamole a Ubuntu
  • Com configurar les connexions del servidor Guacamole a Ubuntu
  • Com accedir al servidor Ubuntu remot mitjançant la interfície d'usuari web de Guacamole

1. La instal·lació d'Apache Guacamole es fa compilant el codi font. Per aconseguir-ho, calen algunes eines de creació com a requisit previ. Per tant, executeu la següent comanda apt:

$ 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. Un cop s'hagi completat la instal·lació de les eines de compilació, continueu i baixeu l'últim fitxer font tarball des de l'ordre wget a continuació.

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

3. A continuació, extreu el fitxer tarball Guacamole i navegueu a la carpeta sense comprimir.

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

4. A continuació, executeu l'script de configuració per verificar si hi ha cap dependència que falten. Això sol trigar dos minuts més o menys, així que tingueu paciència mentre l'script realitza la comprovació de dependència. Es mostrarà una sèrie de resultats que inclouen detalls sobre la versió del servidor tal com es mostra.

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

5. Per compilar i instal·lar Guacamole, executeu les ordres següents, una darrere l'altra.

$ sudo make
$ sudo make install

6. A continuació, executeu l'ordre ldconfig per crear els enllaços rellevants i la memòria cau a les biblioteques compartides més recentment al directori del servidor Guacamole.

$ sudo ldconfig

7. Per fer funcionar el servidor Guacamole, iniciarem el dimoni Guacamole – guacd – i l'habilitarem a l'arrencada i comprovarem l'estat tal com es mostra.

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

8. El servidor Tomcat és un requisit, ja que s'utilitzarà per servir el contingut del client Guacamole als usuaris que es connectin al servidor mitjançant un navegador. Per tant, executeu l'ordre següent per instal·lar Tomcat:

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

9. Un cop instal·lat, el servidor Tomcat hauria d'estar en funcionament. Podeu confirmar l'estat del servidor tal com es mostra:

$ sudo systemctl status tomcat

10. Si Tomcat no s'està executant, inicieu-lo i activeu-lo a l'arrencada:

$ sudo systemctl start tomcat
$ sudo systemctl enable tomcat

11. Per defecte, Tomcat s'executa al port 8080 i si teniu l'UFW en execució, heu de permetre aquest port tal com es mostra:

$ sudo ufw allow 8080/tcp
$ sudo ufw reload

12. Amb el servidor Tomcat instal·lat, procedirem a instal·lar el client Guacamole que és una aplicació web basada en Java que permet als usuaris connectar-se al servidor.

Primer, crearem un directori de configuració tal com es mostra.

$ sudo mkdir /etc/guacamole

13. Anem a descarregar el client binari Guacamole al directori /etc/guacamole utilitzant l'ordre tal com es mostra.

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

14. Un cop descarregat, creeu un enllaç simbòlic al directori Tomcat WebApps tal com es mostra.

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

15. Per implementar l'aplicació web, reinicieu tant el servidor Tomcat com el dimoni Guacamole.

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Hi ha 2 fitxers de configuració principals associats amb Guacamole; el fitxer /etc/guacamole i /etc/guacamole/guacamole.properties que fa servir Guacamole i les seves extensions.

16. Abans de continuar, hem de crear directoris per a les extensions i biblioteques.

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

17. A continuació, configureu la variable d'entorn del directori inicial i afegiu-la al fitxer de configuració /etc/default/tomcat9.

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

18. Per determinar com es connecta Guacamole amb el dimoni Guacamole – guacd – crearem el fitxer guacamole.properties tal com es mostra.

$ sudo vim /etc/guacamole/guacamole.properties

Afegiu el contingut a continuació i deseu el fitxer.

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

19. A continuació, crearem el fitxer user-mapping.xml que defineix els usuaris que es poden connectar i iniciar sessió a Guacamole mitjançant la interfície web d'un navegador.

Abans de fer-ho, hem de generar una contrasenya hash per a l'usuari d'inici de sessió tal com es mostra. Assegureu-vos de substituir la vostra contrasenya segura per la vostra pròpia.

$ echo -n yourStrongPassword | openssl md5

Hauries d'aconseguir alguna cosa com això.

(stdin)= efd7ff06c71f155a2f07fbb23d69609

Copieu la contrasenya hash i deseu-la en algun lloc, ja que la necessitareu al fitxer user-mapping.xml.

20. Ara creeu el fitxer user-mapping.xml.

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

Enganxeu el contingut a continuació.

<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>

Hem definit dos perfils de connexió que us permeten connectar-vos a 2 sistemes remots que estan en línia:

  • Servidor Ubuntu 20.04: IP: 173.82.187.242 mitjançant protocol SSH
  • Windows Server: IP: 173.82.187.22 mitjançant protocol RDP

21. Per efectuar els canvis, reinicieu el servidor Tomcat i Guacamole:

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Fins a aquest punt, s'ha configurat el servidor i el client Guacamole. Ara accedim a la interfície d'usuari web de Guacamole mitjançant el navegador.

22. Per accedir a la interfície d'usuari web de Guacamole, obriu el vostre navegador i navegueu per l'adreça del vostre servidor tal com es mostra:

http://server-ip:8080/guacamole

23. Inicieu sessió amb les credencials que heu especificat al fitxer user-mapping.xml. En iniciar sessió, trobareu les connexions del servidor que heu definit al fitxer que apareix al botó de la secció TOTES LES CONNEXIONS.

24. Per accedir al servidor Ubuntu 20.04 LTS, feu clic a la connexió i això s'inicia una connexió SSH amb el servidor Ubuntu remot. Se us demanarà la contrasenya i un cop l'introduïu i premeu INTRO, inicieu sessió al sistema remot tal com es mostra.

Per a la màquina del servidor Windows, feu clic a la connexió del servidor corresponent i proporcioneu la contrasenya per iniciar sessió al servidor mitjançant RDP.

I això tanca la nostra guia on us vam mostrar com instal·lar i configurar Guacamole a Ubuntu 20.04 LTS.