Apache-VDI-Alternative Guacamole ermöglicht ohne Client-Installation Fernzugriff aus dem Internet

Von Thomas Joos 4 min Lesedauer

„Apache Guacamole“ ist eine Open-Source-Software für den Remote-Desktop-Zugang. Anwender erhalten dadurch eine Client-lose, Browser-basierte Anwendung, die einfache Integration und hohe Sicherheit bietet.

Wie Autor Thomas Joos schreibt, handelt es sich bei „Apache Guacamole“ um eine leistungsfähige und flexible Anwendung für den Fernzugriff auf Desktops und Server. Er zeigt, wie Administratoren:innen das Tool einrichten.(Bild:  KI-generiert mit "Dalle-E" in „Canva“)
Wie Autor Thomas Joos schreibt, handelt es sich bei „Apache Guacamole“ um eine leistungsfähige und flexible Anwendung für den Fernzugriff auf Desktops und Server. Er zeigt, wie Administratoren:innen das Tool einrichten.
(Bild: KI-generiert mit "Dalle-E" in „Canva“)

Apache Guacamole ist eine Client-lose Remote-Desktop-Gateway-Technik, die vollständig im Web-Browser ausgeführt wird. Das Tool ermöglicht Benutzern den Zugriff auf Desktop-Umgebungen über gängige Protokolle wie VNC, RDP und SSH ohne die Notwendigkeit, Client-Software zu installieren.

Architektur und Funktionsweise von Apache Guacamole

Die Architektur von Apache Guacamole besteht aus zwei Hauptkomponenten: dem Guacamole Server (guacd) und dem Guacamole Client, der als Web-Anwendung implementiert ist. Der Guacamole Server agiert als Proxy und übersetzt zwischen den Remote-Desktop-Protokollen und dem Guacamole-Protokoll, welches für die Kommunikation mit dem Webclient verwendet wird. Der Web-Client ist in HTML5 und Javascript geschrieben und ermöglicht es Benutzern, über ihren Browser eine Verbindung zu Remote-Desktops herzustellen.

Installation und Konfiguration

Für die Installation von Apache Guacamole sind folgende Schritte notwendig:

  • 1. Installation des Guacamole Servers (guacd), der auf Linux-Systemen über die Paketverwaltung oder durch Kompilieren des Quellcodes installiert werden kann.
  • 2. Installation des Guacamole Web-Clients, der in einem Servlet-Container wie „Apache Tomcat“ ausgeführt wird.
  • 3. Konfiguration der Verbindungsparameter für die unterstützten Protokolle (VNC, RDP, SSH). Diese Konfiguration wird in der Datei „guacamole.properties“ und optional in einer Datenbank vorgenommen.

Sicherheit und Benutzerverwaltung

Apache Guacamole bietet verschiedene Mechanismen zur Gewährleistung der Sicherheit und Benutzerverwaltung:

  • Unterstützung für verschiedene Authentifizierungsmethoden wie LDAP, OpenID und Datenbank-basierte Authentifizierung.
  • Verschlüsselung der Datenübertragung zwischen dem Client und dem Guacamole Server.
  • Feingranulare Zugriffskontrolle auf Verbindungen und Benutzerberechtigungen.
  • Integration und Anpassung

Guacamole kann in bestehende Systeme integriert und angepasst werden. Dazu bietet das Tool Unterstützung für Erweiterungen und Plugins zur Erweiterung der Funktionalität. Ebenfalls interessant ist die anpassbare Benutzeroberfläche durch Modifikation der Web-Anwendung. Dazu kommt eine API für die Integration in andere Anwendungen und Systeme.

Für die Installation von Apache Guacamole unter „Ubuntu“ sind mehrere Schritte erforderlich. Zunächst müssen die Paketquellen aktualisiert und Abhängigkeiten installiert werden. Dies umfasst eine Reihe von Bibliotheken und Tools, die für die ordnungsgemäße Funktion von Guacamole notwendig sind:

sudo apt updatesudo apt install libcairo2-dev libjpeg-turbo8-dev libpng-dev libtool-bin libossp-uuid-devsudo apt install libavcodec-dev libavformat-dev libavutil-dev libswscale-devsudo apt install freerdp2-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libwebsockets-devsudo apt install libpulse-dev libssl-dev libvorbis-dev libwebp-dev tomcat9 tomcat9-admin tomcat9-user

Nachdem die Abhängigkeiten installiert sind, wird der Guacamole Server (guacd) heruntergeladen, kompiliert und installiert. Dieser Vorgang beinhaltet das Herunterladen des Quellcodes, das Kompilieren und das Installieren des Dienstes auf dem System:

wget https://downloads.apache.org/guacamole/1.4.0/source/guacamole-server-1.4.0.tar.gztar -xzf guacamole-server-1.4.0.tar.gzcd guacamole-server-1.4.0./configure --with-init-dir=/etc/init.dmakesudo make installsudo ldconfigsudo systemctl enable guacdsudo systemctl start guacd

