ubuntu12.04搭建guacamole

4 篇文章 0 订阅
1 篇文章 0 订阅
Guacamole 是一个以 HTML5 为基础的网页应用程序(web application),使用者可以在浏览器中通过这个网页应用程序并配合远程桌面的传输协议(例如 VNC 或 RDP)来操控远程的电脑。

除了网页应用程序之外,Guacamole 也是一个专案名称,这个专案的内容就是发展一套 API 提供给 Guacamole 网页应用程序使用,而这个 API 亦可用于其他类似的应用程序或服务。

一、安装依赖项

去官网安装页面查看所需依赖项进行安装,我安装的当前最新版本0.9.8

apt-get install libcairo2-dev libjpeg62-dev libpng12-dev libossp-uuid-dev libfreerdp-dev libpango1.0-dev libssh2-1-dev libtelnet-dev libvncserver-dev libpulse-dev libssl-dev libvorbis-dev -y

其中如果libtelnet-dev依赖项源中没有,解决如下:

vim  /etc/apt/sources.list

在文件最后添加:deb http://us.archive.ubuntu.com/ubuntu trusty main universe 保存退出

apt-get update

即可重新执行apt-get install libtelnet-dev 进行安装

二、安装服务端

1.到官网http://guac-dev.org/releases下载服务端压缩包:guacamole-server-0.9.8.tar.gz

2.到下载目录解压文件:tar -xzf guacamole-server-0.9.8.tar.gz

3.进入解压目录

(1)./configure --with-init-dir=/etc/init.d  显示需要的库的安装情况和远程协议的支持情况


(2)make

(3)make install

(4)ldconfig

(5)运行核心服务guacd:service guacd start   ,如果运行成功则服务端安装成功

注:如果缺少依赖,进行安装后需要执行ldconfig

三、安装客户端

下载官网的客户端压缩包,官网提供两种包:

1. 压缩包 guacamole-client-0.9.8.tar.gz ,下载该包需要解压:tar -xzf guacamole-client-0.9.8.tar.gz ,进入解压文件夹执行:mvn package 构建和打包,在当前文件夹下的guacamole/target/下生成 .war 文件。

2.或直接下载打好的war包

四、部署客户端

1.安装tomcat7,下载官方建议的版本的tomcat,我安装的guacamole版本对应的tomcat7

apt-get install tomcat7

2.把war包拷贝到tomcat的webapps目录下,需要去掉war包的版本号:

cp guacamole.war /var/lib/tomcat7/webapps/

3.放置user-mapping.xml文件:cp guacamole-client/guacamole/doc/example/user-mapping.xml  /etc/guacamole/

然后编辑:更多修改规则可查看官网,以下只列出各协议基础必要的几项修改

<user-mapping>
    <authorize username="user1" password="123123"> #登录用户名和密码

         <protocol>vnc</protocol>#远程连接协议,可以是vnc、rdp和ssh

         <param name="hostname">172.16.58.21</param>#远程登录服务器地址

         <param name="port">5901</param>#远程桌面服务端口

         <param name="password">123456</param>#vnc远程桌面登录密码

     </authorize>     
    <authorize username="user2" password="123123">

         <connection name="ssh">#有该标签登录后会存在远程桌面的list,不存在则直接登入
            <protocol>ssh</protocol>
            <param name="hostname">172.16.58.21</param>

            <param name="port">22</param>
            <param name="username">root</param>

            <param name="password">123456</param>

         </connection> 
        <connection name="rdp">
            <protocol>rdp</protocol>
            <param name="hostname">172.16.58.21</param>  

            <param name="port">3389</param> 
            </connection> 
        </authorize>

</user-mapping>


4.创建guacamole.properties文件:vim /etc/guacamole/guacamole.properties

输入如下:

guacd-hostname:localhost

guacd-post:4822

auth-provider:net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider

basic-user-mapping:/etc/guacamole/user-mapping.xml

5. cd /usr/share/tomcat7/

    mkdir .guacamole

    ln -s /etc/guacamole/guacamole.properties  /usr/share/tomcat7/.guacamole/

五、启动服务

1.启动guacd:service guacd start

2.启动tomcat7:service tomcat7 start

   ( 可以把启动tomcat7设成全局命令ln -s /etc/init.d/tomcat7  /usr/bin/ )

六、使用

打开浏览器,在地址栏输入http://localhost:8080/guacamole 进入guacamole客户端登录页面,输入user-mapping.xml设置的账户密码进入,可看到列出的user-mapping.xml文件中设置的远程连接列表。

七、问题

guacamole会把使用日志输出到系统日志中,cat /var/log/syslog 即可查看

在使用过程中我遇到了使用rdp协议时无法播放声音问题,通过到社区http://sourceforge.net/projects/guacamole/forums查找提问的帖子解决了问题,

查看系统日志会发现问题提示:

Failed to load guacsnd plugin. Audio will not work.

Failed to load guacdr plugin. Drive redirection and printing will not work.

解决办法如下:

ln -s /usr/local/lib/freerdp/guacsnd.so /usr/lib/freerdp/

ln -s /usr/local/lib/freerdp/guacdr.so /usr/lib/freerdp/

把这两个插件软连接到rdp插件加载的文件夹下。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值