基于tomcat7 搭建guacamole 0.9.2

之前一直在使用stable版本的guacamole 0.8.3,但是该版本存在feature的问题,而且有不少的bug。

令人不爽的是guacamole的官网只有0.8.3如何无脑搭建,就是几个apt-get install即可:

sudo add-apt-repository ppa:guacamole/stable
apt-get install guacamole-tomcat
 apt-get install libguac-client-ssh0
然后就是设置guacamole.properties和user-mapping.xml文件


而如果想自己使用独立的tomcat搭建一个最新版本的guacamole就有点蛋疼,版本好麻烦。。

1.搭建一个tomcat7

sudo apt-get install tomcat7 (注意把tomcat6清理干净,需要的话到/etc/tomcat7/server.xml文件中修改默认端口号)

2.安装guacamole-0.9.3的依赖文件,


yes的那些是必须要安装的,而且版本一定要对,不然当 configure或者连接的时候会报错。

我装了这些:

下载安装:uuid-1.6.1

apt-get安装 libpng12-dev, libcairo2-dev, libpango1.0-dev,libssh2-1, libssh2-1-dev, libssl-dev

下载guacamole-0.9.2.war(基于war包搭建guacamole)和guacamole-auth-noauth-0.9.2.tar.gz(免除用户名密码验证)


然后到http://sourceforge.net/projects/guacamole/files/current/source/ 获取guacamole-server-0.9.2.tar.gz文件,至于client是干啥的我还不太清楚。。。继续研究。。

接下来就是tar,然后./configure,  注意,安装完上述说的那些依赖以后,./configure guacamole的server,信息应该显示正常,即你想要ssh的服务,那ssh应该显示为yes,如下图所示,如果想支持rdp那就对应去装freerdp及其对应的库:


然后 make, make install, 如果报错就去安装对应的依赖。Install结束后试着运行guacd,发现报错:

guacd: error  while loading shared libraries: libguac.so.7:  cannot open shared object file: No such file or directory


接着运行一个很重要的命令:ldconfig.这个东东是在装了新的库以后要运行动态加载的,然后就可以运行guacd了,如图:


如果guacd能够正常运行那说明guacamole服务器安装成功了!

安装完成后,一个基本的guacamole server就已经搞定了,接下来还需要几个配置文件:

guacamole.properties, user-mapping.xml(登录guacamole需要用户名密码)或者noauth-config.xml(不需要登录guacamole密码)

将guacamole.properties放到/user/share/tomcat7/.guacamole文件夹下,然后在该文件中指定user-mapping.xml或者noauth-config.xml文件的路径

然后一个支持ssh的guacamole server就搞定了!!!



有一点需要特别注意:guacd装好以后可能还会遇到类似如下的奇葩问题:

JCLLoggerAdapter error

Server: Internal server error



第一个可能出错的地方时缺少依赖文件,或者是没有ldconfig,具体可以去看tomcat的log以及syslog

第二:(这应该是个诡异的黑魔法,通过尝试修改noauth-congig.xml文件,例如改一下服务器名字或者别的内容,就可以正常工作。其实我觉得是不是touch一下即可)



配置文件需要注意两点:

1.需要保证被远程的机器其对应的服务打开,例如ssh等,注意如果是windows server, 则被远程的服务器需要在sysdm.cpl里设置可被远程访问
2.在guacamole.properties中还需要用lib-directory来指定guacamole-auth-noauth-0.8.0.jar文件的路径


这样一个支持ssh的guacamole server就配置完成了。如果需要配置rdp或者vnc则根据上面表中的依赖安装对应的包即可。



===========================================================

果然在装rdp的时候又栽了

要想enable rdp,需要装几个东西,根据上面的依赖表格:

libguac-client-rdp0, libfreerdp-dev, libfreerdp1, libogg0, libogg-dev, libvorbis0a, libvorbis-dev

装好这些依赖以后也是需要在要./configure的terminal中使用ldconfig命令去告诉guacamole server这些依赖已经好了

如果想要验证这些依赖文件是否已经生效,可以./configure一下,如果configure完以后有如下提示,那么RDP就OK了

然后需要卸载guacamole server, 即make uninstall, make clean, .configure, make , make install 这样guacamole server才能将对应的东西安装好


重启tomcat(要重启吗?!?!)

===========================================================



===========================================================

vnc也装好了。。。简直就是坑。。。

不知道配置完需要重新装一次。。。唉

vnc比较重要的是在系统环境中搭建vnc4server,这样才能起来一个vnc 的server,端口号么根据vnc4server自己的规则就是5900起,1就是5901,以此类推

然后vnc不需要用户名,所以在noauth-config.xml文件或者user-mapping.xml文件中只需要密码即可,密码是vnc4server的密码,可以通过vncpasswd去修改

guacamole连接vnc需要libvncserver-dev, libvncserver0, libpulse0, libpulse-dev, libguac-client-vnc0

这些依赖装好以后./configure,如下图所示,表明VNC服务装好啦!



但是由于我太粗心忘记重新安装,导致guacamole连接的时候一直遇到一个错误,而guacd服务器却没怎么报错。。。于是我只能去tomcat的log去看,提示包括No such tunnel, Socket closed,Connection reset,总归又都是JCLLoggerAdapter error,SEVERE:Internal server error,对于trouble shooting没有太显示的意义。。。


安装完这些依赖重新install guacamole的server即可。

于是我去ldconfig,果然好了。。。(是不是不用重新install guacamole。。。???)


然后我换了一台机器去部署,再次发现通过上面的黑魔法解决了无法登陆vnc的问题。。。哎,妈蛋。。。害我又没能控制变量去验证是不是要重新装guacamole server,但是我个人认为是要装的。。。希望能有机会再验证!哈哈告一段落了!

===========================================================




==================================9:53 AM  8/14/2014

guacamole+mysql

按照官方教程来,基本没有任何问题,可惜我太TM大意了。。。

http://guac-dev.org/doc/gug/mysql-auth.html#installing-mysql-auth

利用MySQL管理guacamole是一件很方便的事情而且web端ui做的也蛮方便的,但是暂时不支持noauth,后面会钻研一下有没有办法搞定guacamole+mysql+noauth

==================================9:53 AM  8/14/2014

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值