Búsqueda de sitios web

Cómo instalar Guacamole para acceder a sus computadoras desde cualquier lugar en Ubuntu


Apache Guacamole es una puerta de enlace basada en web de código abierto y sin cliente que proporciona acceso remoto a servidores e incluso a PC cliente a través de un navegador web utilizando protocolos como SSH, VNC. y RDP.

Apache Guacamole consta de 2 componentes principales:

  • Servidor Guacamole: proporciona todos los componentes nativos y del lado del servidor necesarios para que Guacamole se conecte a escritorios remotos.
  • Cliente Guacamole: Esta es una aplicación web HTML 5 y un cliente que le permite conectarse a sus servidores/escritorios remotos. Esto está respaldado por el servidor Tomcat.

En este artículo, lo guiaremos a través de la instalación de Apache Guacamole en Ubuntu 20.04.

Requisitos previos

Antes de comenzar, asegúrese de tener lo siguiente:

  • Una instancia de Ubuntu 20.04 LTS con el usuario sudo configurado.
  • Mínimo 2 GB de RAM

Profundicemos ahora e instalemos Guacamole en Ubuntu 20.04 LTS.

En esta página

  • Cómo instalar Apache Guacamole en el servidor Ubuntu
  • Cómo instalar Tomcat en el servidor Ubuntu
  • Cómo instalar el cliente Guacamole en Ubuntu
  • Cómo configurar el cliente Guacamole en Ubuntu
  • Cómo configurar las conexiones del servidor Guacamole en Ubuntu
  • Cómo acceder al servidor remoto de Ubuntu a través de la interfaz de usuario web de Guacamole

Paso 1: Instalar Apache Guacamole en el servidor Ubuntu

1. La instalación de Apache Guacamole se realiza compilando el código fuente. Para lograr esto, se requieren algunas herramientas de compilación como requisito previo. Por lo tanto, ejecute el siguiente comando apto:

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. Una vez completada la instalación de las herramientas de compilación, continúe y descargue el archivo fuente tarball más reciente desde la página de lanzamiento de Guacamole. En el momento de redactar esta guía, la última versión es la versión Guacamole 1.2.0. Para descargar el último archivo tarball, simplemente ejecute el comando wget a continuación.

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

3. A continuación, extraiga el archivo tarball de Guacamole y navegue hasta la carpeta sin comprimir.

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

4. A continuación, ejecute el script de configuración para verificar si faltan dependencias. Esto suele tardar aproximadamente dos minutos, así que tenga paciencia mientras el script realiza la comprobación de dependencia. Se mostrará una gran cantidad de resultados que incluyen detalles sobre la versión del servidor, como se muestra.

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

5. Para compilar e instalar Guacamole, ejecute los siguientes comandos, uno tras otro.

sudo make
sudo make install

6. Luego ejecute el comando ldconfig para crear enlaces relevantes y almacenar en caché las bibliotecas compartidas más recientemente en el directorio del servidor Guacamole.

sudo ldconfig

7. Para ejecutar el servidor Guacamole, iniciaremos el demonio Guacamoleguacd – y lo habilitaremos en arranque y verifique el estado como se muestra.

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

Paso 2: instalar Tomcat en el servidor Ubuntu

8. El servidor Tomcat es un requisito ya que se utilizará para servir el contenido del cliente Guacamole a los usuarios que se conectan al servidor a través de un navegador. Por lo tanto, ejecute el siguiente comando para instalar Tomcat:

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

9. Tras la instalación, el servidor Tomcat debería estar en funcionamiento. Puede confirmar el estado del servidor como se muestra:

sudo systemctl status tomcat

10. Si Tomcat no se está ejecutando, inícielo y habilítelo al arrancar:

sudo systemctl start tomcat
sudo systemctl enable tomcat

11. De forma predeterminada, Tomcat se ejecuta en el puerto 8080 y si tiene el UFW ejecutándose, debe permitirlo. este puerto como se muestra:

