在Ubuntu 20.04上安装Apache Guacamole

在本指南中,我们将学习如何安装 阿帕奇鳄梨酱 在Ubuntu 20.04上。 Apache Guacamole是基于HTML5 Web的无客户端远程桌面网关,可通过Web浏览器远程访问服务器和桌面。它支持标准协议,例如VNC,RDP和SSH。

在Ubuntu 20.04上安装Apache Guacamole

鳄梨调味酱由两部分组成;

  • guacamole-server,它提供了Guacamole连接到远程桌面所需的Guad代理和所有本机服务器端组件。
  • guacamole-client 它提供了通常由servlet容器提供服务的客户端 Tomcat

您需要安装这两个组件,才能设置Apache Guacamole基于Web的远程桌面客户端。

在Ubuntu 20.04上安装Guacamole Server

安装所需的构建工具

要安装guacamole-server,您需要从源代码构建它。因此,这要求您必须先安装必需的构建工具,然后才能开始构建guacamole-server组件。

apt install -y gcc g++ libcairo2-dev libjpeg-turbo8-dev libpng-dev 
libtool-bin libossp-uuid-dev libavcodec-dev libavutil-dev libswscale-dev 
freerdp2-dev libpango1.0-dev libssh2-1-dev libvncserver-dev libtelnet-dev 
libssl-dev libvorbis-dev libwebp-dev

这些依赖工具的全面说明可在 所需的依赖 部分。

在Ubuntu 20.04上构建鳄梨酱服务器

要构建guacamole服务器,请从Guacamole发布页面下载最新的源存档tarball。撰写本文时,Guacamole 1.1.0是最新发行版本。您可以简单地运行以下命令;

wget https://downloads.apache.org/guacamole/1.1.0/source/guacamole-server-1.1.0.tar.gz

下载完成后,解压缩源tarball。

tar xzf guacamole-server-1.1.0.tar.gz

导航至鳄梨酱服务器源代码目录;

cd guacamole-server-1.1.0

跑过 configure 脚本来检查是否缺少任何必需的依赖性,并使Guacamole服务器适应您的系统。

./configure --with-init-dir=/etc/init.d

有关更多配置选项,请运行, ./configure --help

...
------------------------------------------------
guacamole-server version 1.1.0
------------------------------------------------

   Library status:

     freerdp2 ............ yes
     pango ............... yes
     libavcodec .......... yes
     libavutil ........... yes
     libssh2 ............. yes
     libssl .............. yes
     libswscale .......... yes
     libtelnet ........... yes
     libVNCServer ........ yes
     libvorbis ........... yes
     libpulse ............ no
     libwebsockets ....... no
     libwebp ............. yes
     wsock32 ............. no

   Protocol support:

      Kubernetes .... no
      RDP ........... yes
      SSH ........... yes
      Telnet ........ yes
      VNC ........... yes

   Services / tools:

      guacd ...... yes
      guacenc .... yes
      guaclog .... yes

   FreeRDP plugins: /usr/lib/x86_64-linux-gnu/freerdp2
   Init scripts: /etc/init.d
   Systemd units: no

Type "make" to compile guacamole-server.

注意走出 configure 脚本。

在Ubuntu 20.04上编译并安装Guacamole Server;

make
make install

接下来,运行 ldconfig 命令以创建必要的链接并缓存到在鳄梨酱服务器目录中找到的最新共享库。

ldconfig

运行鳄梨酱服务器

安装后,启动并启用guacd(Guacamole Daemon)在引导时运行。

systemctl start guacd
systemctl enable guacd

检查状态;

systemctl status guacd
● guacd.service - LSB: Guacamole proxy daemon
     Loaded: loaded (/etc/init.d/guacd; generated)
     Active: active (running) since Mon 2020-04-20 21:19:30 EAT; 50s ago
       Docs: man:systemd-sysv-generator(8)
      Tasks: 1 (limit: 2319)
     Memory: 10.2M
     CGroup: /system.slice/guacd.service
             └─38896 /usr/local/sbin/guacd -p /var/run/guacd.pid

