linux 快速安装 guacamole (源码安装)

很多命令需要管理员权限运行,很重要。如果你之前用的别的安装方法的话,可能我的这个方法会失效。最好是新系统。就是之前安装过Tomcat或者jdk或者guacamole,有可能会失效。

1.安装guacamole的库

官方文档,后面会用到。

http://guacamole.apache.org/doc/gug/installing-guacamole.html

Required dependencies下面的是必装项,不然无法运行。(文档界面更新了,但是内容没变化)

注意看自己对应系统的包,别弄错了。

为了节省大家时间,我就整理了一下,建议一行一行复制粘贴,不然可能会漏装。这里是Ubuntu的,Centos7 的在后面。

sudo apt-get -y install libcairo2-dev libjpeg-turbo8-dev 
sudo apt-get -y install libjpeg62-dev libpng-dev
sudo apt-get -y install libtool-bin libssh2-1-dev libssl-dev libpango1.0-dev 
sudo apt-get -y install libossp-uuid-dev

上面这个命令不能直接运行,就是不能全部一起安装,有的包只能一个一个装,有的包可以两个三个一起安装。

Optional dependencies下面是选装项,根据协议选择自己安装的内容,可以都装,文件也不是很大。

为节省大家时间,我也整理了一下。一样不能一起安装,只能两个三个的安装。

Ubuntu安装

sudo apt-get -y install libavcodec-dev libavutil-dev  
sudo apt-get -y install libswscale-dev freerdp2-dev  libpango1.0-dev  libssh2-1-dev 
sudo apt-get -y install libtelnet-dev libvncserver-dev libwebsockets-dev  libpulse-dev libssl-dev libvorbis-dev libwebp-dev
sudo apt-get -y install libavformat-dev

Centos7安装

sudo yum install epel-release -y
sudo rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
sudo rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

sudo yum install -y cairo-devel libjpeg-turbo-devel libpng-devel libtool uuid-devel
sudo yum install -y freerdp-devel pango-devel libssh2-devel libvncserver-devel 
sudo yum install -y openssl-devel libvorbis-devel libwebp-devel pulseaudio-libs-devel
sudo yum install -y libtevent-devel libwebsockets-devel ffmpeg-devel
sudo yum install -y libtelnet-devel libgcrypt-devel

2.安装tomcat(会自动安装jdk)

Ubuntu

#下载tomcat
sudo apt-get -y install tomcat8

Centos7

#下载tomcat
sudo yum install -y tomcat

3.安装guacamole

下载两个文件,注意下同一个版本,比如都是1.3.0。

Apache Guacamole™: 1.3.0

一个带server的,一个带.war的.

先解压server,进入server解压的目录,输入下面命令。

#开机自启动guacd
sudo ./configure --with-init-dir=/etc/init.d
sudo make
sudo make install
sudo ldconfig

注意,第一行命令最后会显示,下面图片中的内容,其实yes/no代表安装的包,支持的协议,可以看下我这篇文章第一节的内容,会一一对应。

我们说说下载的第二个文件,就是.war的那个文件。

把这个文件放入Tomcat的webapp文件夹下,也就是

Ubuntu

cd /var/lib/tomcat8/webapps/

Centos7

cd /var/lib/tomcat/webapps/

并且把这个文件重命名为(最好是先改名再上传,最后重启Tomcat)

guacamole.war

4.配置guacamole

创建文件夹,并在里面创建一个叫guacamole.properties文件。

mkdir -p /etc/guacamole/
vim /etc/guacamole/guacamole.properties

并且把里面文件内容改为

# 配置用户映射文件
basic-user-mapping: /etc/guacamole/user-mapping.xml

再创建一个叫user-mapping.xml的文件。配置文档在

http://guacamole.apache.org/doc/gug/configuring-guacamole.html

vim /etc/guacamole/user-mapping.xml

编辑内容,里面的东西就不解释了,很好理解的,就是一些登录的用户名密码,用的协议,还有目标ip等等。可以改为下面的内容。

<user-mapping>
    
    <!-- Per-user authentication and config information -->
    <authorize username="USERNAME" password="PASSWORD">
        <protocol>vnc</protocol>
        <param name="hostname">localhost</param>
        <param name="port">5900</param>
        <param name="password">VNCPASS</param>
    </authorize>

    <!-- Another user, but using md5 to hash the password
         (example below uses the md5 hash of "PASSWORD") -->
    <authorize 
            username="USERNAME2"
            password="319f4d26e3c536b5dd871bb2c52e3178"
            encoding="md5">

        <!-- First authorized connection -->
        <connection name="localhost">
            <protocol>vnc</protocol>
            <param name="hostname">localhost</param>
            <param name="port">5901</param>
            <param name="password">VNCPASS</param>
        </connection>

        <!-- Second authorized connection -->
        <connection name="otherhost">
            <protocol>vnc</protocol>
            <param name="hostname">otherhost</param>
            <param name="port">5900</param>
            <param name="password">VNCPASS</param>
        </connection>

    </authorize>

</user-mapping>

补充一个连接示例

