Kaip įdiegti „Guacamole“, kad galėtumėte pasiekti savo kompiuterius iš bet kurios „Ubuntu“ vietos


„Apache Guacamole“ yra be kliento atviro kodo žiniatinklio šliuzas, teikiantis nuotolinę prieigą prie serverių ir net klientų kompiuterių per interneto naršyklę naudojant protokolus, tokius kaip SSH, VNC ir RDP.

Apache Guacamole sudaro 2 pagrindiniai komponentai:

  • „Guacamole“ serveris: tai suteikia visus serverio ir vietinius komponentus, kurių reikia „Guacamole“ prisijungti prie nuotolinių darbalaukių.
  • „Guacamole“ klientas: tai yra HTML 5 žiniatinklio programa ir klientas, leidžiantis prisijungti prie nuotolinių serverių/stalinių kompiuterių. Tai patvirtina „Tomcat“ serveris.

Šiame straipsnyje aptarsime „Apache Guacamole“ diegimą „Ubuntu 20.04“.

Prieš pradėdami įsitikinkite, kad turite:

  • Konfigūruotas „sudo“ vartotojo egzempliorius.
  • Mažiausiai 2 GB RAM

Dabar įsigilinkime ir įdiekime „Guacamole“ į „Ubuntu 20.04 LTS“.

Šiame puslapyje

  • Kaip įdiegti „Apache Guacamole“ į „Ubuntu Server“
  • Kaip įdiegti „Tomcat“ į „Ubuntu Server“
  • Kaip įdiegti „Guacamole Client“ į „Ubuntu“
  • Kaip konfigūruoti „Guacamole“ klientą „Ubuntu“
  • Kaip konfigūruoti „Guacamole“ serverio ryšius „Ubuntu“
  • Kaip pasiekti nuotolinį „Ubuntu“ serverį per „Guacamole“ žiniatinklio vartotojo sąsają

1. „Apache Guacamole“ diegimas atliekamas sudarant šaltinio kodą. Kad tai būtų pasiekta, būtina sąlyga yra kai kurie kūrimo įrankiai. Todėl paleiskite šią apt komandą:

$ 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. Kai baigsite diegimo įrankius, tęskite ir atsisiųskite naujausią „tarball“ šaltinio failą iš toliau pateiktos „wget“ komandos.

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

3. Tada ištraukite „Guacamole tarball“ failą ir eikite į nesuspaustą aplanką.

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

4. Tada atlikite konfigūravimo scenarijų, kad patikrintumėte, ar nėra trūkstamų priklausomybių. Paprastai tai trunka maždaug dvi minutes, todėl būkite kantrūs, kai scenarijus atlieka priklausomybės patikrą. Bus rodoma išvesties užtvara, įskaitant informaciją apie serverio versiją, kaip parodyta.

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

5. Norėdami sukompiliuoti ir įdiegti „Guacamole“, vykdykite toliau pateiktas komandas viena po kitos.

$ sudo make
$ sudo make install

6. Tada paleiskite komandą ldconfig, kad sukurtumėte visas susijusias nuorodas ir talpyklą į paskutines bendrinamas bibliotekas „Guacamole“ serverio kataloge.

$ sudo ldconfig

7. Norėdami paleisti „Guacamole“ serverį, paleisime „Guacamole Daemon“ - „guacd“ - ir įgalinsime jį paleidžiant, ir patikrinsime būseną, kaip parodyta.

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

8. „Tomcat“ serveris yra reikalavimas, nes jis bus naudojamas „Guacamole“ kliento turiniui aptarnauti vartotojams, kurie prisijungia prie serverio per naršyklę. Todėl paleiskite šią komandą, kad įdiegtumėte „Tomcat“:

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

9. Įdiegus „Tomcat“ serveris turėtų veikti. Serverio būseną galite patvirtinti taip, kaip parodyta:

$ sudo systemctl status tomcat

10. Jei „Tomcat“ neveikia, paleiskite ir įjunkite jį įkrovos metu:

$ sudo systemctl start tomcat
$ sudo systemctl enable tomcat

11. Pagal numatytuosius nustatymus „Tomcat“ veikia 8080 prievade, o jei veikia UFW, turite leisti šį prievadą, kaip parodyta:

$ sudo ufw allow 8080/tcp
$ sudo ufw reload

