In diesem Artikel beschreiben wir Guacamole und die Integration in EGroupware.
Inhalt:
Apache Guacamole (im folgenden nur Guacamole) ist ein clientless remote desktop gateway. Dieses Gateway greift auf der einen Seite per VNC, RDP oder SSH auf Desktops/Konsolen/Terminalserver zu und stellt diese auf der anderen Seite in einem Browser-Fenster zur VerfĂĽgung [0].
Clientless heißt in dem Fall, dass keine Software auf dem PC/Tablet oder ein Browser-Addon installiert werden muss. Man benötigt nur einen Browser!
Entsprechend den eigenen Anforderungen, kann Guacamole ein Ersatz fĂĽr z. B. Parallels RAS oder Citrix Virtual Apps sein. Der wesentliche Unterschied ist, dass diese Systeme auf einen Microsoft-Terminalserver aufsetzen. DarĂĽber werden dann Terminalserver-Sitzungen oder PC-Desktops bereit gestellt. Somit entstehen Kosten fĂĽr
- Terminalserver-Betriebssystem
- Server-Zugriffslizenzen
- Terminalserver-Zugriffslizenzen
- Parallels/Citrix/…-Lizenzen
Was über die Jahre immens kostspielig wird. Die Installation und komplexe Administration nicht zu vergessen…
Wenn sich nun die Anforderungen an eine “Fernzugriffslösung” mit den Möglichkeiten von Guacamole decken, ist das eine (meist) kostenlose und vor allem einfach zu installierende und administrierende Lösung. Selbst bei Unterstützung durch einen Dienstleister stehen die Kosten in keinem Verhältnis.
Eine Firma setzt EGroupware ein und möchte (muss, Corona…) Mitarbeiter von zu Hause aus arbeiten lassen. Es soll auch der Zugriff auf die Buchhaltungssoftware und spezieller Konstruktions-Software möglich sein. Sind die Installationsvoraussetzungen gegeben (s.u.), installiert der Admin das Guacamole-Paket nach, richtet die Verbindungen (PCs) ein und vergibt die Zugriffsrechte. Schon können die Mitarbeiter von zu Hause auf ihren vertrauten PC in der Firma zugreifen. Auch auf spezielle Software, die man sonst nicht auf dem externen PC zur Verfügung stellen kann oder darf (Buchhaltungs-/Zeitwirtschafts-/Lohnbuchaltungssoftware, ERP, CAQ, …) und interne Informationen (Dateiserver, Managementsysteme, Fertigungsanlagen, …).
NatĂĽrlich kann eine Firma die bislang kein EGroupware einsetzt, eine EGroupware mit Guacamole installieren, ggf. an eine vorhandene Benutzerverwaltung anbinden und dann nur Guacamole nutzen. Das ist immer noch der einfachste und schnellste Weg an ein eine funktionierende Guacamole-Installation zu kommen.
Der Zugriff auf die EGroupware lässt sich (und das sollte man) dann noch mit einer 2-Faktor-Authentifizierung (Smartphone-authenticator, USB/NFC-Tokens (EPL)) absichern [1]. Auch das ist vom Aufwand nicht zu vergleichen mit den oben genannten kommerziellen Produkten.
Durch den reinen Betrieb im Browser ist eine recht hohe Sicherheit gewährleistet, da der Client nicht direkt auf die Zielsysteme (und umgekehrt) zugreift.
Da Guacamole gegen EGroupware authentifiziert, kann davor EGroupware wiederum gegen die verfĂĽgbaren Authentifizierungsstellen wie AD, Mail, LDAP etc. authentifizieren.
Sollten die Benutzer nicht in EGroupware verwaltet werden, können diese nach EGroupware migriert werden. Diese Vorgang muss dann nur wiederholt werden, wenn sich Benutzer geändert haben. So kann Guacamole auf die Benutzer (in der Datenbank) zugreifen.
Anwenderbericht eines Unternehmens, dass EGroupware in Verbindung mit Guacamole einsetzt, um den Mitarbeitern in Zeiten von Corona das Arbeiten in Homeoffice ermöglicht bzw. erleichtert:
EGroupware Anwenderbericht mit IGU Tragwerksplanung zu Guacamole in Zeiten von Homeoffice. Wie können Sie rechenintensive Prozesse in Zeiten von Corona und Homeoffice für Ihre Mitarbeiter ermöglichen?
EGroupware Anwenderbericht zu Guacamole mit Level 45 GmbH. Erfahren Sie in dem Praxisbericht, wie Sie Guacamole auch zur Unterstützung als Support System einsetzten können. Erfahren Sie wie ein Studio mit EGroupware arbeitet.
Die Integration in EGroupware besteht also im wesentlichen aus
- Fertiges Installations-Paket
- Integration als App (IFrame in EGroupware-Fenster oder separatem Browser-Fenster)
- Verwendung derselben Datenbank
- Rechteverwaltung durch EGroupware (Modul/Verbindungen)
- Verwendung der EGroupware-Authentifikation (gegen Backends/2FA im Frontend)
- Automatische Updates der Container
Was leider derzeit (noch) nicht angeboten wird: Das aufwecken eines PCs per Wake-On-LAN (WOL). Somit muss man den PC laufen lassen oder jemand schaltet ihn “auf Zuruf” ein.
Stand 19. Juni 2020: Es wird dran gearbeitet:
Seit 04.2020 steht ein Installationspaket fĂĽr Guacamole bereit.
Voraussetzungen fĂĽr die Installation:
- EGroupware Standard-Installation auf Docker-Basis
- Debian oder Ubuntu als Host-OS (Stand 26.05.2020)
- HTTPS-VerschlĂĽsselung
- ~ 1 GB zusätzlicher Festplattenplatz
- ~ 200 MB zusätzlicher RAM
- MariaDB/MySQL Datenbank
- Benutzer in der EGroupware-Datenbank
Andere Installationen mit und ohne Docker sind prinzipiell ebenfalls möglich, da Guacamole auch nativ installiert werden kann, ein Git-EGroupware auch auf ein Docker-Guacamole konfiguriert werden kann und man grundsätzlich die Authentifikation auch über eine Entfernung (Firma <=> Hoster) einrichten kann. Bei all den möglichen Kombinationen muss man aber über entsprechendes Wissen verfügen. Das kann leider im Rahmen der Community-Forums kaum supportet werden.
So ist es auch grundsätzlich möglich EGroupware bei einem Provider (EGroupware GmbH oder andere) und Guacamole im Unternehmen zu betreiben.
PostgreSQL als EGroupware-DB sollte prinzipiell auch möglich sein, erfordert aber “Handarbeit”. Siehe auch:
Das Installationspaket egroupware-guacamole
steht aktuell (26.05.2020) fĂĽr folgende Distributionen zur VerfĂĽgung:
- Debian 9/10
- xUbuntu 16.04/18.04/20.04
Weitere Distributionen können/sollen später folgen.
Die Installation ist ein Einzeiler auf der Kommandozeile und ist im Wiki dokumentiert [3].
Bei der Installation werden
- Datenbank-Tabellen fĂĽr Guacamole angelegt
- Views auf die Datenbank fĂĽr die Benutzerverwaltung angelegt
- der Reverse-Proxy konfiguriert
- die zwei notwendigen Docker-Container herunter geladen, installiert und gestartet
- ein Tomcat-Server auf dem Host installiert
- Guacamole in EGroupware als Anwendung installiert/registriert
- die Anbindung an OpenID/OAuth2 konfiguriert
Somit ist Guacamole sofort betriebsbereit. Es müssen nur noch “Verbindungen” angelegt werden. Also die Ziel-PCs mit Parametern und Zugriffsrechten.
Durch die gemeinsamen Verwendung einer Datenbank können nun die Benutzer und Gruppen aus EGroupware in Guacamole genutzt werden als auch die Verbindungen in einem Dialog in EGroupware angelegt/verwaltet werden.
Eine Standard-Installation sieht nun wie folgt aus:
Beim Ă–ffnen der Guacamole-Anwendung in EGroupware authentifiziert diese gegen den OpenID/OAuth2-Server in EGroupware. Dort hat die Installation bereits Guacamole als Client eingerichtet:
Somit ist sicher gestellt, dass niemand unberechtigtes an die Anwendung kommt und man muss sich auch nicht noch einmal extra authentifizieren. Das ist möglich, da Guacamole gegen oAuth authentifizieren kann. Auch über Netzwerkgrenzen hinweg.
Wie immer gilt: Keine Installation ohne Backup!!!
Ein kleiner Praxis-Artikel zur Anlage von Verbindungen und Anwendung soll folgen…
Hier geht es weiter:
[0] What is Guacamole?
Webseite: https://guacamole.apache.org/
EGroupware GitHub: https://github.com/EGroupware/guacamole
[3] EGroupware Guacamole Installation: https://github.com/EGroupware/egroupware/wiki/Apache-Guacamole-managed-by-EGroupware
EGroupware Webseite: https://www.egroupware.org/de/guacamole/
[1] Tutorial 2FA: https://www.egroupware.org/de/egroupware-support/tutorials/2fa/
EGroupware Guacamole Flyer: https://www.egroupware.org/wp-content/uploads/2020/05/Guacamole-in-EGroupware-Flyer-German.pdf
Artikel auf PRO-LINUX.DE: Remotedesktop mit Apache Guacamole
Vortrag (Video/Folien)
CLT 2022: Apache Guacamole – RDP/SSH/VNC im Webbrowser: Vortragsvideo und Folien
Forum: Informationen/Hilfe zu Guacamole
Die EGroupware GmbH stellt kommerziellen (Installations-) Support bereit:
FĂĽr Fragen, Anregungen usw. bitte wie immer jeweils ein eigenes Thema im Forum (Guacamole-Kategorie) erstellen und auf diesen Artikel Bezug nehmen.