Apr 20 21:19:30 koromicha systemd[1]: Starting LSB: Guacamole proxy daemon...
Apr 20 21:19:30 koromicha guacd[38879]: Guacamole proxy daemon (guacd) version 1.1.0 started
Apr 20 21:19:30 koromicha guacd[38878]: Starting guacd:
Apr 20 21:19:30 koromicha guacd[38879]: Starting guacd:
Apr 20 21:19:30 koromicha guacd[38879]: uacd[38879]: INFO:        Guacamole proxy daemon (guacd) versio
Apr 20 21:19:30 koromicha systemd[1]: Started LSB: Guacamole proxy daemon.
Apr 20 21:19:30 koromicha guacd[38878]: uacd[388
Apr 20 21:19:30 koromicha guacd[38896]: Listening on host 127.0.0.1, port 4822

安装Tomcat Servlet

Apache Tomcat用于为通过Web浏览器连接到鳄梨酱服务器的用户提供鳄梨酱客户端内容。要安装Tomcat,请运行以下命令;

apt install tomcat9 tomcat9-admin tomcat9-common tomcat9-user -y

Tomcat9已启动并已启用,可以在安装后在系统引导中运行。

如果UFW正在运行,请允许Tomcat通过它。

ufw allow 8080/tcp

在Ubuntu 20.04上安装Guacamole Client

guacamole-client包含提供Web应用程序,该应用程序将为连接到您服务器的用户提供HTML5 Guacamole客户端。然后,Web应用程序将代表已连接的用户连接到guacd,以便为他们提供他们有权访问的任何远程桌面。

创建鳄梨酱配置目录;

mkdir /etc/guacamole

下载鳄梨调味酱客户端二进制文件

鳄梨酱客户端可以从源代码或可用的二进制文件安装。本演示中使用二进制安装。从下载下载Guacamole-client 鳄梨酱发布页面 对于各自的最新版本(在撰写本文时为v1.1.0),并将其存储在上面创建的配置目录中;

wget https://downloads.apache.org/guacamole/1.1.0/binary/guacamole-1.1.0.war -O /etc/guacamole/guacamole.war

创建鳄梨酱客户端到Tomcat webapps目录的符号链接,如下所示;

ln -s /etc/guacamole/guacamole.war /var/lib/tomcat9/webapps/

重新启动Tomcat以部署新的Web应用程序;

systemctl restart tomcat9

也重新启动guacd守护程序;

systemctl restart guacd

在Ubuntu 20.04上配置Apache Guacamole

鳄梨酱有两个主要的配置文件: /etc/guacamole 这是由 GUACAMOLE_HOME 环境变量和 /etc/guacamole/guacamole.properties 这是Guacamole及其扩展名使用的主要配置文件。

还有鳄梨酱扩展名和库配置。您需要为这些配置创建目录。

mkdir /etc/guacamole/{extensions,lib}

设置guacamole主目录环境变量并将其添加到 /etc/default/tomcat9 配置文件。

echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/tomcat9

配置鳄梨酱服务器连接

定义鳄梨酱如何连接到 guacd,创建 guacamole.properties 文件下 /etc/guacamole 目录包含以下内容。

vim /etc/guacamole/guacamole.properties
guacd-hostname: localhost
guacd-port:     4822
user-mapping:   /etc/guacamole/user-mapping.xml
auth-provider:  net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider

之后,保存配置文件,并将Guacamole配置目录链接到Tomcat servlet目录,如下所示。

ln -s /etc/guacamole /usr/share/tomcat9/.guacamole

配置鳄梨调味酱身份验证方法

鳄梨酱的默认身份验证方法会从一个名为的文件中读取所有用户和连接 user-mapping.xml。在此文件中,您需要定义 用户被允许访问Guacamole Web UI 要连接的服务器连接方法

因此,运行以下命令以创建具有以下内容的文件。

vim /etc/guacamole/user-mapping.xml

为用于登录Guacamole Web用户界面的用户生成密码的MD5哈希。相应地替换您的密码;

echo -n password | openssl md5
printf '%s' password | md5sum

请务必更换 密码 使用您的强密码。


        
    

    
    

        
        CentOS-Server">
            ssh
            192.168.56.156
            22
        

        
        
            rdp
            192.168.56.122
            3389
            koromicha
            true
        

    

如果需要显式定义用户名和密码,请添加参数。

USERNAME
PASSWORD

保存并退出配置文件。

重新启动Tomcat和guacd以完成更改。

systemctl restart tomcat9 guacd

请务必检查系统日志, /var/log/syslog 要么 /var/log/tomcat9/CATALINA-* 对于任何问题。

通过浏览访问Apache Guacamole

设置鳄梨酱后,您可以使用以下地址从网络浏览器访问它 http://server-IP:8080/guacamole

成功登录后,您将进入Apache Guacamole Web仪表板,并且应该能够看到添加的连接。

在Ubuntu 20.04上安装Apache Guacamole

单击一个连接以命名以启动远程登录。例如,通过SSH进入我的CentOS服务,会得到一个提示我密码的提示,因为我们已经定义了该用户。

在Ubuntu 20.04上安装Apache Guacamole

要通过RDP登录Windows 7,只需单击Windows 7;然后单击Windows 7。

带有Apache Guacamole的Windows远程桌面

然后你去。输入密码,然后转到桌面。

现在,您可以为鳄梨酱添加更多连接。这标志着我们在Ubuntu 20.04上安装Apache Guacamole的指南的结尾。

阅读更多 鳄梨酱用户指南

Sidebar