Tīmekļa Guacamole rīka iestatīšana, lai piekļūtu attālajām Linux/Windows mašīnām


Kā sistēmas administrators jūs varat atrast sevi (šodien vai nākotnē) strādāt vidē, kurā pastāv Windows un Linux. Nav noslēpums, ka daži lieli uzņēmumi dod priekšroku (vai tiem ir jādarbojas) dažus savus ražošanas pakalpojumus darbināt Windows kastēs, bet citus Linux serveros. Ja tas tā ir jūsu gadījumā, jūs laipni gaidīsit šo rokasgrāmatu ar atplestām rokām (pretējā gadījumā dodieties uz priekšu un vismaz pārliecinieties, ka pievienojat to grāmatzīmēm).

Šajā rakstā mēs jūs iepazīstināsim ar guacamole, attālo darbvirsmas vārteju, ko nodrošina Tomcat un kas jāinstalē tikai centrālajā serverī.

Guacamole nodrošinās tīmekļa vadības paneli, kas ļaus ātri pārslēgties no vienas mašīnas uz otru - viss vienā un tajā pašā tīmekļa pārlūkprogrammas logā.

Šajā rakstā mēs izmantojām šādas mašīnas. Mēs instalēsim Guacamole Ubuntu lodziņā un izmantosim to, lai piekļūtu Windows 10 lodziņam, izmantojot attālās darbvirsmas protokolu (RDP), un RHEL 7 lodziņam, izmantojot 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

Tas nozīmē, ka sāksim.

Guacamole servera instalēšana

1. Pirms guacamole instalēšanas vispirms būs jārūpējas par tā atkarībām.

$ 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. Lejupielādējiet un izvelciet tarball.
Sākot ar 2016. gada februāra sākumu, jaunākā Guacamole versija ir 0.9.9. Lai uzzinātu jaunāko versiju noteiktā laikā, varat atsaukties uz lapu Lejupielādes.

# 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. Kompilējiet programmatūru.

# cd guacamole-server-0.9.9 
# ./configure 

Kā tas ir sagaidāms, konfigurēšana pārbaudīs jūsu sistēmā nepieciešamo atkarību klātbūtni un atbalstītos sakaru protokolus (kā redzams iezīmētajā kvadrātā, attālās darbvirsmas protokols (RDP) un SSH tiek atbalstīti agrāk instalētajās atkarībās) .

Ja viss notiek, kā paredzēts, to vajadzētu redzēt, kad tas ir pabeigts (pretējā gadījumā pārliecinieties, vai esat instalējis visas nepieciešamās atkarības):

Kā liecina augšējā attēla pēdējā rindiņa, palaidiet make un make install , lai kompilētu programmu:

# make 
# make install

4. Atjauniniet instalēto bibliotēku kešatmiņu.

# ldconfig 

un nospiediet Enter.

Guacamole klienta instalēšana

Pēc iepriekš minēto darbību veikšanas tiks instalēts guacamole serveris. Šīs instrukcijas tagad palīdzēs jums iestatīt guacd (starpniekservera dēmonu, kas integrē Javascript ar komunikācijas protokoliem, piemēram, RDP vai SSH) un guacamole.war (klients), komponentu, kas veido galīgo HTML5 lietojumprogrammu, kas tiks parādīta jūs.

Ņemiet vērā, ka abi komponenti (guacamole serveris un klients) jāinstalē vienā un tajā pašā mašīnā - nav nepieciešams instalēt tā saukto klientu mašīnās, ar kurām vēlaties izveidot savienojumu).

Lai lejupielādētu klientu, rīkojieties šādi:

5. Lejupielādējiet tīmekļa lietojumprogrammu arhīvu un nomainiet tā nosaukumu uz guacamole.war.

Piezīme: Atkarībā no izplatīšanas Tomcat bibliotēku direktorijs var atrasties/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. Izveidojiet konfigurācijas failu (/etc/guacamole/guacamole.properties). Šajā failā ir instrukcijas, kā Gvakamolei izveidot savienojumu ar guacd:

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

