news 2026/5/26 8:23:12

基于 FRP + 云服务器实现安全可靠的远程桌面连接

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于 FRP + 云服务器实现安全可靠的远程桌面连接

基于 FRP + 云服务器实现安全可靠的远程桌面连接

文章目录

  • 基于 FRP + 云服务器实现安全可靠的远程桌面连接
    • 什么是 FRP?
    • 实现原理
    • 配置步骤
      • 第一步:准备云服务器
      • 第二步:部署 FRP 服务端(云服务器)
      • 第三步:部署 FRP 客户端(家用 Windows 电脑)
      • 第四步:配置 FRP 客户端开机自启
      • 第五步:从公司电脑远程连接
    • 安全建议
    • 结语

最近,我一直在寻找一种稳定、免费且合规的远程桌面方案。写这篇文章有两个原因:
  1. 市面上大多数第三方远程桌面软件要么收费昂贵,要么体验极差(卡顿、延迟高、强制广告,甚至存在隐私泄露风险);
  2. 我所在的公司对软件安装有严格限制,未经批准安装第三方远程工具属于违规操作,轻则警告,重则影响绩效。

而 Windows 自带的「远程桌面连接」(Remote Desktop Connection)虽然安全可靠,却有一个硬性前提:被控电脑必须拥有公网 IP,或者与控制端处于同一局域网内

现实情况是:

  • 我家里的电脑没有公网 IP(联系运营商申请不仅麻烦,还可能额外收费);
  • 公司网络和家庭网络显然不在同一个局域网。

于是,我开始探索一种既能绕过公网 IP 限制,又不依赖第三方商业软件的解决方案——最终,我选择了FRP(Fast Reverse Proxy)


什么是 FRP?

FRP 是一个开源的高性能反向代理工具,专为内网穿透设计。它支持 TCP、UDP、HTTP、HTTPS 等多种协议,能将内网服务通过具有公网 IP 的服务器“映射”到外网,从而实现远程访问。

简单来说:

FRP 让没有公网 IP 的电脑,也能被外网访问。


实现原理

我们需要三样东西:

  1. 一台云服务器(如阿里云、腾讯云、华为云等),自带公网 IP;
  2. FRP 服务端(部署在云服务器上);
  3. FRP 客户端(部署在家用电脑上,即被远程控制的那台)。

工作流程如下:

[你的公司电脑] ↓ (连接云服务器的某个端口) [云服务器(公网IP)] ← FRP 服务端 ↑ (反向代理) [家用电脑(内网)] ← FRP 客户端 → 转发本地 3389(远程桌面端口)

这样,你只需连接云服务器的指定端口,FRP 就会自动把流量转发到你家里的电脑,实现远程桌面控制。


配置步骤

第一步:准备云服务器

  • 购买一台低配的 Linux 云服务器
    • 2 核 2G 足够,月费通常不到 10 元,
    • 个人推荐阿里云,相对成熟,跳转阿里云购买
  • 开放两个端口(以安全组/防火墙规则形式):
    • 7000:FRP 通信端口(可自定义);
    • 7001:用于映射远程桌面(RDP 默认端口为 3389,我们映射到公网的 7001)。

注意:Windows 远程桌面默认使用TCP 3389 端口,请确保家用电脑已启用远程桌面(设置 → 系统 → 远程桌面 → 启用)。


第二步:部署 FRP 服务端(云服务器)

  1. 下载 FRP(以 Linux AMD64 为例):

    ## 进入服务器该目录下cd/usr/local## 创建文件夹mkdirfrp## 进入文件夹cdfrp/## 下载frpwgethttps://github.com/fatedier/frp/releases/download/v0.65.0/frp_0.65.0_linux_amd64.tar.gz## 解压tar-zxvf frp_0.65.0_linux_amd64.tar.gz## 进入frp文件目录cdfrp_0.65.0_linux_amd64

    附:FRP 项目地址:https://github.com/fatedier/frp

  2. 编辑frps.toml

    [common] bind_port = 7000 token = "your_strong_password_here" # 必须设置,用于客户端认证,密码尽量设置强密码
  3. 启动服务端:

    ## 后台启动,默认日志输出到nohup.out下nohup./frps -c ./frps.toml&## 查看启动日志tail-200f nohup.out## 查看frp运行进程ps-ef|grepfrp

注意:可以配置 systemd 实现 frp 进程开机自启,但是我感觉没必要,因为一般云服务器不会关机!!!


