Apache Guacamole ist eine kostenlose, quelloffene, webbasierte und clientlose Remote-Desktop-Anwendung, die Standardprotokolle wie VNC, RDP und SSH unterstützt. Es ermöglicht Ihnen den Zugriff auf Linux- und Windows-PCs von einem Webbrowser über RDP, SSH oder VNC. Es ist clientlos, sodass Sie keine Plugins oder Client-Software installieren müssen. Es besteht aus zwei Komponenten Guacamole Server und Guacamole Client. Der Guacamole-Server bietet serverseitige und native Komponenten, die für die Verbindung mit dem Remote-PC erforderlich sind, während der Guacamole-Client eine HTML 5-Webanwendung ist, die für die Verbindung mit dem Remote-PC verwendet wird.
In diesem Tutorial zeigen wir Ihnen, wie Sie den Guacamole-Server unter CentOS 8 installieren.
Voraussetzungen
- Ein Server mit CentOS 8.
- Ein Root-Passwort wird auf dem Server konfiguriert.
Erste Schritte
Zuerst müssen Sie einige erforderliche Pakete auf Ihrem Server installieren. Sie können alle mit dem folgenden Befehl installieren:
dnf install -y unzip curl make cmake wget gcc zlib-devel compat-openssl10
Nachdem Sie alle erforderlichen Pakete installiert haben, müssen Sie das EPEL-, PowerTools- und Devel-Repo in Ihrem System aktivieren. Sie können sie mit dem folgenden Befehl aktivieren:
dnf install epel-release -y
dnf config-manager --set-enabled PowerTools
dnf config-manager --enable Devel
Installieren Sie als Nächstes andere erforderliche Tools mit dem folgenden Befehl:
dnf install cairo-devel libuv-devel libjpeg-turbo-devel libjpeg-devel libpng-devel libtool uuid-devel freerdp-devel pango-devel libvncserver-devel pulseaudio-libs-devel openssl-devel libvorbis-devel libwebp-devel libssh2 -devel libtheora opus lame-libs
Deaktivieren Sie als Nächstes das Devel-Repo mit dem folgenden Befehl:
dnf config-manager --disable Devel
Als nächstes müssen Sie die Telnet-Bibliothek in Ihrem System kompilieren.
Laden Sie es zuerst mit dem folgenden Befehl herunter:
curl -s https://api.github.com/repos/seanmiddleditch/libtelnet/releases/latest | grep browser_download_url | cut -d '"' -f 4 | wget -qi -
Extrahieren Sie die heruntergeladene Datei nach dem Herunterladen mit dem folgenden Befehl:
tar -xf libtelnet-*.tar.gz
Als nächstes ändern Sie das Verzeichnis in das extrahierte Verzeichnis und konfigurieren es mit dem folgenden Befehl:
cd libtelnet-*/
./configure
Als nächstes installieren Sie es mit dem folgenden Befehl auf Ihrem System:
make
make install
Nach der Installation können Sie mit dem nächsten Schritt fortfahren.
Installieren Sie Java
Guacamole ist eine Java-basierte Software, daher muss Java auf Ihrem Server installiert sein. Wenn es nicht installiert ist, können Sie es mit dem folgenden Befehl installieren:
dnf install java-11-openjdk-devel
Überprüfen Sie nach der Installation die Java-Version mit dem folgenden Befehl:
Java-Version
Sie sollten die folgende Ausgabe erhalten:
openjdk version „11.0.9.1“ 2020-11-04OpenJDK Runtime Environment (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04)OpenJDK 64-Bit Server VM (build 11.0.9.1+1-Ubuntu-0ubuntu1.20.04 , gemischter Modus, Teilen)
Tomcat installieren
Apache Tomcat wird verwendet, um Guacamole-Client-Inhalte bereitzustellen. Sie müssen also Tomcat auf Ihrem Server installieren.
Erstellen Sie zunächst mit dem folgenden Befehl einen separaten Benutzer und eine separate Gruppe für Tomcat:
groupadd --system tomcat
useradd -d /usr/share/tomcat -r -s /bin/false -g tomcat tomcat
Laden Sie als Nächstes die neueste Version von Tomcat mit dem folgenden Befehl herunter:
wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.43/bin/apache-tomcat-9.0.43.tar.gz
Sobald der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:
tar -xvf apache-tomcat-9.0.43.tar.gz
Als nächstes verschieben Sie den Tomcat in das Verzeichnis /usr/share
mv apache-tomcat-9.0.43 /usr/share/tomcat
Legen Sie als Nächstes den richtigen Besitz für das Tomcat-Verzeichnis fest:
chown -R tomcat:tomcat /usr/share/tomcat/
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Erstellen Sie eine Systemd-Dienstdatei für Tomcat
Als nächstes müssen Sie eine systemd-Dienstdatei für Tomcat erstellen. Sie können es mit dem folgenden Befehl erstellen:
nano /etc/systemd/system/tomcat.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit]Description=Tomcat ServerAfter=syslog.target network.target[Service]Type=forkingUser=tomcatGroup=tomcatEnvironment=JAVA_HOME=/usr/lib/jvm/jreEnvironment='JAVA_OPTS=-Djava.awt.headless=true 'Environment=CATALINA_HOME=/usr/share/tomcatEnvironment=CATALINA_BASE=/usr/share/tomcatEnvironment=CATALINA_PID=/usr/share/tomcat/temp/tomcat.pidEnvironment='CATALINA_OPTS=-Xms512M -Xmx1024M'ExecStart=/usr/share /tomcat/bin/catalina.sh startExecStop=/usr/share/tomcat/bin/catalina.sh stop[Install]WantedBy=multi-user.target
Speichern und schließen Sie die Datei und laden Sie dann den systemd-Daemon mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den Tomcat-Dienst und aktivieren Sie ihn so, dass er beim Systemneustart gestartet wird:
systemctl start Tomcat
systemctl enable Tomcat
Sie können den Tomcat-Status auch mit dem folgenden Befehl überprüfen:
Systemctl-Status-Tomcat
Sie sollten die folgende Ausgabe erhalten:
Installieren Sie Apache Guacamole
Laden Sie zunächst die neueste Version von Guacamole mit dem folgenden Befehl herunter:
wget https://downloads.apache.org/guacamole/1.3.0/source/guacamole-server-1.3.0.tar.gz
Sobald der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:
tar -xvzf guacamole-server-1.3.0.tar.gz
Als nächstes ändern Sie das Verzeichnis in das extrahierte Verzeichnis und konfigurieren es mit dem folgenden Befehl:
cd guacamole-server-1.3.0
./configure --with-init-dir=/etc/init.d
Als nächstes installieren Sie es mit dem folgenden Befehl auf Ihrem System:
make
make install
ldconfig
Als nächstes laden Sie den systemd-Daemon mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den Guacamole-Dienst und aktivieren Sie ihn so, dass er beim Systemneustart gestartet wird:
systemctl start guacd
systemctl aktiviert guacd
Sie können den Status der Guacamole mit dem folgenden Befehl überprüfen:
systemctl status guacd
Sie sollten die folgende Ausgabe erhalten:
Installieren Sie den Guacamole-Client
Erstellen Sie als Nächstes ein Verzeichnis für Guacamole und laden Sie die Guacamole-Client-Datei mit dem folgenden Befehl herunter:
mkdir /etc/guacamole
wget https://downloads.apache.org/guacamole/1.3.0/binary/guacamole-1.3.0.war
Verschieben Sie die heruntergeladene Datei nach dem Herunterladen in das Verzeichnis /etc/guacamole:
mv guacamole-1.3.0.war /etc/guacamole/guacamole.war
Erstellen Sie als Nächstes einen symbolischen Link der Datei guacamole.war zum Verzeichnis /usr/share/tomcat:
ln -s /etc/guacamole/guacamole.war /usr/share/tomcat/webapps/
Legen Sie als Nächstes das Home-Verzeichnis von Guacamole mit dem folgenden Befehl fest:
echo "GUACAMOLE_HOME=/etc/guacamole" | tee -a /etc/default/tomcat
Als nächstes erstellen Sie eine Guacamole-Konfigurationsdatei mit dem folgenden Befehl:
nano /etc/guacamole/guacamole.properties
Fügen Sie die folgenden Zeilen hinzu:
guacd-hostname:localhostguacd-port:4822user-mapping:/etc/guacamole/user-mapping.xmlauth-provider:net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider
Speichern und schließen Sie die Datei und erstellen Sie dann einen symbolischen Link des /etc/guacamole-Verzeichnisses:
ln -s /etc/guacamole /usr/share/tomcat/.guacamole
Guacamole konfigurieren
Als Nächstes müssen Sie eine Guacamole-Benutzerzuordnungsdatei erstellen, um den Remote-Server zu definieren, den Sie von Guacamole aus verbinden möchten.
Generieren Sie zunächst ein geheimes Passwort mit dem folgenden Befehl:
echo -n Ihr Passwort | openssl md5
Sie sollten die folgende Ausgabe sehen:
(stdin)=0f6e4a1df0cf5ee97c2066953bed21b2
Als nächstes erstellen Sie eine user-mapping.xml-Datei mit dem folgenden Befehl:
nano /etc/guacamole/user-mapping.xml
Fügen Sie Ihre entfernten Windows- und Linux-Serverdetails wie unten gezeigt hinzu:
ssh 69.87.218.51 22 15.185.162.149 3389 administratorrdp
Speichern und schließen Sie die Datei und starten Sie dann sowohl den Guacamole- als auch den Tomcat-Dienst neu, um die Änderungen zu übernehmen:
systemctl startet Tomcat guacd neu
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Firewall konfigurieren
Als nächstes müssen Sie Port 4822 und 8080 durch eine Firewall zulassen. Sie können sie mit dem folgenden Befehl zulassen:
firewall-cmd --permanent --add-port=4822/tcp
firewall-cmd --permanent --add-port=8080/tcp
Als nächstes laden Sie die Firewall neu, um die Änderungen zu übernehmen:
firewall-cmd --reload
Greifen Sie auf die Web-Benutzeroberfläche von Guacamole zu
Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL http://your-server-ip:8080/guacamole auf die Guacamole-Weboberfläche zu . Sie sollten den folgenden Bildschirm sehen:
Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf Anmelden Taste. Sie sollten das Guacamole-Dashboard auf dem folgenden Bildschirm sehen:
Auf dem obigen Bildschirm können Sie sowohl Windows- als auch Linux-Server sehen. Sie können auf klicken, um die Remote-Server zu verbinden und zu verwalten.
Schlussfolgerung
Herzliche Glückwünsche! Sie haben den Guacamole-Server erfolgreich auf CentOS 8 installiert und konfiguriert. Sie können Ihrem Guacamole-Server jetzt weitere Remote-Server hinzufügen und diese über einen Webbrowser verwalten.