<user-mapping>

    <authorize username="admin" password="123456">

        <!-- First authorized connection -->
        <connection name="connection1">
            <protocol>ssh</protocol>
            <param name="hostname">127.0.0.1</param>
            <param name="port">22</param>
            <param name="username">root</param>
            <param name="password">123456</param>
        </connection>

        <!-- Second authorized connection -->
        <connection name="connection2">
            <protocol>vnc</protocol>
            <param name="hostname">192.168.0.1</param>
            <param name="port">5900</param>
            <param name="password">VNCPASS</param>
        </connection>

    </authorize>

</user-mapping>

此外,有些windows系统无法使用rdp协议登陆,需要配置nla登陆和忽略证书

<param name ="security">nla</param>
<param name ="ignore-cert">true</param>

5.重启tomcat,并启动guacd服务

Ubuntu

/etc/init.d/tomcat8 restart
/etc/init.d/guacd restart

 Centos7

# 需要关闭防火墙才能访问8080端口
systemctl stop firewalld
# 启动Tomcat和guacd
systemctl restart tomcat
systemctl restart guacd

在浏览器里输入http://localhost:8080/guacamole/,可以看到

6.排除故障

首推官方文档,第一章第二节讲安装,第十七节讲故障排除。

http://guacamole.apache.org/doc/gug/

然后Tomact里有日志文件,在

/var/lib/tomcat8/logs/catalina.out

以及系统日志

/var/log/syslog

可以参考

————————————————————分割线————————————————————

补充

前面是通过修改配置文件来配置登陆的,但是我们可以在网页配置连接,不过需要配置数据库,这是官方配置文档

https://guacamole.apache.org/doc/gug/jdbc-auth.html

先安装mysql

Ubuntu18.04下安装MySQL - OpsDrip - 博客园

CentOS7安装MySQL(完整版)_24只羊羊羊-CSDN博客_centos7安装mysql

下载一些必要的jar包

Apache Guacamole™: 1.3.0

以及

MySQL :: Download Connector/J

下载完毕之后,全部解压,然后创建目录

mkdir -p /etc/guacamole/lib/
mkdir -p /etc/guacamole/extensions/

guacamole-auth-jdbc-1.3.0.tar.gz 解压后进入 mysql 文件夹下,将 guacamole-auth-jdbc-mysql-1.3.0.jar 放入 /etc/guacamole/extensions/ 目录下

mysql-connector-java-8.0.23.zip 解压之后,将里面的 mysql-connector-java-8.0.23.jar 放入 /etc/guacamole/lib/ 目录下

登陆mysql数据库,输入

CREATE DATABASE guacamole_db;
CREATE USER 'guacamole_user'@'localhost' IDENTIFIED BY 'some_password';
GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole_user'@'localhost';
FLUSH PRIVILEGES;

进入 guacamole-auth-jdbc-1.3.0.tar.gz 解压目录下,进入 mysql 目录下,输入下面命令,并输入登陆 mysql 的密码

cat schema/*.sql | mysql -u root -p guacamole_db

接着编辑配置文件

vim /etc/guacamole/guacamole.properties

追加信息

mysql-hostname: localhost
mysql-port: 3306
mysql-database: guacamole_db
mysql-username: guacamole_user
mysql-password: some_password

至此配置结束,进入guacamole有个账户密码为guacadmin(同密码)的账户可以登录,登陆以后就可以在网页里配置连接资源机器的账号密码了

配置HTTPS

guacamole登陆时使用HTTPS_qq_38781075的博客-CSDN博客

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
安装 Guacamole源码需要进行以下步骤: 1. 安装依赖项:在安装 Guacamole 之前,您需要安装一些依赖项,比如 JDK、MySQL、Tomcat 等。您可以使用以下命令安装这些依赖项: ``` sudo apt-get install default-jdk mysql-server mysql-client tomcat8 tomcat8-admin tomcat8-common tomcat8-user ``` 2. 下载 Guacamole 源代码:您可以从 Guacamole 的官方网站上下载源代码,也可以从 GitHub 上进行下载。在本次安装中,我们将从 GitHub 上下载源代码。使用以下命令从 GitHub 上获取 Guacamole 的源代码: ``` cd ~ wget https://github.com/apache/guacamole-server/archive/refs/tags/1.3.0.tar.gz tar -xzf 1.3.0.tar.gz ``` 3. 编译和安装 Guacamole:在获取了源代码之后,您需要编译和安装 Guacamole。使用以下命令编译和安装 Guacamole: ``` cd guacamole-server-1.3.0/ ./configure --with-init-dir=/etc/init.d make sudo make install sudo ldconfig ``` 4. 安装 Guacamole Web 应用程序:使用以下命令安装 Guacamole 的 Web 应用程序: ``` wget https://downloads.apache.org/guacamole/1.3.0/binary/guacamole-1.3.0.war -O /var/lib/tomcat8/webapps/guacamole.war ``` 5. 配置 Guacamole:在安装 Guacamole 之后,您需要对其进行一些配置。您可以编辑 `/usr/local/etc/guacamole/guacamole.properties` 文件来配置 Guacamole。在进行配置之后,您需要重启 Tomcat 服务: ``` sudo service tomcat8 restart ``` 以上就是从源代码安装 Guacamole 的步骤,希望对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值