12. Įdiegę „Tomcat“ serverį, mes pradėsime diegti „Guacamole“ klientą, kuris yra „Java“ pagrindu sukurta žiniatinklio programa, leidžianti vartotojams prisijungti prie serverio.

Pirmiausia sukursime konfigūracijos katalogą, kaip parodyta.

$ sudo mkdir /etc/guacamole

13. Atsisiųsime „Guacamole“ kliento dvejetainį failą į/etc/guacamole katalogą naudodami komandą, kaip parodyta.

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

14. Atsisiųsdami sukurkite simbolinę nuorodą į „Tomcat WebApps“ katalogą, kaip parodyta.

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

15. Norėdami įdiegti žiniatinklio programą, iš naujo paleiskite „Tomcat“ serverį ir „Guacamole“ deemoną.

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Yra 2 pagrindiniai konfigūracijos failai, susieti su „Guacamole“;/etc/guacamole ir /etc/guacamole/guacamole.properties failą, kurį naudoja Guacamole, ir jo plėtinius.

16. Prieš tęsdami, turime sukurti plėtinių ir bibliotekų katalogus.

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

17. Tada sukonfigūruokite namų katalogo aplinkos kintamąjį ir pridėkite jį prie/etc/default/tomcat9 konfigūracijos failo.

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

18. Norėdami nustatyti, kaip „Guacamole“ prisijungia prie „Guacamole“ deemono - „guacd“, sukursime failą „guacamole.properties“, kaip parodyta.

$ sudo vim /etc/guacamole/guacamole.properties

Pridėkite toliau pateiktą turinį ir išsaugokite failą.

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

19. Tada sukursime „user-mapping.xml“ failą, kuriame bus apibrėžti vartotojai, kurie galės prisijungti ir prisijungti prie „Guacamole“ per naršyklės žiniatinklio sąsają.

Prieš tai atlikdami turime sugeneruoti prisijungimo vartotojo slaptažodį, kaip parodyta. Būtinai pakeiskite tvirtą slaptažodį savo slaptažodžiu.

$ echo -n yourStrongPassword | openssl md5

Turėtumėte gauti kažką panašaus.

(stdin)= efd7ff06c71f155a2f07fbb23d69609

Nukopijuokite maišos slaptažodį ir išsaugokite jį kažkur, nes jums to reikės faile user-mapping.xml.

20. Dabar sukurkite failą user-mapping.xml.

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

Žemiau įklijuokite turinį.

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

Mes nustatėme du ryšio profilius, kurie leidžia prisijungti prie 2 nuotolinių sistemų, esančių internete:

  • „Ubuntu 20.04 Server“ - IP: 173.82.187.242 per SSH protokolą
  • „Windows Server“ - IP: 173.82.187.22 per RDP protokolą

21. Norėdami atlikti pakeitimus, iš naujo paleiskite „Tomcat“ serverį ir „Guacamole“:

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Šiuo metu „Guacamole“ serveris ir klientas buvo sukonfigūruoti. Dabar naudokitės naršykle prieigai prie „Guacamole“ žiniatinklio vartotojo sąsajos.

22. Norėdami pasiekti „Guacamole“ žiniatinklio vartotojo sąsają, atidarykite savo naršyklę ir naršykite savo serverio adresą, kaip parodyta:

http://server-ip:8080/guacamole

23. Prisijunkite naudodami kredencialus, kuriuos nurodėte faile user-mapping.xml. Prisijungę rasite serverio jungtis, kurias apibrėžėte faile, pateiktame skiltyje VISOS JUNGTYS.

24. Norėdami prisijungti prie „Ubuntu 20.04 LTS“ serverio, spustelėkite ryšį ir tai užmezga SSH ryšį su nuotoliniu „Ubuntu“ serveriu. Jums bus paprašyta įvesti slaptažodį ir, kai jį įvesite ir paspausite ENTER, būsite prisijungę prie nuotolinės sistemos, kaip parodyta.

Jei naudojate „Windows“ serverio mašiną, spustelėkite atitinkamą serverio ryšį ir pateikite slaptažodį, kad prisijungtumėte prie serverio per RDP.

Tai užbaigia mūsų vadovą, kuriame mes parodėme, kaip įdiegti ir konfigūruoti „Guacamole“ „Ubuntu 20.04 LTS“.