首页 > 编程知识 正文

novnc windows部署

时间:2023-05-05 02:15:02 阅读:269639 作者:4234

本屌丝作为企业一名小开发,经常被使唤来使唤去的处理各类程序问题,以及电脑使用问题。
公司各栋楼之间距离很远,有的地方还要穿过马路,企业内部办公电脑又不给连外网。我和我的小伙伴们非常苦恼。每当办公室电话响起我们的内心是灰常灰常焦虑的。
在尝试了各大远程软件使用后,我最终决定自己整个远程管理软件。

一、环境搭建

搭建三台主机(本环境使用vm虚拟机搭建)
主机1 : Centos 7.5 ip 192.168.17.152 【做代理服务器用】
主机2 : winXP ip 192.168.17.84 【办公电脑】
主机3: winserver2012 ip 192.168.17.103 【办公电脑】

访问拓扑结构

下载【noVNC传送门】 、下载【TightVNC服务软件】
【在主机1上安装如下程序】

### 安装解压工具yum install -y tar centos-release-scl devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils gityum -y install cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make automake autoconf libtool zlib zlib-devel gcc-c++ libtool openssl openssl-develyum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel###==================安装python3======================================cd /usr/local/srcwget https://www.python.org/ftp/python/3.9.6/Python-3.9.6.tgztar -zxvf Python-3.9.6.tgzcd Python-3.9.6./configuremake && make install## 安装pipcd /usr/local/srcwget https://bootstrap.pypa.io/get-pip.py python3 get-pip.py python3 -m pip install --upgrade pippip install redis simplejson### ========安装redis======================================================## 安装redis依赖环境cd /usr/local/srcyum -y install centos-release-sclyum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils scl enable devtoolset-9 bash## 安装rediscd /usr/local/srcwget http://download.redis.io/releases/redis-6.0.8.tar.gztar xzf redis-6.0.8.tar.gzcd redis-6.0.8makecd ../mv ./redis-6.0.8 /usr/localexport PATH=/usr/local/redis-6.0.8/src:$PATHsource /etc/profilecd /rootgit clone https://github.com/novnc/noVNC.gitcd /root/noVNC/utilsgit clone git://github.com/novnc/websockify.git 启动代理服务 /root/noVNC/utils/websockify/websockify.py --web /root/noVNC --token-plugin TokenRedis --token-source 127.0.0.1:6379 6080 启动redis服务并设置target访问参数 ### 启动redis/usr/local/redis-6.0.8/src/redis-server cd /usr/local/redis/[root@localhost redis]# ./redis-cli 127.0.0.1:6379> set target1 '{"host":"192.168.17.103:5900"}'OK127.0.0.1:6379> set target2 '{"host":"192.168.17.84:5900"}'OK127.0.0.1:6379> 在主机2和主机3上安装tightvnc服务 其他vnc服务也可以(大家可以自己尝试)。
二、实现效果 在任意客户端通过代理服务访问主机1效果
在任意客户端通过代理服务访问主机2效果
三、扩展

以后每新增一条客户端就要在redis(也支持文件存储、httpapi、等其他方式具体参考【websocketfy 的api】)中添加一个target即可,办公电脑也要安装 tightvnc; 那么问题来了,我每次都要安装还要向redis中写入一个target岂不是很费事?您的疑问和需求我将放在下一篇幅做继续解答。

如:基于tightvnc二次开发、客户端自动安装、以及统一web页面集成管理、文件传输等一系列问题解决方案。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。