apache的Guacamole是无客户端远程桌面网关。它支持如VNC,RDP和SSH标准协议。之所以说是无客户端,因为是b/s模式,用户通过浏览器访问html5,html5通过后台程序以api请求guacamole服务,以达到在浏览器对指定的操作系统进行远程控制的目的。
今天以centos7为例,说明安装及配置guacamole服务端,官网有安装步骤,但我在安装的时候遇到些问题,以此记录便于以后查看。
- 预备安装
安装gcc:
# yum install gcc
安装ffmpeg时需要提前安装yasm插件。下面开始安装
# wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
# tar -xvf yasm-1.3.0.tar.gz
# cd yasm-1.3.0/
# ./configure && make && make install
开始安装ffmpeg
# wget http://ffmpeg.org/releases/ffmpeg-4.2.2.tar.gz
# tar -xvf ffmpeg-4.2.2.tar.gz
# cd ffmpeg-4.2.2/
# ./configure && make && make install
安装依赖:
# yum -y install cairo-devel libjpeg-devel libpng-devel uuid-devel
# yum -y freerdp-devel pango-devel libssh2-devel
# yum -y install libtelnet-devel
# yum -y install libvncserver-devel pulseaudio-libs-devel
# yum -y install libwebsockets-devel
# yum -y install openssl-devel libvorbis-devel libwebp-devel
# yum -y install freerdp-plugins
- 安装guacamole-server
当前guacamole-server最新版是1.1.0,从官网 https://guacamole.apache.org/releases/1.1.0/ 下载服务端(guacamole-server-1.1.0.tar.gz),解压并编译安装guacamole-server:
# tar -xzvf /opt/guacamole-server-1.1.0.tar.gz
# cd /opt/guacamole-server-1.1.0
# ./configure --with-init-dir=/etc/init.d
# make
# make install
# ldconfig
配置guacd,在/etc/guacamole目录下新增配置文件guacd.conf:
[daemon]
pid_file = /var/run/guacd.pid
log_level = info
[server]
bind_host = 0.0.0.0
bind_port = 4822
[ssl]
server_certificate = /etc/ssl/certs/guacd.crt
server_key = /etc/ssl/private/guacd.key
- 启动服务
# service guacd restart
Stopping guacd: SUCCESS
Starting guacd: guacd[21341]: INFO: Guacamole proxy daemon (guacd) version 1.1.0 started
SUCCESS
查看日志:
# tail -200f /var/log/messages
Apr 10 11:59:34 192 guacd[21341]: Guacamole proxy daemon (guacd) version 1.1.0 started
Apr 10 11:59:34 192 guacd[21343]: Listening on host 0.0.0.0, port 4822
查看进程信息:
# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:4822 0.0.0.0:* LISTEN 21343/guacd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 988/sshd
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 20569/java
tcp6 0 0 :::8080 :::* LISTEN 20569/java
tcp6 0 0 :::22 :::* LISTEN 988/sshd
到此,guacamole服务端安装完成。