我浏览了文档,从安装到配置,有点不安: https ://guacamole.incubator.apache.org/doc/gug/configuring-guacamole.html
它开始谈论 guacamole.properties 中的 GUACAMOLE_HOME 之类的东西,但我真的不觉得它曾经清楚地解释过这些东西应该存储或定义的位置。我实际上不确定这些是用于配置服务器还是客户端。正因为如此,我不确定是否应该重新启动guacd
服务,或者tomcat8
服务一旦进行更改,或者我应该在哪里查看日志文件进行诊断。
根据文档:
GUACAMOLE_HOME
Guacamole reads files from its own configuration directory by default,
resorting to the classpath only when this directory cannot be found. When
locating this directory, Guacamole will try, in order:
The directory specified within the system property guacamole.home.
The directory specified within the environment variable GUACAMOLE_HOME.
The directory .guacamole, located within the home directory of
the user running the servlet container
.
我以 root 身份安装了该服务,所以我不确定是否应该将这些文件放在 /root/.guacamole 文件夹中,或者是否应该创建 /home/tomcat8/.guacamole 文件夹?
我对 tomcat 很陌生,过去 20 年我是一名 apache 管理员,所以有些事情让我感到困惑。我使用 grep 搜索代码库,但找不到 GUACAMOLE_HOME 或对 guacamole.properties 的引用来尝试更多地了解该做什么。
所有这一切似乎都应该通过安装脚本来完成,但因为不是我在 Github 上使用了这个脚本:
https://github.com/MysticRyuujin/guac-install/blob/master/guac-install.sh
在故障排除中,我能够连接到 :8080 上的 Tomcat 服务器,但我无法让 Guacamole 出现在 :4822 端口上。我将文件复制到/var/lib/tomcat8/webapps/ROOT/
目录中,并且能够让它在端口 8080 上工作,但它不尊重在/etc/guacamole/guacamole.properties
github 脚本中创建的文件中的内容,这让我很困扰:
# Hostname and port of guacamole proxy
guacd-hostname: localhost
guacd-port: 4822
我使用以下方法打开了端口:
iptables -I INPUT -p tcp -m tcp --dport 4822 -j ACCEPT
/var/lib/tomcat8/webapps/ROOT
里面是否有我应该查看的配置文件?我怎么知道正在使用哪个 guacamole.properties 文件,或者它是否只是从某个地方提取了一些默认设置而根本看不到该文件?
更新
我对源代码进行了一些更改并重新构建:
src/guacd/conf-file.c
conf->bind_host = "guachost";
conf->bind_port = strdup("4822");
conf->pidfile = NULL;
conf->foreground = 0;
conf->max_log_level = GUAC_LOG_INFO;
src/guacd/man/guacd.conf.5
[server]
bind_host = guachost
bind_port = 4822
然后我在文件中放置了一个条目,/etc/hosts
看看它是否可以工作。现在当我启动服务时,我可以在/var/log/syslog
文件中看到:
Nov 29 10:32:15 cessna systemd[1]: Starting LSB: Guacamole proxy daemon...
Nov 29 10:32:15 cessna guacd[27692]: Guacamole proxy daemon (guacd) version 0.9.9 started
Nov 29 10:32:15 cessna guacd[27689]: Starting guacd: guacd[27692]: INFO:#011Guacamole proxy daemon (guacd) version 0.9.9 started
Nov 29 10:32:15 cessna guacd[27689]: SUCCESS
Nov 29 10:32:15 cessna systemd[1]: Started LSB: Guacamole proxy daemon.
Nov 29 10:32:15 cessna guacd[27694]: Listening on host 192.168.1.25, port 4822
之前它总是说它是 127.0.0.1,但我仍然无法连接到该端口上的 Web 界面。我现在不确定这是告诉 Tomcat 在 4822 上监听的 Tomcat 问题,还是鳄梨酱设置中的某个问题。我仍然可以在 :8080 访问它,但我想控制它,而不是让它决定它想要什么。理想情况下,它将侦听所有接口/ IP 地址并按端口过滤。