Žiniatinklio „Guacamole“ įrankio nustatymas norint pasiekti nuotolines „Linux“/„Windows“ mašinas


Kaip sistemos administratorius, galite atsidurti (šiandien ar ateityje) dirbdami aplinkoje, kurioje egzistuoja „Windows“ ir „Linux“. Ne paslaptis, kad kai kurios didžiosios įmonės nori (arba turi) kai kurias savo gamybos paslaugas teikti „Windows“ dėžutėse, o kitas - „Linux“ serveriuose. Jei taip yra, šį vadovą sutiksite išskėstomis rankomis (kitaip eikite į priekį ir bent jau būtinai pridėkite jį prie savo žymių).

Šiame straipsnyje mes supažindinsime jus su „guacamole“ - nuotoliniu darbalaukio šliuzu, kurį valdo „Tomcat“ ir kurį reikia įdiegti tik centriniame serveryje.

„Guacamole“ pateiks internetinį valdymo skydą, kuris leis greitai pereiti iš vienos mašinos į kitą - viskas tame pačiame interneto naršyklės lange.

Šiame straipsnyje mes naudojome šias mašinas. Mes įdiegsime „Guacamole“ į „Ubuntu“ dėžutę ir naudosime ją norėdami pasiekti „Windows 10“ langelį per nuotolinio darbalaukio protokolą (RDP) ir „RHEL 7“ dėžutę naudodami SSH:

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

Sakė, pradėkime.

„Guacamole Server“ diegimas

1. Prieš diegdami guacamole, pirmiausia turėsite pasirūpinti jo priklausomybe.

$ sudo apt-get install libcairo2-dev libjpeg62-dev libpng12-dev libossp-uuid-dev libfreerdp-dev libpango1.0-dev libssh2-1-dev libssh-dev tomcat7 tomcat7-admin tomcat7-user 
# yum install cairo-devel libjpeg-devel libpng-devel uuid-devel freerdp-devel pango-devel libssh2-devel libssh-dev tomcat tomcat-admin-webapps tomcat-webapps
# dnf install cairo-devel libjpeg-devel libpng-devel uuid-devel freerdp-devel pango-devel libssh2-devel libssh-devel tomcat tomcat-admin-webapps tomcat-webapps

2. Atsisiųskite ir ištraukite „tarball“.
Nuo 2016 m. Vasario pradžios naujausia „Guacamole“ versija yra 0.9.9. Galite sužinoti „Atsisiuntimų“ puslapį, kad sužinotumėte naujausią versiją tam tikru laiku.

# wget http://sourceforge.net/projects/guacamole/files/current/source/guacamole-server-0.9.9.tar.gz 
# tar zxf guacamole-server-0.9.9.tar.gz 

3. Sudarykite programinę įrangą.

# cd guacamole-server-0.9.9 
# ./configure 

Kaip ir reikia tikėtis, konfigūracija patikrins jūsų sistemą, ar nėra reikalingų priklausomybių ir ar palaikomi ryšio protokolai (kaip matyti paryškintame kvadrate, nuotolinio darbalaukio protokolas (RDP) ir SSH palaiko anksčiau įdiegtos priklausomybės) .

Jei viskas vyksta taip, kaip tikėtasi, turėtumėte tai pamatyti, kai viskas baigsis (priešingu atveju įsitikinkite, kad įdiegėte visas būtinas priklausomybes):

Kaip rodo paskutinė aukščiau esančio paveikslėlio eilutė, paleiskite make ir make install , kad sukurtumėte programą:

# make 
# make install

4. Atnaujinkite įdiegtų bibliotekų talpyklą.

# ldconfig 

ir paspauskite Enter.

„Guacamole Client“ diegimas

Atlikus aukščiau nurodytus veiksmus, bus įdiegtas „guacamole“ serveris. Šios instrukcijos dabar padės jums nustatyti „guacd“ (tarpinio serverio demoną, kuris integruoja „Javascript“ su ryšio protokolais, tokiais kaip RDP ar SSH) ir „guacamole.war“ (klientas), komponentą, sudarantį galutinę HTML5 programą, kuri bus pateikta tu.

Atkreipkite dėmesį, kad abu komponentai („guacamole“ serveris ir klientas) turi būti įdiegti tame pačiame kompiuteryje - nereikia įrengti vadinamojo kliento mašinose, prie kurių norite prisijungti).

Norėdami atsisiųsti klientą, atlikite šiuos veiksmus:

5. Atsisiųskite žiniatinklio programų archyvą ir pakeiskite jo pavadinimą į guacamole.war.

Pastaba: Priklausomai nuo jūsų platinimo, „Tomcat“ bibliotekų katalogas gali būti/var/lib/tomcat.

# cd /var/lib/tomcat7
# wget http://sourceforge.net/projects/guacamole/files/current/binary/guacamole-0.9.9.war
# mv guacamole-0.9.9.war guacamole.war

