20

如何实现外网 RDP 远控(frp)

 3 years ago
source link: https://wiki-power.com/%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0%E5%A4%96%E7%BD%91RDP%E8%BF%9C%E6%8E%A7%EF%BC%88frp%EF%BC%89
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

如何实现外网 RDP 远控(frp)

使用 frp 在任意网络下实现远程桌面控制。

为什么使用 RDP#

RDP 是 Windows 自带的协议。相比市面上的远程桌面软件,如 Todesk、Anydesk、向日葵等,有以下优势:

  • 兼容性更佳,根据设备自适应分辨率,可连接键鼠使用
  • 自由度高,不限制设备数量,也没有会员体系
  • 连接速度取决于电脑网速和服务器配置

为什么使用 frp#

RDP 仅支持同 IP 段使用,为了在外网下实现远控,我们需要用 frp 方法给内网做穿透。

frp 是一个反向代理软件,体积轻量但功能强大,可以使处于内网或防火墙后的设备对外界提供服务,它支持 HTTP、TCP、UDP 等众多协议。
用 frp 实现外网 RDP 远控的原理,就是让被控端与服务器相连,我们通过服务器来间接连接被控端,从而实现远控。

准备#

  • 服务端(可以是云服务器,也可以是有公网 IP 的实体机)
  • 被控端(Windows 必须是专业版以上)
  • 远控端(全平台都适用)

服务端配置#

首先,查看服务器架构:

参考 frp 的 Releases 页面,选择符合自己架构的版本下载(比如我是 X86_64 架构,即选择 amd64):

下载后,解压并改名:

我们看一下 frp 文件夹内的文件:

  • frps.ini
  • frpc.ini

其中,frpsfrps.ini 是服务端的程序与配置文件(s 结尾代表 server),而 frpcfrpc.ini 是客户端相关的(c 结尾代表 client),我们现在暂时不用,可以删除:

接下来,我们修改 frps.ini 文件:

  • bind_port:客户端和服务端连接的端口,在之后配置客户端时会用上,一般默认即可。
  • dashboard_port:服务端仪表板的端口,一般默认即可。如果按默认设置为 7500,则可通过 7500 端口访问仪表盘(例如 服务器 IP:7500),查看 frp 状态。
  • token:客户端和服务端连接的口令,请自行设置。
  • dashboard_user / dashboard_pwd:仪表盘用户名和密码,请自行设置。

编辑完成后,按 Esc 后输入 :wq 保存退出。

为了在后台运行 frp 服务,我们可以使用 nohup 命令:

如果看到以下输出:

即表示服务正常运行。我们也可以用 jobs 命令,查看正在运行的服务。

为了测试服务端是否配置成功,我们可以访问 x.x.x.x:7500,使用上面配置的用户名和密码,看看能否顺利进入仪表盘。如果访问不了仪表盘,也有可能在服务器的防火墙处放开相关端口。

被控端配置#

还是参考 frp 的 Releases 页面,选择符合自己架构的版本下载。下载后解压重命名,可删除 frpsfrps.ini 文件。打开 frpc.ini 文件:

  • server_addr:服务器 IP 地址,请自行修改。
  • server_port:保持与服务端 bind_port 的值相同即可,默认是 7000
  • token:连接口令,保持与服务端配置的 token 相同。

接下来,我们配置自定义的规则:

  • [rdp]:[xxx] 表示规则名称,可自定义。
  • type:转发的协议类型,可选 TCP/UDP
  • local_port:本地端口号,这里填写的是 RDP 协议的端口(3389)
  • remote_port:在服务端开放的端口号,可自定义。

RDP(Remote Desktop 协议)在 Windows 上默认的端口号为 3389,协议 TCP。 SMB(Windows 文件共享协议)默认端口号为 445,协议 TCP。

为了在后台运行 frpc,我们创建脚本 frpc.vbs,将以下内容粘贴进去:

注意可能需要修改路径。

frpc.vbs 放入 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 目录内,即可实现开机自启动。

如果想测试使用,可以直接运行脚本,或重启自动运行。

远控端配置#

控制端是移动设备#

如果需要在手机、iPad 上远控电脑,则需要先安装 Microsoft 远程桌面 App,然后执行以下步骤:

  1. 在 App 内右上角点击 + - 添加电脑
  2. 电脑名称 填入 IP:remote_port,例如 x.x.x.x:7001,点击返回
  3. 账户名称 填入被控端电脑的账户密码,点击返回

如果一切配置正常,这时候应该可以成功远程控制了。

控制端是 Windows#

直接在开始菜单搜索打开 远程桌面连接,填入 IP:remote_port 例如 x.x.x.x:7001,按提示输入用户名密码,即可实现远程控制。

参考与致谢#

文章作者:Power Lin
原文地址:https://wiki-power.com
版权声明:文章采用 CC BY-NC-SA 4.0 协议,转载请注明出处。


Recommend

  • 8

    如何玩转andriod远控(androrat) ╰╃清風

  • 43

    *本文原创作者:si1ence,本文属FreeBuf原创奖励计划,未经许可禁止转载 0×0 背景 njRAT至少自2013年以来一直存在,是最流行的恶意软件系列之一。该恶意软件内置于.NET Framework中...

  • 57

    *本文原创作者:日理万鸡,本文属FreeBuf原创奖励计划,未经许可禁止转载 0×01 前言 写这篇文章时,这次的渗透已经完成一周多了,当时也没有想到会要写文章出来,所以有一部截图是后来补上的,为了我的人身...

  • 14

    解决WIN10 1909 RDP 'Credentials did not work'错误 Published on Nov 24, 2019 in

  • 10
    • www.8sec.cc 4 years ago
    • Cache

    rdp利用整理

    rdp利用整理 - 裤衩哥的小屋 请输入密码访问本文链接: http://www.8sec.cc/index.php/archives/445/...

  • 6
    • forums.macrumors.com 4 years ago
    • Cache

    Global Protect and MS RDP on M1 Mac's

    Global Protect and MS RDP on M1 Mac's ...

  • 11
    • miaotony.xyz 3 years ago
    • Cache

    基于frp实现内网穿透

    基于frp实现内网穿透 | MiaoTony's小窝之前为了实现远程编程,折腾了一阵子autossh,利用反向代理把内网服务器的ssh映射到了公网端口,详见下面这篇。

  • 19
    • wiki-power.com 3 years ago
    • Cache

    使用 rdp 访问群晖 NAS

    使用 rdp 访问群晖 NAS使用 frp 在任意网络下访问群晖 NAS。为什么要通过 frp 访问群晖

  • 11
    • blog.devwiki.net 3 years ago
    • Cache

    威联通搭建Frp实现内网穿透

    由于联通不知道什么原因,把整个省的个人动态公网IP都给停止了,所以需要找别的方式来访问我的NAS,.在网上搜索得知,有以下几种方式:使用花生壳或者别的ddns服务使用开源的frp方案查询了下 花生壳的服务收费如下:...

  • 26

    用 frp 来在 OpenWrt 下实现内网穿透2020 年 07 月 19 日 • 🍵 需要 3 分钟Openwrt 最近从 PandoraBox 转到 OpenWrt 阵营,无奈原本的 phddns 无法使用了,今天摸索了下 frp,发现出乎意料的简单!frp 与普通内网穿透最大...

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK