I-install ang Guacamole alang sa Remote Linux/Windows Access sa Ubuntu


Isip usa ka tigdumala sa sistema, mahimo nimong makita ang imong kaugalingon (karon o sa umaabot) nga nagtrabaho sa usa ka palibot diin ang Windows ug Linux nag-uban.

Dili kini sekreto nga ang pipila ka dagkong mga kompanya mas gusto (o kinahanglan) magpadagan sa pipila sa ilang mga serbisyo sa produksyon sa mga kahon sa Windows ug uban pa sa mga server sa Linux.

[ Tingali ganahan ka usab: 11 Labing Maayo nga Mga Himan sa Pag-access sa Remote Linux Desktop ]

Kung mao kana ang imong kahimtang, dawaton nimo kini nga giya nga adunay bukas nga mga bukton (kung dili, padayon ug labing menos siguroha nga idugang kini sa imong mga bookmark).

Niini nga artikulo, ipaila namo kanimo ang guacamole, usa ka hilit nga desktop gateway nga gipadagan sa Tomcat nga kinahanglan ra nga ma-install sa usa ka sentral nga server.

[ Tingali ganahan ka usab: Unsaon Pag-access sa Remote Linux Desktop Gamit ang TightVNC ]

Ang Guacamole maghatag ug web-based nga control panel nga magtugot kanimo sa pagbalhin dayon gikan sa usa ka makina ngadto sa lain – tanan sulod sa samang bintana sa web browser.

Niini nga artikulo, among gigamit ang mosunod nga mga makina. I-install namon ang Guacamole sa usa ka kahon sa Ubuntu ug gamiton kini aron ma-access ang usa ka Windows 10 kahon sa Remote Desktop Protocol (RDP) ug usa ka kahon sa RHEL gamit ang SSH network protocol:

Guacamole server: Ubuntu 20.04 - IP 192.168.0.100
Remote SSH box: RHEL 8 – IP 192.168.0.18
Remote desktop box: Windows 10 – IP 192.168.0.19

Ingon niana, magsugod na ta.

Pag-instalar sa Guacamole Server sa Ubuntu

1. Sa dili pa i-install ang guacamole, kinahanglan nimo nga atimanon una ang mga dependency niini.

$ sudo apt update
$ sudo apt install -y gcc vim curl wget g++ libcairo2-dev libjpeg-turbo8-dev libpng-dev \
libtool-bin libossp-uuid-dev libavcodec-dev libavutil-dev libswscale-dev build-essential \
libpango1.0-dev libssh2-1-dev libvncserver-dev libtelnet-dev freerdp2-dev libwebsockets-dev \
libssl-dev libvorbis-dev libwebp-dev tomcat9 tomcat9-admin tomcat9-user

2. I-download ug i-extract ang tarball. Sa sayong bahin sa Pebrero 2021, ang pinakabag-o nga bersyon sa Guacamole mao ang 1.3.0. Mahimo nimong i-refer ang panid sa Guacamole Downloads aron mahibal-an ang pinakabag-o nga bersyon sa gihatag nga oras.

$ wget https://dlcdn.apache.org/guacamole/1.3.0/source/guacamole-server-1.3.0.tar.gz 
$ tar zxf guacamole-server-1.3.0.tar.gz  

3. I-compile ang software.

$ cd guacamole-server-1.3.0/
$ ./configure

Sama sa gilauman, susihon sa pag-configure ang imong sistema alang sa presensya sa gikinahanglan nga mga dependency ug alang sa gisuportahan nga mga protocol sa komunikasyon (sama sa makita sa gipasiugda nga square, Remote Desktop Protocol (RDP) ug SSH gisuportahan sa mga dependency nga na-install sa sayo pa) .

Kung ang tanan moadto sama sa gipaabut kinahanglan nimo nga makita kini kung kini makompleto (kung dili, siguroha nga imong gi-install ang tanan nga kinahanglan nga mga dependency):

Sama sa gisugyot sa kataposang linya sa ibabaw nga hulagway, padagana ang make ug make install aron matigom ang programa:

$ make 
$ sudo make install

4. I-update ang cache sa mga na-install nga librarya.

$ sudo ldconfig 

ug pindota ang Enter.

Pag-instalar sa Guacamole Client sa Ubuntu

Human makompleto ang mga lakang sa ibabaw, ang guacamole server ma-install na. Ang mosunod nga mga instruksyon makatabang kanimo karon sa pag-set up sa guacd (ang proxy nga daemon nga nag-integrate sa Javascript sa mga protocol sa komunikasyon sama sa RDP o SSH) ug guacamole.war (ang kliyente), ang component nga naglangkob sa katapusang HTML5 nga aplikasyon nga ipresentar ngadto sa ikaw.

Timan-i nga ang duha ka mga sangkap (guacamole server ug kliyente) kinahanglan nga i-install sa parehas nga makina - dili kinahanglan nga mag-install ug usa ka gitawag nga kliyente sa mga makina nga gusto nimong ikonektar).

Aron ma-download ang kliyente, sunda kini nga mga lakang:

5. I-download ang web application archive ug usba ang ngalan niini sa guacamole.war.

Hinumdomi: Depende sa imong pag-apod-apod, ang direktoryo sa mga librarya sa Tomcat mahimong nahimutang sa /var/lib/tomcat.

