打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
微软远程桌面内网穿透助手
微软远程桌面内网穿透助手。 http://chrisleegit.github.io/ms-rdp-n…
 105 commits
 8 branches
 9 releases
 1 contributor
 C# 54.0%
 Python 46.0%
C#Python
Find file
Latest commit ebe95b4 on 3 Apr 2016
 ChrisLeeGit 更名
License更名a year ago
MSRDPNatTraverseClient#部分问题修复#a year ago
MSRDPNatTraverseClientForMac#完成Mac版本的客户端开发,基本功能测试通过。#a year ago
MSRDPNatTraverseProxyServerMerge branch 'master' into dev-server-twisted-frameworka year ago
ScreenShots添加Windows客户端运行截图。a year ago
.gitattributes
 Added .gitattributes & .gitignore files
a year ago
.gitignore更新gitignore文件。a year ago
README.md完善文档。a year ago
交互协议.md#协议更新# 支持查询计算机在线状态及配对id设置a year ago
README.md
微软远程控制 内网穿透助手
说明
一般来说,同在一个局域网下的两个Windows计算机可以正常使用微软的远程桌面实现远程登录。但是,当两台计算机网络环境相对复杂,尤其是不在同一局域网下,就需要使用别的手段来实现访问了;
本方案就是使用SSH连接到远程代理服务器,建立SSH反向隧道的方式实现无论在何种网络环境下,只要代理服务器工作正常,并且双方均可以与服务器正常交互,便可借助本客户端实现轻松实现远程控制;
应用开发分为客户端软件开发和服务器软件开发。
简要工作原理
在客户端中选中要进行远程控制的目标主机,在连接后,目标主机会收到远程控制请求;目标主机会自动建立反向隧道,将远程桌面端口(默认3389)映射到远程服务器的随机端口中;
由于使用了随机分配的隧道端口,并且,端口号不是常用的,相对比较安全(寡人是这么认为的);况且本地在完成控制后,目标主机也会自动断开隧道。
PC客户端软件
客户端软件使用Visual C#开发,运行在.Net 4.5及以上平台的系统上,理论上支持Windows 7及以上系统,但是要确保.Net版本符合要求,否则无法运行本客户端;
客户端实现中,借助于plink.exe(即putty.exe)的命令行版本实现免密码输入,建立反向SSH隧道的功能;
客户端提供的功能说明:注册:客户端在启动后,点击"启动"按钮,客户端会自动尝试与代理服务器联系,并获取ID,同时在代理服务器上存储自身的信息;完成“注册”过程;
远程列表: 在“远程”页面中,点击“更新”按钮,可以拿取目前在线注册的计算机列表,将提供计算机ID和名称的显示;
连接/断开: 本机可以选择远程主机,点击“连接”按钮后申请远程控制;当完成控制后,可以点击“断开”按钮,要求远程主机关闭隧道。
主要使用到的第三方库:Newtonsoft.json,有关该库的license请参见Licese目录。
Mac客户端软件
客户端基于PyQt-5.5.1使用Python 3.5开发,经过测试,基本功能正常;
Mac客户端仅支持远程请求连接开放连接权限的主机;
Mac客户端不支持Windows下的被远程控制的功能,仅仅是为了配合Mac下的Microsoft Remote Desktop软件实现内网穿透访问其他远程计算机。
服务器软件
服务器端采用了Python 3开发;
新版本使用了Twisted 16框架重新编写部分代码,增强了服务器端的稳定性;
服务器端程序会在启动后自动在指定端口(默认为9000)进行监听,并及时处理来自客户端的请求;
服务器端在运行前,可以在配置文件中更改日志文件名称,以及输出日志的等级;默认日志等级为DEBUG。日志等级可以选择的项目包括:DEBUG
INFO
ERROR
WARN
如何运行
服务器端程序
确保在服务器系统上(我使用的是Cent OS 7)已经成功安装了Python 3尽可能新的版本;
确保在服务器系统上为Python 3安装了Twisted 16.0相关模块,服务器程序依赖此库;
将ProxyServer的代码全部放置在某个目录下,如ProxyServer目录,使用python3 server.py即可运行;
可以在config文件中修改相关设置,根据需要修改。
PC客户端软件
请在这儿下载最新发布的Release版本,将RAR格式的压缩包下载到电脑上,并解压;
确保在Windows系统上安装了.Net 4.5及以上版本,双击即可运行软件;
在运行后,需要根据需要配置代理服务器以及本机的设置,然后才可以点击启动按钮启动相关服务。其他功能比较简单,很容易使用;
客户端运行截图:
Mac客户端软件
确保PyQt-5已经在Mac上安装成功;
确保Python 3在Mac上安装成功;
下载Mac版客户端代码,解压后在终端中进入解压后的目录,使用命令:python3 App.py即可运行;
请确保下载了微软远程桌面软件(Microsoft Remote Desktop),然后才能借助于客户端穿透内网访问其他远程计算机;
客户端运行截图:
贡献
WashingtonLiu等人在Windows客户端测试中给予了很多帮助,感激不尽!
许可
本项目为个人业余项目,算不上专业,代码组织的也不是特别好,还在进一步学习改进中。所有本人编写的源码采用MIT LICENSE
Enjoy~
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Mac如何通过远程控制其他Mac
网络远程控制 将家中的电脑搬到办公室
Microsoft Remote Desktop
Windows远程控制完全指南
web下使用远程桌面
详解Windows系统远程控制的原理与实现
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服