不在公司,也能连回办公电脑:用 Natapp 打通 Windows 远程桌面

电脑放在公司,人已经回到家,临时要取一个文件或处理几分钟没收尾的工作,这时最麻烦的是根本碰不到那台电脑。单独安装远程控制软件适合临时协助,但长期连接固定电脑,两端都要维护客户端,还可能遇到登录、授权或套餐限制。

这次我保留 Windows 自带的远程桌面 ,只在公司电脑上运行 Natapp 客户端 ,通过 VIP2 的 TCP 隧道 把本机 3389 端口接到公网。外面的 Mac、Windows 电脑或手机使用原来的远程桌面客户端,连接 Natapp 提供的固定地址和端口即可。

连接关系并不复杂:

连接成功后,文件和软件仍在公司电脑上运行,不需要为每个应用单独开放公网端口。

先确认公司电脑支持远程桌面

按照微软的远程桌面启用说明,被控端需要使用 Windows 10/11 专业版、企业版、教育版或 Windows Server,家庭版不能作为被控端。公司电脑还要设置有密码的账户,并保持开机、联网和不休眠。

打开"设置 -> 系统 -> 远程桌面",启用远程桌面并保留网络级别身份验证(NLA),然后在管理员 PowerShell 中检查本机端口:

yaml 复制代码
Test-NetConnection 127.0.0.1 -Port 3389

只有看到 TcpTestSucceeded : True,才继续配置公网隧道。

如果本机 3389 没有监听,先检查远程桌面服务和防火墙;本机正常而外网连不上时,再排查 Natapp。

为什么这次直接选择 VIP2

远程桌面地址会长期保存在电脑和手机里,固定公网地址与端口更省事。免费隧道适合测试链路,固定电脑的长期入口则直接使用 VIP2。

Natapp 当前列出的 VIP2 套餐是 10 元/月基础费 ,流量按 1.1 元/G 计费,提供 100M 带宽上限 和固定域名或 TCP 端口,并支持自定义本地端口。按量计费适合平时不连接、需要时才使用的远程桌面。

按每天连接一次、每次轻量使用 30MB估算,30 天约消耗 900MB,流量费不到 1.1 元,加上基础费每月大约十几元。30MB只是估算,分辨率、动态画面和文件传输都会影响实际流量。

100M是套餐带宽上限,实际体验还取决于公司上行、外部网络和远程电脑性能。这里更看重的是低成本的固定 TCP 入口。

创建指向 3389 的 TCP 隧道

远程桌面走 TCP,因此在 Natapp 后台创建 VIP2 TCP 隧道 。官方文档给出的远程桌面本地端口是 3389,本地地址保持 127.0.0.1,公网端口使用控制台当前可用端口。

公网端口和本地 3389 不必相同,也不需要修改路由器。保存前确认协议为 TCP、本地端口为 3389。

创建后会得到 authtoken ,它是 Natapp 客户端启动隧道的凭证,不要公开或提交到代码仓库。

假设隧道提供的地址是:

makefile 复制代码
xxxx.natapp.cc:45678

外部客户端填写完整的 xxxx.natapp.cc:45678;3389 只用于隧道转发到公司电脑。

让 Natapp 在公司电脑上常驻

在 Natapp 客户端下载页 选择 Windows 版本,并放到固定目录。

下载页提供了 PowerShell 安装命令。执行前确认当前目录和下载来源,完成后先运行帮助命令,再以前台方式启动客户端。前台日志能直接看到认证、重连和端口错误,确认隧道可用后再安装系统服务。这一步只准备 Natapp,不会修改 Windows 远程桌面设置。

然后在 PowerShell 中启动:

arduino 复制代码
cd C:\natapp
.\natapp.exe -config=config.ini

看到 Tunnel Status Online 和 Forwarding 公网地址,说明隧道已建立。认证失败时先核对 authtoken。

前台测试通过后,再安装为 系统服务 。官方说明标明 2.5.3 以上版本支持 -service,Windows 需要使用管理员 PowerShell。

常用命令如下:

lua 复制代码
.\natapp.exe -service install
.\natapp.exe -service start
.\natapp.exe -service status

执行 status 并检查控制台在线状态,再重启电脑测试一次;无需手动打开 PowerShell 也能恢复隧道,才说明开机常驻生效。修改服务参数后需要重新安装服务。

系统服务不能唤醒休眠的电脑,因此被控端仍要关闭自动睡眠。

