Wéi installéiere ech Guacamole fir Zougang zu Äre Computeren iwwerall an Ubuntu


Apache Guacamole ass e Clientlos Open-Source Web-baséiert Paart deen Remote Zougang zu Serveren a souguer Client PCs iwwer e Webbrowser mat Protokoller wéi SSH, VNC an RDP ubitt.

Apache Guacamole besteet aus 2 Haaptkomponenten:

  • Guacamole Server: Dëst bitt all Server-Säit an gebierteg Komponenten déi Guacamole erfuerdert fir mat Ferndesktops ze verbannen.
  • Guacamole Client: Dëst ass eng HTML 5 Webapplikatioun an e Client deen Iech erlaabt Iech mat Äre Fernserveren/Desktops ze verbannen. Dëst gëtt vum Tomcat Server ënnersträicht.

An dësem Artikel wäerte mir Iech duerch d'Installatioun vun Apache Guacamole op Ubuntu 20.04 goen.

Ier Dir ufänkt, gitt sécher datt Dir déi folgend hutt:

  • Eng Instanz vum sudo Benotzer konfiguréiert.
  • Minimum 2GB RAM

Loosst eis elo an d'Guacamole op Ubuntu 20.04 LTS verdéiwen an installéieren.

Op dëser Säit

  • Wéi installéiere ech Apache Guacamole an Ubuntu Server
  • Wéi installéiert Tomcat op Ubuntu Server
  • Wéi installéiere ech de Guacamole Client an Ubuntu
  • Wéi de Guacamole Client an Ubuntu konfiguréieren
  • Wéi konfiguréieren ech Guacamole Server Connections an Ubuntu
  • Wéi Zougang zu Remote Ubuntu Server iwwer Guacamole Web UI

1. D'Installatioun vun Apache Guacamole gëtt gemaach andeems de Quellcode kompiléiert gëtt. Fir dëst z'erreechen, sinn e puer Bauinstrumenter als Viraussetzung erfuerderlech. Dofir fuert de folgenden apt Kommando:

$ 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. Wann d'Installatioun vun de Build Tools fäerdeg ass, fuert weider a luet déi lescht Tarball Quelldatei vum wget Kommando hei ënnen erof.

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

3. Als nächst extrahéiert d'Guacamole Tarball Datei a navigéiert an den onkompriméierten Dossier.

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

4. Fuert duerno de Konfiguratiounsskript aus fir z'iwwerpréiwen ob et fehlend Ofhängegkeete gëtt. Dëst dauert normalerweis zwou Minutten oder esou, also sidd Gedold well de Skript d'Ofhängegkeetskontroll ausféiert. E Barrage vun der Ausgab gëtt ugewisen mat Detailer iwwer d'Serverversioun wéi gewisen.

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

5. Fir Guacamole ze kompiléieren an z'installéieren, lafen d'Befehle hei ënnen, een nom aneren.

$ sudo make
$ sudo make install

6. Fuert dann de Kommando ldconfig fir all relevant Linken a Cache op déi lescht gedeelt Bibliothéiken am Guacamole Serververzeichnis ze kreéieren.

$ sudo ldconfig

7. Fir de Guacamole-Server ze lafen, starten mir de Guacamole Daemon - guacd - an aktivéiert et beim Boot-up a verifizéiere de Status wéi gewisen.

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

8. Tomcat Server ass eng Fuerderung wéi et benotzt gëtt fir de Guacamole Client Inhalt fir Benotzer ze déngen, déi mam Server duerch e Browser verbannen. Dofir fuert de folgende Kommando fir Tomcat installéiert ze kréien:

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

9. Bei der Installatioun soll den Tomcat-Server op a lafen. Dir kënnt de Status vum Server bestätegen wéi gewisen:

$ sudo systemctl status tomcat

10. Wann Tomcat net leeft, start an aktivéiert et beim Boot:

$ sudo systemctl start tomcat
$ sudo systemctl enable tomcat

11. Par défaut leeft Tomcat um Hafen 8080 a wann Dir den UFW lafen hutt, musst Dir dësen Hafen erlaben wéi gewisen:

$ sudo ufw allow 8080/tcp
$ sudo ufw reload

