Apache guacamole 安裝 -Ubuntu 20.04 LTS
Apache guacamole简介
- guacamole是一个免费开源并可以透过Web浏览器操控远端电脑的闸道器(gateway),它支援多种的连线,如ssh、rdp,在此说明的是本地安装且只安装ssh、rdp的连线方式,如想使用docker安装可以参考官方的说明https://guacamole.apache.org/doc/gug/guacamole-docker.html
安装流程
更新apt
sudo apt update
安装必备套件
sudo apt install libcairo2-dev#libguac会使用Cairo进行图形渲染sudo apt install libjpeg-turbo8-dev#libguac会使用libjpeg-turbo支援JPEGsudo apt install libpng-dev#libpng12-dev 不适用于16.04后的版本,ibguac会使用llibpng编译PNGsudo apt install libtool-bin#libtool用于创建Guacamole所需的编译库sudo apt install uuid-devFFmpeg
如果不需要将对话纪录转换成影片档的话,可不用安装
sudo apt install libavcodec-dev libavformat-dev libavutil-dev libswscale-dev
libwebp
sudo apt install libwebp-dev
使用rdp protocol
freerdp
sudo apt install freerdp2-dev
使用ssh protocol
libssh2
sudo apt install libssh2-1-dev
libssl-dev
sudo apt install libssl-dev
libpango1.0-dev
sudo apt install libpango1.0-dev
到官网下载guacamole Server
wgethttps://apache.org/dyn/closer.lua/guacamole/1.4.0/source/guacamole-server-1.4.0.tar.gz解压缩guacamole-server-1.4.0.tar.gz
tar -xzf guacamole-server-1.4.0.tar.gz
建立guacamole Server
cd guacamole-server-1.4.0./configure --with-init-dir=/etc/init.d执行configure 会得知有哪些library 已安装还有已确定应该建置哪些library 的列表,
--with-init-dir=/etc/init.d准备将guacd 的启动shell安装到/etc/init.d目录中,稍后可以轻松地将guacd 配置为在启动时自动启动。如果不希望guacd自动启动可移除--with-init-dir=。当发现有一些library未安装(显示为no),可将这些library安装完成后再次执行configure 即可
如不想要检查是否相依可在指令后加上
--disable-dependency-trackingmake开始编译sudo make install安装刚刚已经建好的模组sudo ldconfig更新已安装的library
到官网下载guacamole Client
cd ..wgethttps://apache.org/dyn/closer.lua/guacamole/1.4.0/source/guacamole-client-1.4.0.tar.gz解压缩guacamole-client1.4.0.tar.gz
tar -xzf guacamole-client-1.4.0.tar.gz
建立guacamole Client
如无Maven需先安装
sudo apt install mavenmvn package上方指令会使用Maven 自动建立和打包所有元件,在guacamole/target/产生一个包含整个Web的文件: .war
使用Maven 需要使用java编译器可先使用
javac -version查看是否有安装,如无安装所需的java编译器在此安装的是openjdk-16-jdk-headless,请注意要看是否与目前Maven的版本有没有冲突删除java参考文件: https://www.codegrepper.com/code-examples/java/uninstall+java+17+ubuntu
安装maven参考文件: https://linuxize.com/post/how-to-install-apache-maven-on-ubuntu-20-04/
Deploy guacamole
将war档复制到tomcat的目录下(可能会因tomcat安装方式,tomcat9名称可能会有所不同)
cp guacamole-1.4.0.war /var/lib/tomcat9/webapps/guacamole.war如需安装tomcat
sudo apt install tomcat9
tomcat9的9为版本如需安装其他版本可修改成其他数字重启tomcat并启动guacd
systemctl restart tomcat9/etc/init.d/guacd start
建置guacamole的配置目录
sudo mkdir /etc/guacamolesudo mkdir /usr/share/tomcat9/.guacamole
定义Guacamole如何连接guacd,需在/etc/guacamole创建guacamole.properties
sudo vim /etc/guacamole/guacamole.properties让Tomcat可以读guacamole.properties
sudo ln -s /etc/guacamole/guacamole.properties /usr/share/tomcat9/.guacamole/
建立user-mapping.xml
sudo nano /etc/guacamole/user-mapping.xml配置内容参考
<user-mapping> <authorize username="username" password="md5password" encoding="md5"> <connection name="Ubuntu"> <protocol>ssh</protocol> <param name="hostname">xxx.xx.x.xx</param> <param name="port">xx</param> <param name="username">yourusename</param> </connection> </authorize> </user-mapping>
重启Tomcat 与guacd
systemctl restart tomcat9systemctl restart suacd
测试连接
登入画面( http://Ip:8080/guacamole )
登入画面