公网入口不能只靠 Windows 密码

TCP 地址接到公网后,应保留 Windows 强密码和 NLA,并在 Natapp 中开启防暴力破解和 访问令牌。

authtoken 用于启动隧道,访问令牌用于验证外部连接者。按照 Natapp 的说明,先用浏览器打开 TCP 公网地址并输入令牌,当前公网 IP 会被放行 24 小时;网络切换导致 IP 变化后需要重新验证。令牌不要拼进分享链接。

未启用令牌时,浏览器可能提示"TCP 隧道禁止用于 Web 访问"。这只是协议提示,不代表入口已受保护。

在外面的电脑上建立远程连接

连接测试要放在公司网络之外。Mac 上按照微软 Windows App 的连接流程,在 Devices 中选择 + -> Add PC,然后在 PC Name 中填写公网地址:

makefile 复制代码
xxxx.natapp.cc:45678

Windows 电脑可直接使用系统自带的"远程桌面连接",填写同一地址。账户可以在连接时再输入。

双击设备卡片,核对首次连接时的证书提示,再输入公司电脑的 Windows 账户,而不是 Natapp 凭证。进入桌面后打开资源管理器确认环境,再主动断开并重连一次。程序仍在公司电脑上运行,Mac 只传递画面和操作。

连接成功后即可访问完整 Windows 桌面,无需为每个应用分别开放端口。

手机也能作为临时入口

手机也能使用同一个 Natapp 地址。开启访问令牌时,先用手机浏览器完成验证,再在远程桌面客户端新增电脑,填写 公网主机名:公网端口 和 Windows 账户。切换 Wi-Fi 或移动网络后,可能需要重新验证令牌。设备卡片中使用的是公网端口,不是本机 3389。

手机适合查看文件或确认程序状态;长时间输入和多窗口操作仍建议使用电脑。

连不上时按链路逐段检查

远程桌面失败时,不要同时改防火墙、端口和账户。按照连接经过的位置逐段排查会更快:

  1. 在公司电脑执行 Test-NetConnection 127.0.0.1 -Port 3389,确认本机 RDP 正常;
  2. 检查 Natapp 客户端或系统服务是否在线,Forwarding 地址是否与当前隧道一致;
  3. 确认外部客户端填写的是 公网主机名:公网端口,不是 3389;
  4. 开启访问令牌后,先用当前外部网络的浏览器完成验证;
  5. 出现 Windows 登录框但无法进入时,检查用户名格式、账户密码、远程桌面用户权限和 NLA;
  6. 偶尔能连、长时间无人后不能连,优先检查公司电脑是否进入睡眠。

Natapp 负责转发连接,Windows 负责账户和桌面权限。隧道日志能记录连接,不能记录桌面内的具体操作。

远程桌面能用之后

VIP2 用 10 元基础费加实际流量费用,为没有公网 IP 的 Windows 电脑保留一个固定远程入口。长期使用时保留强密码、NLA、防暴力破解和访问令牌;重要文件仍需独立备份。

相关推荐
学长毕设2 小时前
基于SpringBoot的野生动物公益保护平台设计与实现-附源码
java·spring boot·后端
梦里寻码2 小时前
我用 NestJS + Vue3 写了一套完整的研发管理系统(58 表 / 229 API / 130 项断言,全开源
前端·后端·算法
鶴哥只手遮天2 小时前
《Redis 8.10.3 深度剖析》系列 ·第 10 章 Hash 一:`listpack`、`hashtable` 与 `LISTPACK_EX`
redis·后端·开源
johnjincaaaa2 小时前
WebAssembly 逆向实战:从 0 搞懂猿人学第 15 题
后端
Gopher_HBo2 小时前
Go CPU 剖析:四角色白话机制 + 实测实验
后端
猿人谷2 小时前
Surrogate Model:让进化算法学会“预测”,为什么它正在成为智能优化的重要技术?
后端·算法·架构
the局外人3 小时前
LangChain ToolRuntime 入门:context、state 与 store 的实际用法
后端·langchain·agent
回家路上绕了弯3 小时前
当 AI 越来越能干,我们如何理解自己的价值?
后端
陈随易3 小时前
Node.js 2026上半年都有哪些性能提升?
前端·后端·程序员
hhcgchpspk4 小时前
flask服务端页面预防被爬措施
后端·python·flask·网络爬虫·防爬