第三步:部署 FRP 客户端(家用 Windows 电脑)

  1. 在 FRP GitHub Releases 下载Windows 版本(如frp_0.65.0_windows_amd64.zip);

  2. 解压后,编辑frpc.toml

    [common] server_addr = 你的云服务器IP server_port = 7000 token = "your_strong_password_here" # 必须与服务端一致 [[proxies]] name = "rdp" type = "tcp" local_ip = "127.0.0.1" local_port = 3389 # Windows 远程桌面默认端口 remote_port = 7001 # 云服务器上暴露的端口
  3. 双击运行frpc.exe(或通过命令行启动);

  4. 看到[I] [rdp] start proxy success即表示连接成功。


第四步:配置 FRP 客户端开机自启

  1. 新建start.bat,内容如下(放到自己frpc.exe同级目录下):

    @echo off :home .\frpc.exe -c frpc.toml goto home
  2. 打开开始菜单,输入 “任务计划程序” 将会自动搜索,接着打开它。

  3. 点击右侧的 “创建任务”,名称随意填写,安全选项选择 “不管用户是否登录都要运行”,当然你也可以选择 “只在用户登录时运行”。

    选择 “不管用户是否登录都要运行” 可以让你的电脑在断电自动启动后自动运行 frp,你就可以远程桌面连接电脑了。

    “使用最高权限运行” 也是可选的,根据个人需要可以选上。

    最后勾选 “隐藏”,就不会在启动时弹出命令行窗口了。

  4. 接着转到 “触发器” 页,点击新建,选择 “启动时”

  5. 接着转到 “操作” 页,点击新建,选择 “启动程序”

    在程序或脚本一栏选择第一步创建的start.bat,下面的 “起始于” 填写start.bat的路径(不要包含start.bat)。

    例如你的start.batD:\frp\start.bat,那么你只需要在 “起始于” 填写D:\frp\即可。

  6. 接着返回 “常规” 页,点击确定,此时会要求输入密码,输入你的电脑密码,然后点击确定即可。

  7. ok!以后就会开机自动启动 frp 了,并且不会弹出命令提示符窗口。

第五步:从公司电脑远程连接

  1. 被远程电脑需要打开远程桌面选项,允许被远程连接!

  2. 在公司电脑上打开「远程桌面连接」(mstsc):

    • 计算机:你的云服务器公网IP:7001
    • 用户名/密码:你家用电脑的登录凭据
  3. 点击连接,即可像在局域网内一样操作家里的电脑!


安全建议

  • 设置强token,防止他人滥用你的 FRP 服务;
  • 限制remote_port范围(在frps.toml中添加allow_ports = 7000-7100);
  • 云服务器启用防火墙,仅允许可信 IP 访问 7001 端口(可选);
  • 家用电脑设置强密码,并启用账户锁定策略。

结语

通过 FRP + 云服务器,我们不仅绕过了公网 IP 的限制,还规避了公司对第三方软件的管控,同时保证了连接的安全性和稳定性。整个方案成本极低(云服务器月费约 5~10 元),却能带来极大的便利。

如果你也面临类似的远程办公需求,不妨试试这个方案。掌控自己的数据,才是真正的自由
本文所有操作均基于合法合规前提,请勿用于非法用途!!!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/26 4:21:46

I2C读写时序基础:一文说清起始与停止条件

I2C起始与停止条件详解:从时序到实战的完整解析在嵌入式开发的世界里,I2C(Inter-Integrated Circuit)总线就像一条“双线高速公路”,连接着主控芯片和各种传感器、存储器、电源管理模块。它只需要两根线——SDA&#x…

作者头像 李华
网站建设 2026/5/26 7:52:27

【课程设计/毕业设计】基于SpringBoot非物质文化网站系统基于springboot的非物质文化遗产再创新系统设计与实现【附源码、数据库、万字文档】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/5/26 4:21:46

Java毕设项目:基于springboot的非物质文化遗产再创新系统设计与实现(源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/5/26 4:21:47

74194移位寄存器Multisim建模:项目应用全流程展示

用一片74194,从零搭建一个会“呼吸”的LED环形计数器 —— Multisim实战全记录你有没有试过在面包板上连一堆74系列芯片,结果灯不亮、时序错乱,最后只能靠“重启大法”碰运气?我曾经也这样。直到我学会先仿真再动手——尤其是用Mu…

作者头像 李华
网站建设 2026/5/26 4:44:58

基于RS-485的奇偶校验应用完整指南

从噪声中守护数据:RS-485通信中的奇偶校验实战解析你有没有遇到过这样的场景?一条几百米长的RS-485总线,连接着十几个传感器和PLC。系统运行正常,但每隔几小时就会“抽风”一次——某个电机突然反转、温度读数跳变成负值&#xff…

作者头像 李华
网站建设 2026/5/26 3:55:22

LACP协议小结

一、核心定义:LACP 是什么?LACP 的全称是 Link Aggregation Control Protocol,即链路聚合控制协议。简单来说,LACP 是一个协议,它允许两台网络设备(如交换机与交换机、交换机与服务器)通过“对话…

作者头像 李华