Als systeembeheerder kun je (nu of in de toekomst) in een omgeving werken waar: ramen en Linux naast elkaar bestaan. Het is geen geheim dat sommige grote bedrijven er de voorkeur aan geven (of moeten) sommige van hun productieservices in Windows-boxen en andere in Linux-servers te laten draaien. Als dat jouw geval is, zul je deze gids met open armen ontvangen (anders ga je gang en zorg ervoor dat je hem aan je bladwijzers toevoegt).
In dit artikel laten we je kennismaken met: guacamole, een externe desktop-gateway aangedreven door Kater die alleen op een centrale server hoeft te worden geïnstalleerd.
Lees ook: Toegang krijgen tot Remote Linux Desktop met behulp van TightVNC
Guacamole zal een webgebaseerd bedieningspaneel bieden waarmee u snel van de ene machine naar de andere kunt schakelen - allemaal binnen hetzelfde webbrowservenster.
In dit artikel hebben we de volgende machines gebruikt. Wij zullen installeren Guacamole
in een Ubuntu box en gebruik deze om toegang te krijgen tot een Windows 10 doos over Extern bureaublad-protocol (RDP) en een RHEL 7 box met SSH:Guacamole-server: Ubuntu 14.04 - IP 192.168.0.100. SSH-box: RHEL 7 – IP 192.168.0.18. Extern bureaublad-box: Windows 10 – IP 192.168.0.19.
Dat gezegd hebbende, laten we beginnen.
1. Voor installatie: guacamole, moet u eerst voor de afhankelijkheden zorgen.
$ 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 installeer cairo-devel libjpeg-devel libpng-devel uuid-devel freerdp-devel pango-devel libssh2-devel libssh-devel tomcat tomcat-admin-webapps tomcat-webapps.
2. Download en pak de tarball uit.
Vanaf vroeg februari, 2016, de nieuwste versie van Guacamole is 0.9.9. U kunt de pagina Downloads raadplegen om op een bepaald moment de nieuwste versie te vinden.
# 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. Compileer de software.
# cd guacamole-server-0.9.9 # ./configure
Zoals te verwachten is, configureren zal uw systeem controleren op de aanwezigheid van de vereiste afhankelijkheden en op ondersteunde communicatieprotocollen (zoals te zien is in het gemarkeerde vierkant, Extern bureaublad-protocol (RDP) en SSH worden ondersteund door de eerder geïnstalleerde afhankelijkheden).
Als alles gaat zoals verwacht, zou je dit moeten zien wanneer het is voltooid (zorg er anders voor dat je alle benodigde afhankelijkheden hebt geïnstalleerd):
Zoals de laatste regel in de bovenstaande afbeelding suggereert, run maken
en laten installeren
om het programma samen te stellen:
# maak # maak installeren.
4. Werk de cache van geïnstalleerde bibliotheken bij.
# ldconfig
en raak Binnenkomen.
Na het voltooien van de bovenstaande stappen is de guacamole-server geïnstalleerd. De volgende instructies helpen u nu bij het instellen guacd (de proxy-daemon die Javascript integreert met communicatieprotocollen zoals RDP of SSH) en guacamole.war (de klant), het onderdeel waaruit de uiteindelijke HTML5-toepassing bestaat die aan u wordt gepresenteerd.
Merk op dat beide componenten (guacamole-server en cliënt) moeten op dezelfde machine worden geïnstalleerd – het is niet nodig om een zogenaamde client te installeren op de machines waarmee u verbinding wilt maken).
Volg deze stappen om de client te downloaden:
5. Download het webapplicatie-archief en wijzig de naam in guacamole.war.
Opmerking: Afhankelijk van uw distributie, bevindt de map Tomcat-bibliotheken zich mogelijk op: /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. Maak het configuratiebestand (/etc/guacamole/guacamole.properties). Dit bestand bevat de instructies voor Guacamole om verbinding mee te maken: guacd:
# mkdir /etc/guacamole. # mkdir /usr/share/tomcat7/.guacamole.
Voeg de volgende inhoud toe aan: /etc/guacamole/guacamole.properties. Merk op dat we verwijzen naar een bestand dat we in de volgende stap zullen maken (/etc/guacamole/user-mapping.xml):
guacd-hostnaam: localhost. guacd-poort: 4822. gebruikerstoewijzing: /etc/guacamole/user-mapping.xml. auth-provider: net.sourceforge.guacamole.net.basic. BasicFileAuthenticationProvider. basic-user-mapping: /etc/guacamole/user-mapping.xml.
En maak een symbolische link zodat Tomcat het bestand kan lezen:
# ln -s /etc/guacamole/guacamole.properties /usr/share/tomcat7/.guacamole/
7. Guacamole gebruikt de user-mapping.xml, maak dit bestand om te definiëren welke gebruikers zich mogen authenticeren op de Guacamole-webinterface (tussen tags) en welke verbindingen ze kunnen gebruiken (tussen labels):
De volgende gebruikerstoewijzing verleent de gebruiker toegang tot de Guacamole-webinterface: tecmin
met wachtwoord tecmint01. Vervolgens moeten we binnen de SSH-verbinding een geldige gebruikersnaam plaatsen om in te loggen op de RHEL-box (u wordt gevraagd om het bijbehorende wachtwoord in te voeren wanneer Guacamole de verbinding tot stand brengt).
In het geval van de Windows 10 box, is het niet nodig om dat te doen, omdat we het inlogscherm via RDP te zien krijgen.
Om de md5-hash van het wachtwoord te verkrijgen: tecmint01, typ de volgende opdracht:
# printf '%s' "tecmint01" | md5som.
Voeg vervolgens de uitvoer van de opdracht in het wachtwoordveld in de labels:
ssh 192.168.0.1822gacanepardp 192.168.0.193389
Zoals het geval is met alle bestanden die gevoelige informatie bevatten, is het belangrijk om de machtigingen te beperken en het eigendom van de user-mapping.xml
het dossier:
# chmod 600 /etc/guacamole/user-mapping.xml. # chown tomcat7:tomcat7 /etc/guacamole/user-mapping.xml.
Start Tomcat en guacd.
#service tomcat7 start. # /usr/local/sbin/guacd &
8. Om toegang te krijgen tot de Guacamole-webinterface, start u een browser en wijst u deze naar: http://server: 8080/guacamole
waarbij server de hostnaam of het IP-adres van uw server is (in ons geval is dat: http://192.168.0.100:8080/guacamole
) en log in met de eerder gegeven inloggegevens (gebruikersnaam: tecmin, wachtwoord: tecmint01):
9. Nadat u op Inloggen hebt geklikt, wordt u naar de beheerdersinterface geleid waar u de lijst met verbindingen van de gebruiker ziet tecmin heeft toegang tot, volgens user-mapping.xml
:
10. Ga je gang en klik op de RHEL 7 vak om in te loggen als gacanepa (de gebruikersnaam gespecificeerd in de verbindingsdefinitie).
Let op hoe de verbindingsbron is ingesteld op: 192.168.0.100 (het IP-adres van de Guacamole-server), ongeacht het IP-adres van de machine die u gebruikt om de webinterface te openen:
11. Als u de verbinding wilt verbreken, typt u Uitgang en raak Binnenkomen. U wordt gevraagd om terug te keren naar de hoofdinterface (Thuis), maak opnieuw verbinding of log uit van Guacamole:
12. Nu is het tijd om de externe bureaubladverbinding met Windows 10 te proberen:
Gefeliciteerd! Nu heb je toegang tot een Windows 10 machine en een RHEL 7 server vanuit een webbrowser.
In dit artikel hebben we uitgelegd hoe u Guacamole kunt installeren en configureren om toegang tot externe machines via RDP en SSH toe te staan. De officiële website biedt uitgebreide documentatie om u te helpen bij het instellen van toegang met behulp van andere protocollen, zoals: VNC en ander authenticatiemechanisme, zoals op DB gebaseerde..
Zoals altijd, aarzel niet om ons een bericht te sturen als je vragen of suggesties hebt over dit artikel. We kijken ook uit naar uw succesverhalen.
Referentielinks: http://guac-dev.org/