刘巧
侠客
侠客
  • UID37
  • 粉丝1
  • 关注0
  • 发帖数4
阅读:6413回复:0

web端在线桌面技术实现

楼主#
更多 发布于:2019-03-28 11:39
web端远程桌面技术网上存在一些解决思路和相关的连接,个人有兴趣可以下来进行研究:
https://blog.csdn.net/zhulinu/article/details/7346695
在这其中提到了开元框架apache旗下的开元框架guacamole远程桌面技术:
其官网地址:http://guacamole.apache.org/
其介绍及相关安装实现:


初始Guacamole



作用

在浏览器上远程操作虚拟机适用于Chrome,Firefox,IE10等浏览器(浏览器需要支持HTML5)


Guacamole的介绍以及架构

其由许多部件组成的轻量级web应用程序,大部分的功能依靠Guacamole的底层组件>来完成。
用户通过浏览器连接到Guacamole的服务端。Guacamole的客户端是用JavaScript编写的,Guacamole server通过web容器(比如tomcat)把服务提供给用户。一旦加载,客户端通过http承载着Guacamole自己的定义的协议与服务端通信。
部署在Guacamole server这边的Web应用程序,解析到的Guacamole protocal,就传给Guacamole的代理guacd(中间层),这个代理(guacd)实际上就是解析Guacamole protocal,替用户连接到远程机器


guacamole-serve配置



系统环境:

CentOS7.2 + Tomcat8.5 + JDK18 + guacamole-server0.9.14


安装必要环境:

rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
yum -y install
 http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm


安装依赖包


yum -y install cairo-devel libjpeg-devel libpng-devel uuid-devel

yum -y install ffmpeg-devel freerdp-devel pango-devel libssh2-devel

yum -y install libtelnet-devel libvncserver-devel pulseaudio-libs-devel

yum -y install openssl-devel libvorbis-devel libwebp-devel

yum -y install freerdp-plugins


下载安装包:

下载地址:Guacamole安装包


guacamole-server安装

tar -zvxf guacamole-server-0.9.14.tar.gz -C /opt
 cd /opt/guacamole-server-0.9.14/
 ./configure --with-initdir=/etc/init.d
 make  #编译
 makeinstall   #安装


启动guacd服务


/etc/init.d/guacd start


安装client



将war包移至webapps/

mv guacamole-0.9.14.war /usr/local/tomcat/apache-tomcat-8.5.33/webapps
[启动tomcat其会自动解压]

登录http://IP:8080/guacamole-0.9.14【自己对应的IP和对应端口】



创建guacamole配置文件和目录


mkdir /etc/guacamole/


创建guacamole.properties文件


vim  /etc/guacamole/guacamole.properties
guacd-hostname: localhost
guacd-port: 4822
user-mapping.xml: /etc/guacamole/user-mapping.xml enable-clipboard-integration: true



创建授权文件 user-mapping.xml


vim /etc/guacamole/ user-mapping.xml

<user-mapping>

<authorize password="123456" username="admin"> #登录界面账号密码

<connection name="rdp-10.0.102.149">

登入界面










         添加服务器


               vim /etc/guacamole/ user-mapping.xml
 <user-mapping> <authorize password="123456" username="admin"> #登录界面账号密码 <connection name="rdp-10.0.102.149"> <protocol>rdp</protocol> #RDP协议配置 <param name="hostname">10.0.102.149</param> #远程主机IP <param name="port">3389</param> #rdp 默认端口 <param name="username">admin123</param> #远程主机用户 <param name="password">qwer1234!</param> #远程主机用户密码 </connection> <connection name="ssh-10.0.102.219"> <protocol>ssh</protocol> <param name="hostname">10.0.102.219</param> <param name="port">22</param> <param name="username">root</param> <param name="password">cnhope</param> <param name="enable-sftp">true</param> #sftp参数配置(没有安装则以下sftp可不用添加) <param name="sftp-hostname">10.0.102.219</param> <param name="sftp-root-directory">/data/sftp</param> <param name="sftp-username">sftp</param> <param name="sftp-password">123</param> <param name="color-scheme">white-black</param> #远程登录显示字体颜色 </connection> </authorize> </user-mapping>



重启guacd并登录


/etc/init.d/guacd restart








可根据上面步骤进行安装也可通过执行附件里的shell脚本完成安装后修改一些连接配置和重新启动guacd和tomcat或jboss都可完成基本环境的搭建:
 完成安装后可支持多种远程协议:window版的RDP、linux桌面的vnc、linux shell命令的ssh;
被远程的主机需要有:window 需要关闭防火墙、打开运行连接
vnc需要安装vnc的协议
ssh需要安装连接协议附件:本地桌面.rar
游客

返回顶部