Ubuntu 20.04 Server 部署 Apache-guacmole

系统环境

Ubuntu 20.04 Server + apache-tomcat-7.0.99 + OpenJdk11 + MySQL8.0 + guacamole-server1.4.0

备注: 操作系统安装时,请将源设置成阿里源

一、基础环境准备

# 添加源
add-apt-repository ppa:linuxuprising/libpng12

# 更新源
apt update

# 安装必要组件
apt install  -y make unzip libcairo2-dev libjpeg-turbo8-dev libjpeg62-dev libpng12-dev libtool-bin
 \uuid-dev libossp-uuid-dev freerdp2-dev libpango1.0-dev libssh2-1-dev libtelnet-dev
 \libvncserver-dev libwebsockets-dev libpulse-dev libssl-dev libvorbis-dev libwebp-dev libswresample-dev

# 下载组件 deb 包
wget https://mirrors.aliyun.com/ubuntu/pool/universe/f/ffmpeg/libavcodec-dev_4.2.7-0ubuntu0.1_amd64.deb
wget https://mirrors.aliyun.com/ubuntu/pool/universe/f/ffmpeg/libavformat-dev_4.2.7-0ubuntu0.1_amd64.deb
wget https://mirrors.aliyun.com/ubuntu/pool/universe/f/ffmpeg/libavutil-dev_4.2.7-0ubuntu0.1_amd64.deb
wget https://mirrors.aliyun.com/ubuntu/pool/universe/f/ffmpeg/libswscale-dev_4.2.7-0ubuntu0.1_amd64.deb
# 安装 deb 包
dpkg -i libavutil-dev_4.2.7-0ubuntu0.1_amd64.deb
dpkg -i libavcodec-dev_4.2.7-0ubuntu0.1_amd64.deb
dpkg -i libavformat-dev_4.2.7-0ubuntu0.1_amd64.deb
dpkg -i libswscale-dev_4.2.7-0ubuntu0.1_amd64.deb

二、 guacamole-server安装配置

1、 guacamole-server 安装

# 下载 guacamole-server 源代码
wget -O /root/guacamole-server-1.4.0.tar.gz https://dlcdn.apache.org/guacamole/1.4.0/source/guacamole-server-1.4.0.tar.gz

# 解压代码
tar -xvf /root/guacamole-server-1.4.0.tar.gz

# 进入代码目录
cd  /root/guacamole-server-1.4.0

# 执行 autoreconf
autoreconf -fi

# 配置 
./configure --with-init-dir=/etc/init.d --disable-dependency-tracking

# 编译
make

# 安装
make install

2、 guacamole-server 配置

  • 创建配置相关文件夹和文件
#创建文件夹
mkdir -p /etc/guacamole/

# 创建配置文件
cd /etc/guacamole/
touch /etc/guacamole/guacd.conf
touch /etc/guacamole/guacamole.properties
  • 设置环境变量
# 创建bashrc 文件
echo  "export GUACAMOLE_HOME=/etc/guacamole" > /etc/bashrc

# 使换件变量GUACAMOLE_HOME生效
source /etc/bashrc

#验证环境变量,如输出结果为/etc/guacamole 则配置生效
echo $GUACAMOLE_HOME
  • 编辑 /etc/guacamole/guacamole.properties 文件

具体配置内容如下所示:

guacd-hostname: localhost
guacd-port: 4822
mysql-hostname: localhost
mysql-port: 3306
mysql-database: guacamole_db
#和数据库创建的guacamole的用户名密码一致        
mysql-username: guacamole
mysql-password: guacamole
  • 编辑 /etc/guacamole/guacd.conf 文件

具体配置内容如下所示,如果不配置,外网就telnet不通4822端口:

[daemon]
pid_file = /var/run/guacd.pid
log_level = info

[server]

bind_host = 0.0.0.0 bind_port = 4822

  • 启动 guacd 服务
systemctl start guacd

systemctl enable guacd

3、 guacamole-server 扩展配置

  • 安装MySQL 8.0 数据库
apt install mysql-server

apt install mysql-client
  • 创建相关文件夹
mkdir -p /etc/guacamole/extensions
mkdir -p /etc/guacamole/lib
mkdir -p /etc/guacamole/sqlauth/
  • 下载安装载 guacamole-auth-jdbc-1.4.0 和 mysql-connector-java-8.0.29