Ievietojiet šādu saturu mapē /etc/guacamole/guacamole.properties. Ņemiet vērā, ka mēs atsaucamies uz failu, kuru izveidosim nākamajā darbībā (/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

Un izveidojiet simbolisku saiti, lai Tomcat varētu izlasīt failu:

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

7. Guacamole izmanto user-mapping.xml, izveidojiet šo failu, lai noteiktu, kuriem lietotājiem ir atļauts autentificēties Guacamole tīmekļa saskarnē (starp tagiem <authorize> un kādus savienojumus viņi var izmantot (starp < kods> tagi):

Šī lietotāja kartēšana piešķir piekļuvi Guacamole tīmekļa saskarnei lietotāja tecmint ar paroli tecmint01. Pēc tam SSH savienojuma iekšpusē mums jāievieto derīgs lietotājvārds, lai pieteiktos lodziņā RHEL (jums tiks piedāvāts ievadīt atbilstošo paroli, kad Guacamole uzsāks savienojumu).

Windows 10 lodziņa gadījumā tas nav jādara, jo mums tiks parādīts pieteikšanās ekrāns, izmantojot RDP.

Lai iegūtu paroles tecmint01 md5 hash, ierakstiet šādu komandu:

# printf '%s' "tecmint01" | md5sum

Pēc tam ievietojiet komandas izvadi paroles laukā tagos <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>

Tāpat kā visiem failiem, kas satur sensitīvu informāciju, ir svarīgi ierobežot atļaujas un mainīt faila user-mapping.xml īpašumtiesības:

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

Sāciet Tomcat un guacd.

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

Guacamole tīmekļa saskarnes palaišana

8. Lai piekļūtu Guacamole tīmekļa saskarnei, palaidiet pārlūku un norādiet uz http:// server: 8080/guacamole , kur serveris ir jūsu servera resursdatora nosaukums vai IP adrese (mūsu gadījumā tas ir < kods> http://192.168.0.100:8080/guacamole ) un piesakieties, izmantojot iepriekš norādītos akreditācijas datus (lietotājvārds: tecmint, parole: tecmint01):

9. Pēc noklikšķināšanas uz Pieteikšanās jūs tiksiet novirzīts uz administratīvo saskarni, kur redzēsit to lietotāju savienojumu sarakstu, kuriem ir piekļuve lietotājam tecmint, kā norādīts user-mapping.xml :

10. Iet uz priekšu un noklikšķiniet uz lodziņa RHEL 7, lai pieteiktos kā gacanepa (savienojuma definīcijā norādītais lietotājvārds).

Ņemiet vērā, kā savienojuma avots ir iestatīts uz 192.168.0.100 (Guacamole servera IP), neatkarīgi no tās mašīnas IP adreses, kuru izmantojat tīmekļa saskarnes atvēršanai:

11. Ja vēlaties aizvērt savienojumu, ierakstiet exit un nospiediet Enter. Jums tiks piedāvāts atgriezties galvenajā saskarnē (mājās), atkārtoti izveidot savienojumu vai atteikties no Guacamole:

12. Tagad ir pienācis laiks izmēģināt attālās darbvirsmas savienojumu ar Windows 10:

Apsveicam! Tagad tīmekļa pārlūkprogrammā varat piekļūt Windows 10 datoram un RHEL 7 serverim.

Kopsavilkums

Šajā rakstā mēs esam paskaidrojuši, kā instalēt un konfigurēt Guacamole, lai atļautu piekļuvi attālajām mašīnām, izmantojot RDP un SSH. Oficiālajā vietnē ir pieejama plaša dokumentācija, kas palīdzēs iestatīt piekļuvi, izmantojot citus protokolus, piemēram, VNC un citus autentifikācijas mehānismus, piemēram, uz DB balstītus.

Kā vienmēr, nevilcinieties nomest mums piezīmi, ja jums ir kādi jautājumi vai ieteikumi par šo rakstu. Mēs arī ceram dzirdēt jūsu veiksmes stāstus.

Atsauces saites: http://guac-dev.org/