Kako namestiti Guacamole za dostop do računalnikov od koder koli v Ubuntuju


Apache Guacamole je odprtokodni spletni prehod brez odjemalca, ki prek oddaljenega brskalnika s protokoli, kot so SSH, VNC in RDP, omogoča oddaljeni dostop do strežnikov in celo odjemalskih osebnih računalnikov.

Apache Guacamole vsebuje dve glavni komponenti:

  • Guacamole Server: zagotavlja vse stranske in izvorne komponente, ki jih Guacamole zahteva za povezavo z oddaljenimi namizji.
  • Naročnik Guacamole: to je spletna aplikacija HTML 5 in odjemalec, ki omogoča povezavo z oddaljenimi strežniki/namizji. To podpira strežnik Tomcat.

V tem članku vas bomo vodili skozi namestitev Apache Guacamole v Ubuntu 20.04.

Preden začnete, se prepričajte, da imate naslednje:

  • Primer uporabnika sudo, konfiguriranega.
  • Najmanj 2 GB RAM-a

Poglejmo zdaj in namestite Guacamole na Ubuntu 20.04 LTS.

Na tej strani

  • Kako namestiti Apache Guacamole v strežnik Ubuntu
  • Kako namestiti Tomcat na strežnik Ubuntu
  • Kako namestiti odjemalca Guacamole v Ubuntu
  • Kako konfigurirati odjemalca Guacamole v Ubuntu
  • Kako konfigurirati povezave strežnika Guacamole v Ubuntu
  • Kako dostopati do oddaljenega strežnika Ubuntu prek spletnega uporabniškega vmesnika Guacamole

1. Namestitev Apache Guacamole se opravi z zbiranjem izvorne kode. Da bi to dosegli, je potrebno nekaj orodij za gradnjo. Zato zaženite naslednji ukaz 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. Ko je namestitev orodij za gradnjo končana, nadaljujte in prenesite najnovejšo izvorno datoteko tarball iz spodnjega ukaza wget.

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

3. Nato izvlecite datoteko tarball Guacamole in se pomaknite v nestisnjeno mapo.

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

4. Nato zaženite konfiguracijski skript, da preverite, ali manjkajo odvisnosti. To običajno traja približno dve minuti, zato bodite potrpežljivi, saj skript izvaja preverjanje odvisnosti. Prikazal se bo rezultat, vključno s podrobnostmi o različici strežnika, kot je prikazano.

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

5. Če želite zbrati in namestiti Guacamole, zaženite spodnje ukaze, enega za drugim.

$ sudo make
$ sudo make install

6. Nato zaženite ukaz ldconfig, da ustvarite ustrezne povezave in predpomnilnik do najnovejših knjižnic v skupni rabi v imeniku strežnika Guacamole.

$ sudo ldconfig

7. Če želite zagnati strežnik Guacamole, bomo zagnali Guacamole Daemon - guacd - in ga omogočili ob zagonu ter preverili stanje, kot je prikazano.

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

8. Tomcat strežnik je pogoj, saj bo uporabljen za strežbo vsebine odjemalca Guacamole uporabnikom, ki se na strežnik povežejo prek brskalnika. Zato zaženite naslednji ukaz, da namestite Tomcat:

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

9. Po namestitvi mora strežnik Tomcat delovati. Stanje strežnika lahko potrdite, kot je prikazano:

$ sudo systemctl status tomcat

10. Če se Tomcat ne zažene, ga zaženite in omogočite ob zagonu:

$ sudo systemctl start tomcat
$ sudo systemctl enable tomcat

11. Tomcat privzeto deluje na vratih 8080 in če imate UFW, morate dovoliti ta vrata, kot je prikazano:

$ sudo ufw allow 8080/tcp
$ sudo ufw reload

12. Z nameščenim strežnikom Tomcat bomo nadaljevali z namestitvijo odjemalca Guacamole, ki je spletna aplikacija, ki temelji na Javi in uporabnikom omogoča povezavo s strežnikom.

Najprej bomo ustvarili konfiguracijski imenik, kot je prikazano.

$ sudo mkdir /etc/guacamole

13. Datoteko odjemalca Guacamole bomo prenesli v imenik/etc/guacamole z ukazom, kot je prikazano.

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

14. Po prenosu ustvarite simbolno povezavo do imenika Tomcat WebApps, kot je prikazano.

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

15. Če želite razviti spletno aplikacijo, znova zaženite strežnik Tomcat in demon Guacamole.

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Z Guacamolom sta povezani dve glavni konfiguracijski datoteki; datoteki/etc/guacamole in /etc/guacamole/guacamole.properties, ki jo uporablja Guacamole, in je njena razširitev.

16. Pred nadaljevanjem moramo ustvariti imenike za razširitve in knjižnice.

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

17. Nato konfigurirajte spremenljivko okolja domačega imenika in jo dodajte konfiguracijski datoteki/etc/default/tomcat9.

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

18. Da bi ugotovili, kako se Guacamole poveže z demonom Guacamole - guacd - bomo ustvarili datoteko guacamole.properties, kot je prikazano.

$ sudo vim /etc/guacamole/guacamole.properties

Dodajte spodnjo vsebino in shranite datoteko.

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

19. Nato bomo ustvarili datoteko user-mapping.xml, ki določa uporabnike, ki se lahko prek spletnega vmesnika v brskalniku povežejo in prijavijo v Guacamole.

Pred tem moramo ustvariti zgoščeno geslo za uporabnika za prijavo, kot je prikazano. Močno geslo zamenjajte z lastnim geslom.

$ echo -n yourStrongPassword | openssl md5

Moral bi dobiti kaj takega.

(stdin)= efd7ff06c71f155a2f07fbb23d69609

Kopirajte zgoščeno geslo in ga shranite nekam, saj ga boste potrebovali v datoteki user-mapping.xml.

20. Zdaj ustvarite datoteko user-mapping.xml.

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

Spodnjo vsebino prilepite.

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

Določili smo dva profila povezave, ki vam omogočata povezavo z dvema oddaljenima sistemoma, ki sta povezana:

  • Ubuntu 20.04 strežnik - IP: 173.82.187.242 prek protokola SSH
  • Windows Server - IP: 173.82.187.22 prek protokola RDP

21. Če želite uveljaviti spremembe, znova zaženite strežnik Tomcat in Guacamole:

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Do tega trenutka sta bila konfigurirana strežnik in odjemalec Guacamole. Z brskalnikom pojdimo zdaj na spletni uporabniški vmesnik Guacamole.

22. Za dostop do spletnega uporabniškega vmesnika Guacamole odprite brskalnik in pobrskajte po naslovu strežnika, kot je prikazano:

http://server-ip:8080/guacamole

23. Prijavite se z uporabo poverilnic, ki ste jih določili v datoteki user-mapping.xml. Po prijavi boste našli strežniške povezave, ki ste jih definirali v datoteki, navedeni na gumbu pod odsekom VSE POVEZAVE.

24. Za dostop do strežnika Ubuntu 20.04 LTS kliknite povezavo in to sproži povezavo SSH z oddaljenim strežnikom Ubuntu. Pozvani boste k geslu in ko ga vnesete in pritisnete ENTER, boste prijavljeni v oddaljeni sistem, kot je prikazano.

Za strežniški sistem Windows kliknite na ustrezno strežniško povezavo in vnesite geslo za prijavo v strežnik prek RDP.

In to zaključuje naš vodnik, kjer smo vam pokazali, kako namestiti in konfigurirati Guacamole na Ubuntu 20.04 LTS.