12. Mat dem Tomcat Server installéiert, Mir wäerte weidergoen fir de Guacamole Client z'installéieren deen eng Java-baséiert Webapplikatioun ass, déi d'Benotzer erlaabt mat dem Server ze verbannen.

Als éischt erstellen mir e Konfiguratiounsverzeechnes wéi gewisen.

$ sudo mkdir /etc/guacamole

13. Mir ginn de Guacamole Client Binär eroflueden an den /etc/guacamole Verzeichnis mam Kommando wéi gewisen.

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

14. Eemol erofgeluede, erstellt e symbolesche Link zum Tomcat WebApps Verzeechnes wéi gewisen.

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

15. Fir d'Web App z'installéieren, restart souwuel den Tomcat Server wéi och de Guacamole Daemon.

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Et ginn 2 grouss Konfiguratiounsdateien mat Guacamole verbonnen; d' /etc/guacamole an d' /etc/guacamole/guacamole.properties Datei déi vu Guacamole benotzt gëtt an seng Extensiounen.

16. Ier Dir weider geet, Mir mussen Verzeichnisser fir d'Extensiounen a Bibliothéiken erstellen.

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

17. Als nächst konfiguréiert d'Hausverzeechnes-Ëmfeldvariabel an fügen se un d' /etc/default/tomcat9 Konfiguratiounsdatei.

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

18. Fir festzestellen, wéi Guacamole mam Guacamole Daemon verbënnt - guacd - wäerte mir d'Guacamole.properties Datei erstellen wéi gewisen.

$ sudo vim /etc/guacamole/guacamole.properties

Füügt den Inhalt hei drënner a späichert d'Datei.

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

19. Als nächst wäerte mir d'Benotzer-mapping.xml-Datei erstellen, déi d'Benotzer definéiert, déi sech op Guacamole iwwer d'Web-Interface op engem Browser verbannen an aloggen.

Ier Dir dat maacht, musse mir en hashed Passwuert fir de Login Benotzer generéieren wéi gewisen. Gitt sécher Äert staarkt Passwuert mat Ärem eegene Passwuert ze ersetzen.

$ echo -n yourStrongPassword | openssl md5

Dir sollt esou eppes kréien.

(stdin)= efd7ff06c71f155a2f07fbb23d69609

Kopéiert dat hashed Passwuert a späichert et iergendwou wéi Dir dëst an der User-mapping.xml Datei braucht.

20. Erstellt elo d'Datei User-mapping.xml.

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

Paste den Inhalt hei drënner.

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

Mir hunn zwee Verbindungsprofile definéiert, déi Iech erlaben mat 2 Fernsystemer ze verbannen, déi online sinn:

  • Ubuntu 20.04 Server - IP: 173.82.187.242 iwwer SSH Protokoll
  • Windows Server - IP: 173.82.187.22 iwwer RDP Protokoll

21. Fir d'Ännerungen auszeféieren, den Tomcat Server a Guacamole nei starten:

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Zu dësem Zäitpunkt ass de Guacamole Server a Client konfiguréiert. Loosst eis elo Zougang zu Guacamole Web UI mam Browser benotzen.

22. Fir Zougang zum Guacamole Web UI ze kréien, öffnen Äre Browser a kuckt d'Adress vun Ärem Server wéi gewisen:

http://server-ip:8080/guacamole

23. Login mat den Umeldungsinformatiounen, déi Dir an der User-mapping.xml Datei uginn hutt. Wann Dir Iech ugemellt hutt, fannt Dir d'Serververbindungen déi Dir an der Datei definéiert hutt, déi um Knäppchen ënner der ALL CONNECTIONS Sektioun opgezielt ass.

24. Fir Zougang zum Ubuntu 20.04 LTS Server ze kréien, klickt op d'Verbindung an dëst initiéiert eng SSH Verbindung zum Remote Ubuntu Server. Dir wäert fir d'Passwuert gefuerdert ginn a wann Dir et aginn an ENTER dréckt, sidd Dir op de Fernsystem ageloggt wéi gewisen.

Fir d'Windows Server Maschinn, klickt op déi jeeweileg Serververbindung a gitt d'Passwuert fir Iech op de Server iwwer RDP unzemellen.

An dëst wéckelt eise Guide op, wou mir Iech gewisen hunn wéi Dir Guacamole op Ubuntu 20.04 LTS installéiere kënnt an konfiguréieren.