6. Sukurkite konfigūracijos failą (/etc/guacamole/guacamole.properties). Šiame faile yra „Guacamole“ prisijungimo prie „Guacd“ instrukcijos:

# mkdir /etc/guacamole
# mkdir /usr/share/tomcat7/.guacamole

Įdėkite šį turinį į /etc/guacamole/guacamole.properties. Atminkite, kad nurodome failą, kurį sukursime kitame žingsnyje (/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

Sukurkite simbolinę nuorodą, kad „Tomcat“ galėtų skaityti failą:

# ln -s /etc/guacamole/guacamole.properties /usr/share/tomcat7/.guacamole/

7. „Guacamole“ naudoja „user-mapping.xml“, sukurkite šį failą, kad apibrėžtumėte, kuriems vartotojams leidžiama autentifikuotis „Guacamole“ žiniatinklio sąsajoje (tarp žymių <authorize>) ir kokius ryšius jie gali naudoti (tarp < kodas> žymos):

Šis vartotojo susiejimas suteikia prieigą prie „Guacamole“ žiniatinklio sąsajos vartotojo tecmint su slaptažodžiu tecmint01. Tada SSH ryšio viduje turime įdėti galiojantį vartotojo vardą, kad galėtume prisijungti prie langelio RHEL (būsite paraginti įvesti atitinkamą slaptažodį, kai „Guacamole“ pradės ryšį).

„Windows 10“ langelio atveju to daryti nereikia, nes mums bus pateiktas prisijungimo ekranas per RDP.

Norėdami gauti „tecmint01“ slaptažodžio „md5“ maišos, įveskite šią komandą:

# printf '%s' "tecmint01" | md5sum

Tada įterpkite komandos išvestį į slaptažodžio lauką žymose <authorize>:

<user-mapping>
        <authorize 
                username="tecmint" 
                password="8383339b9c90775ac14693d8e620981f" 
                encoding="md5">
                <connection name="RHEL 7">
                        <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>

Kaip ir visų failų, kuriuose yra neskelbtinos informacijos, atveju svarbu apriboti teises ir pakeisti failo user-mapping.xml nuosavybės teisę:

# chmod 600 /etc/guacamole/user-mapping.xml
# chown tomcat7:tomcat7 /etc/guacamole/user-mapping.xml

Pradėkite „Tomcat“ ir „guacd“.

# service tomcat7 start
# /usr/local/sbin/guacd &

„Guacamole“ žiniatinklio sąsajos paleidimas

8. Norėdami pasiekti „Guacamole“ žiniatinklio sąsają, paleiskite naršyklę ir nukreipkite ją į http:// server: 8080/guacamole , kur serveris yra jūsų serverio pagrindinis vardas arba IP adresas (mūsų atveju tai kodas> http://192.168.0.100:8080/guacamole ) ir prisijunkite naudodami anksčiau pateiktus kredencialus (vartotojo vardas: tecmint, slaptažodis: tecmint01):

9. Spustelėję Prisijungti, būsite nukreipti į administracinę sąsają, kurioje pamatysite jungčių, prie kurių vartotojas gali prisijungti, sąrašą, kaip nurodyta user-mapping.xml :

10. Eikite į priekį ir spustelėkite langelį RHEL 7, kad prisijungtumėte kaip „gacanepa“ (prisijungimo apibrėžime nurodytas vartotojo vardas).

Atkreipkite dėmesį, kaip ryšio šaltinis nustatytas į 192.168.0.100 („Guacamole“ serverio IP), neatsižvelgiant į mašinos, kurią naudojate interneto sąsajai atidaryti, IP adresą:

11. Jei norite uždaryti ryšį, įveskite exit ir paspauskite Enter. Jūs būsite paraginti grįžti į pagrindinę sąsają (Pagrindinis puslapis), iš naujo prisijungti arba atsijungti nuo Guacamole:

12. Dabar atėjo laikas išbandyti nuotolinio darbalaukio ryšį su „Windows 10“:

Sveikiname! Dabar žiniatinklio naršyklėje galite pasiekti „Windows 10“ įrenginį ir „RHEL 7“ serverį.

Santrauka

Šiame straipsnyje mes paaiškinome, kaip įdiegti ir konfigūruoti „Guacamole“, kad būtų suteikta prieiga prie nuotolinių mašinų per RDP ir SSH. Oficialioje svetainėje pateikiama išsami dokumentacija, padedanti nustatyti prieigą naudojant kitus protokolus, pvz., VNC ir kitus autentifikavimo mechanizmus, pvz., DB pagrindu.

Kaip visada, nedvejodami meskite mums pastabą, jei turite klausimų ar pasiūlymų apie šį straipsnį. Mes taip pat laukiame jūsų sėkmės istorijų.

Nuorodos nuorodos: http://guac-dev.org/