sudo ufw allow 8080/tcp
sudo ufw reload

Paso 3: Instalar el cliente Guacamole en Ubuntu

12. Con el servidor Tomcat instalado, procederemos a instalar el cliente Guacamole que es una aplicación web basada en Java que permite a los usuarios conectarse al servidor.

Primero, crearemos un directorio de configuración como se muestra.

sudo mkdir /etc/guacamole

13. Vamos a descargar el binario del cliente Guacamole al directorio /etc/guacamole usando el comando como se muestra.

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

14. Una vez descargado, cree un enlace simbólico al directorio Tomcat WebApps como se muestra.

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

15. Para implementar la aplicación web, reinicie el servidor Tomcat y el demonio Guacamole.

sudo systemctl restart tomcat9
sudo systemctl restart guacd

Paso 4: Configurar el cliente Guacamole en Ubuntu

Hay 2 archivos de configuración principales asociados con Guacamole; el archivo /etc/guacamole y el archivo /etc/guacamole/guacamole.properties que utiliza Guacamole y sus extensiones.

16. Antes de continuar, necesitamos crear directorios para las extensiones y bibliotecas.

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

17. A continuación, configure la variable de entorno del directorio de inicio y agréguela al archivo de configuración /etc/default/tomcat9.

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

Paso 5: Configurar las conexiones del servidor Guacamole en Ubuntu

18. Para determinar cómo Guacamole se conecta con el demonio Guacamoleguacd – crearemos el guacamole .properties como se muestra.

sudo vim /etc/guacamole/guacamole.properties

Agregue el contenido a continuación y guarde el archivo.

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

19. A continuación, crearemos el archivo user-mapping.xml que define los usuarios que pueden conectarse e iniciar sesión en Guacamole a través de la interfaz web de un navegador.

Antes de hacerlo, debemos generar una contraseña hash para el usuario que inicia sesión, como se muestra. Asegúrese de reemplazar su contraseña segura con su propia contraseña.

echo -n yourStrongPassword | openssl md5

Deberías obtener algo como esto.

(stdin)= efd7ff06c71f155a2f07fbb23d69609

Copie la contraseña hash y guárdela en algún lugar, ya que la necesitará en el archivo user-mapping.xml.

20. Ahora cree el archivo user-mapping.xml.

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

Pegue el contenido a continuación.

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

Hemos definido dos perfiles de conexión que le permiten conectarse a 2 sistemas remotos que están en línea:

  • Servidor Ubuntu 20.04 – IP: 173.82.187.242 mediante protocolo SSH
  • Windows Server – IP: 173.82.187.22 mediante protocolo RDP

21. Para efectuar los cambios, reinicie el servidor Tomcat y Guacamole:

sudo systemctl restart tomcat9
sudo systemctl restart guacd

Hasta este punto, el servidor y el cliente Guacamole han sido configurados. Ahora accedamos a la interfaz de usuario web de Guacamole usando el navegador.

Paso 6: acceder a la interfaz de usuario web de Guacamole

22. Para acceder a la interfaz de usuario web de Guacamole, abra su navegador y busque la dirección de su servidor como se muestra:

http://server-ip:8080/guacamole

23. Inicie sesión con las credenciales que especificó en el archivo user-mapping.xml. Al iniciar sesión, encontrará las conexiones del servidor que definió en el archivo que aparece en el botón debajo de la sección TODAS LAS CONEXIONES.

24. Para acceder al servidor Ubuntu 20.04 LTS, haga clic en la conexión y esto inicia una conexión SSH al servidor Ubuntu remoto. Se le solicitará la contraseña y una vez que la escriba y presione ENTRAR, iniciará sesión en el sistema remoto como se muestra.

Para la máquina del servidor Windows, haga clic en la conexión del servidor respectivo y proporcione la contraseña para iniciar sesión en el servidor a través de RDP.

Y esto concluye nuestra guía donde le mostramos cómo instalar y configurar Guacamole en Ubuntu 20.04 LTS.