#进入 /etc/guacamole/sqlauth/ 文件夹
cd  /etc/guacamole/sqlauth/

# 下载guacamole-auth-jdbc-1.4.0.tar.gz
wget https://apache.org/dyn/closer.lua/guacamole/1.4.0/binary/guacamole-auth-jdbc-1.4.0.tar.gz

# 解压扩展
tar -zxvf guacamole-auth-jdbc-1.4.0.tar.gz 

# 复制扩展到 /etc/guacamole/extensions 文件夹中
cp /etc/guacamole/sqlauth/guacamole-auth-jdbc-1.4.0/mysql/guacamole-auth-jdbc-mysql-1.4.0.jar /etc/guacamole/extensions/

# 下载 MySQL 8.0 Java 驱动
wget http://ftp.ntu.edu.tw/MySQL/Downloads/Connector-J/mysql-connector-java_8.0.29-1ubuntu20.04_all.deb

# 解压 deb 文件
dpkg -X mysql-connector-java_8.0.29-1ubuntu20.04_all.deb .

# 将 驱动复制到 /etc/guacamole/lib/ 文件夹
cp /etc/guacamole/sqlauth/usr/share/java/mysql-connector-java-8.0.29.jar /etc/guacamole/lib/
  • 创建 guacamole_db 数据库
mysql -u root -p

mysql> CREATE DATABASE guacamole_db;
mysql> CREATE USER 'guacamole'@'localhost' IDENTIFIED BY 'guacamole';
mysql> CREATE USER 'guacamole'@'127.0.0.1' IDENTIFIED BY 'guacamole';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole'@'localhost';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole'@'127.0.0.1';
mysql> FLUSH PRIVILEGES;
mysql> quit
  • 导入 guacamole_db 数据库数据
cd /etc/guacamole/sqlauth/guacamole-auth-jdbc-1.4.0/mysql/

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

三、 guacamole-Client 安装配置

1、 安装 openjdk-11

  • 安装
apt install openjdk-11-jdk
  • 验证是否安装成功
java -version

openjdk version "11.0.16" 2022-07-19
OpenJDK Runtime Environment (build 11.0.16+8-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.16+8-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)

2、 安装 apache-tomcat-7.0.99

  • 创建系统用户,用来运行 Tomcat 服务
useradd -mUd  /opt/tomcat -s /bin/false tomcat
  • 下载和配置tomcat
# 下载 tomcat
wget https://archive.apache.org/dist/tomcat/tomcat-7/v7.0.99/bin/apache-tomcat-7.0.99.zip

# 解压tomcat
unzip apache-tomcat-7.0.99.zip

#将解压文件夹转移到opt文件夹
mv apache-tomcat-7.0.99 /opt

#apache-tomcat-7.0.99 文件夹重命名为 tomcat
mv /opt/apache-tomcat-7.0.99 /opt/tomcat

# 设置文件夹用户
chown -R tomcat: /opt/tomcat

# 设置文件夹权限

chmod 755 -R /opt/tomcat
  • tomcat 启动项配置
 vim /etc/systemd/system/tomcat.service 

#添加如下内容

[Unit]
Description=Tomcat
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh

[Install]
WantedBy=multi-user.target
  • 创建 tomcat 守护程序
systemctl daemon-reload 
systemctl start tomcat
systemctl enable tomcat 
systemctl status tomcat

3、 安装 guacmole 客户端

  • 下载 guacamole-1.4.0.war 包
wget https://apache.org/dyn/closer.lua/guacamole/1.4.0/binary/guacamole-1.4.0.war
  • 部署web
# 删除 webapp 下的内容
rm -rf /opt/tomcat/webapps/*

# 将war 包复制到  /opt/tomcat/webapps/
cp guacamole-1.4.0.war /opt/tomcat/webapps/

# 重命名 war 包
mv /opt/tomcat/webapps/guacamole-1.4.0.war /opt/tomcat/webapps/guacamole.war

# 重启tomcat
systemctl restart tomcat

4、 访问 guacmole web

http://ip:8080/guacamole/

用户名: guacadmin

密码 : guacadmin

  • 登录页面
  • 登录详情
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