$ cd /var/lib/tomcat9/
$ sudo wget https://dlcdn.apache.org/guacamole/1.3.0/binary/guacamole-1.3.0.war
$ sudo mv guacamole-1.3.0.war webapps/guacamole.war

6. Paghimo sa configuration file (/etc/guacamole/guacamole.properties). Kini nga file naglangkob sa mga panudlo alang sa Guacamole sa pagkonektar sa guacd:

$ sudo mkdir /etc/guacamole
$ sudo mkdir /usr/share/tomcat9/.guacamole
$ sudo nano /etc/guacamole/guacamole.properties

Isulod ang mosunod nga mga sulod sa /etc/guacamole/guacamole.properties. Timan-i nga among gi-refer ang usa ka file nga among himoon sa sunod nga lakang (/etc/guacamole/user-mapping.xml):

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

Ug paghimo usa ka simbolo nga link alang sa Tomcat aron mabasa ang file:

$ sudo ln -s /etc/guacamole/guacamole.properties /usr/share/tomcat9/.guacamole/

7. Ang Guacamole naggamit sa user-mapping.xml, paghimo niini nga payl aron sa pagtino kon kinsa nga mga tiggamit ang gitugotan sa pag-authenticate sa Guacamole web interface (tali sa <authorize> tags) ug unsa nga mga koneksyon ang ilang magamit (tali sa <koneksyon> mga tag):

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

Ang mosunod nga user mapping naghatag ug access sa Guacamole web interface ngadto sa user tecmint nga adunay password tecmint01. Dayon, sulod sa SSH nga koneksyon, kinahanglan namong ibutang ang usa ka balido nga username aron maka-log in sa RHEL box (maaghat ka sa pagsulod sa katugbang nga password sa dihang ang Guacamole magsugod sa koneksyon).

Sa kaso sa Windows 10 nga kahon, dili kinahanglan nga buhaton kana tungod kay kita ipresentar sa login screen sa RDP.

Aron makuha ang md5 hash sa password tecmint01, i-type ang mosunod nga sugo:

# printf '%s' "tecmint01" | md5sum

Dayon isulod ang output sa command sa password field sulod sa <authorize> tags:

<user-mapping>
        <authorize 
                username="tecmint" 
                password="8383339b9c90775ac14693d8e620981f" 
                encoding="md5">
                <connection name="RHEL 8">
                        <protocol>ssh</protocol>
                        <param name="hostname">192.168.0.18</param>
                        <param name="port">22</param>
                        <param name="username">gacanepa</param>
                </connection>
                <connection name="Windows 10">
                        <protocol>rdp</protocol>
                        <param name="hostname">192.168.0.19</param>
                        <param name="port">3389</param>
                </connection>
        </authorize>
</user-mapping>

Sama sa kahimtang sa tanan nga mga file nga adunay sensitibo nga kasayuran, hinungdanon nga higpitan ang mga pagtugot ug usbon ang pagpanag-iya sa user-mapping.xml file:

$ sudo chmod 600 /etc/guacamole/user-mapping.xml
$ sudo chown tomcat:tomcat /etc/guacamole/user-mapping.xml

Pagsugod Tomcat ug guacd.

$ sudo service tomcat9 start
$ sudo /usr/local/sbin/guacd &

Paglansad sa Guacamole Web Interface

8. Aron ma-access ang Guacamole web interface, maglunsad og browser ug itudlo kini sa http://server:8080/guacamole diin ang server mao ang hostname o IP address sa imong server (sa among kaso kini mao ang http://192.168.0.100:8080/guacamole) ug pag-log in gamit ang mga kredensyal nga gihatag kaniadto (username: tecmint, password: tecmint01):

9. Human sa pag-klik sa Login, dad-on ka sa administratibong interface diin imong makita ang lista sa mga koneksyon nga adunay access sa user tecmint, sumala sa user-mapping.xml:

10. Sige ug i-klik ang RHEL 8 nga kahon aron maka-log in isip gacanepa (ang username nga gipiho sa kahulugan sa koneksyon).

Timan-i kung giunsa ang gigikanan sa koneksyon gibutang sa 192.168.0.100 (ang IP sa server sa Guacamole), bisan unsa pa ang IP address sa makina nga imong gigamit aron maablihan ang interface sa web:

11. Kung gusto nimong isira ang koneksyon, i-type ang exit ug pindota ang Enter. Maaghat ka sa pagbalik sa main interface (Balay), pagkonektar pag-usab, o pag-log out gikan sa Guacamole:

12. Karon na ang panahon sa pagsulay sa remote desktop connection sa Windows 10:

Mga pahalipay! Karon maka-access ka sa usa ka Windows 10 nga makina ug usa ka RHEL 8 server gikan sa sulod sa usa ka web browser.

Summary

Sa kini nga artikulo, among gipasabut kung giunsa ang pag-install ug pag-configure sa Guacamole aron tugutan ang pag-access sa mga hilit nga makina sa RDP ug SSH. Naghatag ang opisyal nga website og daghang dokumentasyon aron matabangan ka nga mag-set up gamit ang ubang mga protocol, sama sa VNC ug uban pang mga mekanismo sa pag-authenticate, sama sa DB-based…

Sama sa kanunay, ayaw pagpanuko sa paghulog kanamo usa ka mubo nga sulat kung adunay ka mga pangutana o sugyot bahin sa kini nga artikulo. Kami usab nagpaabut nga makadungog sa imong mga istorya sa kalampusan.