Jinsi ya Kufunga Guacamole ili Kupata Kompyuta yako kutoka Popote kwenye Ubuntu


Apache Guacamole ni lango la msingi la mtandao lisilo na mteja ambalo hutoa ufikiaji wa mbali kwa seva na hata Kompyuta za mteja kupitia kivinjari cha wavuti kwa kutumia itifaki kama vile SSH, VNC na RDP.

Apache Guacamole inajumuisha sehemu kuu 2:

  • Seva ya Guacamole: Hii hutoa vipengele vyote vya upande wa seva na asili vinavyohitajika na Guacamole ili kuunganisha kwenye kompyuta za mezani za mbali.
  • Mteja wa Guacamole: Hili ni programu ya wavuti ya HTML 5 na kiteja kinachokuruhusu kuunganisha kwenye seva/koptop zako za mbali. Hii inaungwa mkono na seva ya Tomcat.

Katika nakala hii, tutakutembeza kupitia usakinishaji wa Apache Guacamole kwenye Ubuntu 20.04.

Kabla ya kuanza, hakikisha kuwa unayo yafuatayo:

  • Mfano wa mtumiaji wa sudo aliyesanidiwa.
  • Kiwango cha chini cha 2GB RAM

Hebu sasa tuchunguze na kusakinisha Guacamole kwenye Ubuntu 20.04 LTS.

Katika ukurasa huu

  • Jinsi ya Kusakinisha Apache Guacamole kwenye Seva ya Ubuntu
  • Jinsi ya kusakinisha Tomcat kwenye Seva ya Ubuntu
  • Jinsi ya Kusakinisha Kiteja cha Guacamole katika Ubuntu
  • Jinsi ya Kusanidi Kiteja cha Guacamole katika Ubuntu
  • Jinsi ya Kuweka Miunganisho ya Seva ya Guacamole katika Ubuntu
  • Jinsi ya Kufikia Seva ya Ubuntu ya Mbali kupitia Guacamole Web UI

1. Ufungaji wa Apache Guacamole unafanywa kwa kuandaa msimbo wa chanzo. Ili hili kufanikiwa, baadhi ya zana za ujenzi zinahitajika kama sharti. Kwa hivyo, endesha amri ifuatayo ya 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. Mara tu usakinishaji wa zana za ujenzi ukamilika, endelea na pakua faili ya hivi karibuni ya chanzo cha tarball kutoka kwa amri ya wget hapa chini.

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

3. Ifuatayo, toa faili ya tarball ya Guacamole na uende kwenye folda isiyobanwa.

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

4. Baadaye, tekeleza hati ya kusanidi ili kuthibitisha ikiwa kuna vitegemezi vyovyote vinavyokosekana. Hii kawaida huchukua dakika mbili au zaidi, kwa hivyo kuwa na subira wakati hati inakagua utegemezi. Msururu wa matokeo utaonyeshwa ikijumuisha maelezo kuhusu toleo la seva kama inavyoonyeshwa.

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

5. Kukusanya na kusakinisha Guacamole, endesha amri hapa chini, moja baada ya nyingine.

$ sudo make
$ sudo make install

6. Kisha endesha amri ya ldconfig ili kuunda viungo na akiba yoyote inayofaa kwa maktaba zilizoshirikiwa hivi majuzi zaidi katika saraka ya seva ya Guacamole.

$ sudo ldconfig

7. Ili kufanya seva ya Guacamole iendeshe, tutaanzisha Daemon ya Guacamole - guacd - na kuiwezesha kuwasha na kuthibitisha hali kama inavyoonyeshwa.

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

8. Seva ya Tomcat ni sharti kwani itatumika kuhudumia maudhui ya mteja wa Guacamole kwa watumiaji wanaounganisha kwenye seva kupitia kivinjari. Kwa hivyo, endesha amri ifuatayo ili kusanikisha Tomcat:

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

9. Baada ya usakinishaji, seva ya Tomcat inapaswa kuwa juu na kufanya kazi. Unaweza kuthibitisha hali ya seva kama inavyoonyeshwa:

$ sudo systemctl status tomcat

10. Ikiwa Tomcat haifanyi kazi, anza na uwashe kwenye buti:

$ sudo systemctl start tomcat
$ sudo systemctl enable tomcat

11. Kwa chaguo-msingi, Tomcat huendesha kwenye bandari 8080 na ikiwa una UFW inayoendesha, unahitaji kuruhusu mlango huu kama inavyoonyeshwa:

$ sudo ufw allow 8080/tcp
$ sudo ufw reload

12. Seva ya Tomcat ikiwa imesakinishwa, Tutaendelea kusakinisha kiteja cha Guacamole ambacho ni programu ya wavuti inayotegemea Java ambayo inaruhusu watumiaji kuunganishwa kwenye seva.

Kwanza, tutaunda saraka ya usanidi kama inavyoonyeshwa.

$ sudo mkdir /etc/guacamole

13. Tutapakua binary teja ya Guacamole kwenye saraka ya /etc/guacamole kwa kutumia amri kama inavyoonyeshwa.

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

14. Mara baada ya kupakuliwa, tengeneza kiungo cha ishara kwa saraka ya Tomcat WebApps kama inavyoonyeshwa.

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

15. Ili kupeleka programu ya wavuti, anzisha upya seva ya Tomcat na daemon ya Guacamole.

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Kuna faili 2 kuu za usanidi zinazohusiana na Guacamole; faili ya /etc/guacamole na /etc/guacamole/guacamole.properties ambayo inatumiwa na Guacamole na viendelezi vyake.

16. Kabla ya kuendelea, Tunahitaji kuunda saraka za viendelezi na maktaba.

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

17. Kisha, sanidi mabadiliko ya mazingira ya saraka ya nyumbani na uiongeze kwenye faili ya usanidi /etc/default/tomcat9.

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

18. Kubainisha jinsi Guacamole inaunganishwa na daemon ya Guacamole - guacd - tutaunda faili ya guacamole.properties kama inavyoonyeshwa.

$ sudo vim /etc/guacamole/guacamole.properties

Ongeza yaliyomo hapa chini na uhifadhi faili.

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

19. Kisha, tutaunda faili ya user-mapping.xml ambayo inafafanua watumiaji ambao wanaweza kuunganisha na kuingia kwenye Guacamole kupitia kiolesura cha wavuti kwenye kivinjari.

Kabla ya kufanya hivyo tunahitaji kutoa nenosiri la haraka kwa mtumiaji wa kuingia kama inavyoonyeshwa. Hakikisha umebadilisha nenosiri lako dhabiti na nenosiri lako mwenyewe.

$ echo -n yourStrongPassword | openssl md5

Unapaswa kupata kitu kama hiki.

(stdin)= efd7ff06c71f155a2f07fbb23d69609

Nakili nenosiri la haraka na ulihifadhi mahali fulani kwani utahitaji hii katika faili ya user-mapping.xml.

20. Sasa unda faili ya user-mapping.xml.

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

Bandika yaliyomo hapa chini.

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

Tumefafanua wasifu mbili za muunganisho zinazokuruhusu kuunganisha kwenye mifumo 2 ya mbali ambayo iko mtandaoni:

  • Seva ya Ubuntu 20.04 - IP: 173.82.187.242 kupitia itifaki ya SSH
  • Seva ya Windows - IP: 173.82.187.22 kupitia itifaki ya RDP

21. Ili kutekeleza mabadiliko, anzisha tena seva ya Tomcat na Guacamole:

$ sudo systemctl restart tomcat9
$ sudo systemctl restart guacd

Kwa hatua hii, seva ya Guacamole na mteja imesanidiwa. Wacha sasa tufikie UI ya wavuti ya Guacamole kwa kutumia kivinjari.

22. Ili kufikia kiolesura cha wavuti cha Guacamole, fungua kivinjari chako na uvinjari anwani ya seva yako kama inavyoonyeshwa:

http://server-ip:8080/guacamole

23. Ingia kwa kutumia stakabadhi ulizobainisha kwenye faili ya user-mapping.xml. Baada ya kuingia, utapata miunganisho ya seva ambayo umefafanua katika faili iliyoorodheshwa kwenye kitufe chini ya sehemu ya ALL CONNECTIONS.

24. Ili kufikia seva ya Ubuntu 20.04 LTS, bofya kwenye muunganisho na hii itaanzisha muunganisho wa SSH kwa seva ya mbali ya Ubuntu. Utaulizwa nenosiri na ukishaliandika na kugonga ENTER, utaingia kwenye mfumo wa mbali kama inavyoonyeshwa.

Kwa mashine ya seva ya Windows, bofya kwenye muunganisho wa seva husika na utoe nenosiri ili kuingia kwenye seva kupitia RDP.

Na hii inakamilisha mwongozo wetu ambapo tulikuonyesha jinsi ya kusakinisha na kusanidi Guacamole kwenye Ubuntu 20.04 LTS.