Parallel dazu erfolgt die Einrichtung des Guacamole Web-Client. Dies beinhaltet das Herunterladen des WAR-Files und das Verschieben in das entsprechende Verzeichnis des Tomcat-Servlet-Containers. Anschließend wird eine symbolische Verknüpfung erstellt, um den Client im Tomcat-Container verfügbar zu machen:

wget https://downloads.apache.org/guacamole/1.4.0/binary/guacamole-1.4.0.warsudo mkdir /etc/guacamolesudo mv guacamole-1.4.0.war /etc/guacamole/guacamole.warsudo ln -s /etc/guacamole/guacamole.war /var/lib/tomcat9/webapps/

Für die Konfiguration von Guacamole ist die Bearbeitung der „guacamole.properties“-Datei notwendig, in der die Verbindungs- und Benutzerinformationen festgelegt werden. Abschließend wird der Tomcat-Server neugestartet, um die Installation abzuschließen:

sudo systemctl restart tomcat9

Nach diesen Schritten ist Apache Guacamole unter Ubuntu installiert und kann über den Web-Browser erreicht werden.

RDP-Zugriff auf Windows 11 oder Windows Server 2022

Um Apache Guacamole für den Fernzugriff via RDP auf einen Rechner mit „Windows 11“ oder „Windows Server 2022“ zu nutzen, müssen Administratoren zunächst sicherstellen, dass der RDP-Zugang auf dem Windows-Zielgerät korrekt konfiguriert ist. Dies beinhaltet die Aktivierung des Remote-Desktop-Features und die Konfiguration der Firewall, um RDP-Verbindungen zu erlauben. Zudem ist es wichtig, die IP-Adresse oder den Host-Namen des Windows-Geräts sowie die Anmeldeinformationen für den Zugriff zu kennen.

„Apache Guacamole“ erlaubt unteranderem eine Fernwartung mit VNC.  (Bild:  Thomas Joos)
„Apache Guacamole“ erlaubt unteranderem eine Fernwartung mit VNC.
(Bild: Thomas Joos)

Nach der Einrichtung des Windows-Systems erfolgt die Konfiguration in Apache Guacamole. Dafür wird eine neue Verbindung über die Guacamole-Benutzeroberfläche erstellt.

In den Verbindungseinstellungen wählt man als Protokoll "RDP" und gibt die IP-Adresse oder den Host-Namen des Windows-Geräts ein. Weitere erforderliche Details umfassen den Benutzernamen und das Passwort des Windows-Kontos, das für den RDP-Zugriff verwendet wird. Zusätzliche RDP-spezifische Einstellungen wie Bildschirmauflösung und Tastatur-Layout können ebenfalls konfiguriert werden.

Sobald die Konfiguration abgeschlossen ist, können Anwender über den Web-Browser auf Apache Guacamole zugreifen, die konfigurierte Verbindung auswählen und sich damit auf dem Windows 11 oder Windows Server 2022 Rechner einloggen. Der Fernzugriff erfolgt direkt im Browser-Fenster, ohne dass zusätzliche Client-Software auf dem Endgerät des Anwenders installiert werden muss. Dies ermöglicht eine effiziente und flexible Fernverwaltung von Windows-Systemen über das Internet.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu RZ- und Server-Technik

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung

Umgang mit der Firewall

Um den Zugriff auf Apache Guacamole über das Internet unter Berücksichtigung der Unternehmens-Firewall zu ermöglichen, sind Netzwerk- und Sicherheitskonfigurationen notwendig. Zunächst ist eine Port-Weiterleitung auf der Firewall einzurichten. Hierbei werden Anfragen, die an einen spezifischen öffentlichen Port (häufig die Standard-HTTP/HTTPS-Ports 80 oder 443) gerichtet sind, an den internen Server weitergeleitet, auf dem Apache Guacamole läuft.

Für eine zusätzliche Sicherheitsebene kann die Verwendung von VPN-Verbindungen in Erwägung gezogen werden. Durch die Einrichtung eines VPN können sich Benutzer zunächst sicher ins Unternehmensnetzwerk einwählen und anschließend Guacamole verwenden.

*Der Autor
Thomas Joos schreibt auf DataCenter-Insider seinen eigenen Blog. Darin liefert er Tipps und Tricks für Admins und stellt kleine Werkzeuge für deren Alltag vor.
Sein Fazit lautet: Apache Guacamole stellt eine leistungsfähige und flexible Software für den Fernzugriff auf Desktops und Server dar, die sich besonders durch ihre Client-lose Architektur und breite Kompatibilität mit verschiedenen Protokollen und Systemen auszeichnet. Die Möglichkeit der nahtlosen Integration in bestehende Infrastrukturen und die Anpassbarkeit machen es zu einem wertvollen Werkzeug für IT-Administratoren und Unternehmen.

Bildquelle: Thomas Joos

(ID:49962510)