说明:一般而言,远程控制,可以用第三方软件,如向日葵、ToDesk、Teamviewer,但想要得到不错的体验,都需要充钱。如果你有一台公网的服务器,部署frp穿透内网计算机,再通过远程连接工具(如xshell、windterm、windows自带的远程控制)控制计算机会是一个不错的选择。
本文介绍如何利用阿里云服务器+frp技术远程连接自己的计算机。
首先,分析一下需求,frp服务端部署在自己服务器的公网上,frp客户端在我需要远程控制的那台计算机(假设是windows)上运行,我通过本机(假设是Windows)自带的远程桌面连接功能,远程控制那台计算机,画成图是下面这样:

其中流程:
1:通过远程桌面连接自己的阿里云公网服务器;
2:阿里云公网服务器将端口映射到需要被控制的计算机B上;
在以上流程中,我们需要知道三个信息,阿里云服务器公网IP、远程桌面连接所用端口、被控制计算机B的账户
下面分别部署frps(服务端)、frpc(客户端)
现在开始搭建,首先在云服务上部署frps并启动,如下:

可以考虑将fprs配置成一个system服务,参考:Linux centos7 添加自定义服务(frps服务),如下:
先在frp目录下创建一个启动脚本,start.sh,内容如下:
#!/bin/bash
nohup /usr/local/dev/frp/frp_0.58.0_linux_amd64/frps -c /usr/local/dev/frp/frp_0.58.0_linux_amd64/frps.toml >> /usr/local/dev/frp/frp_0.58.0_linux_amd64/frps.log 2>&1 &
里面写自己的frp路径。然后在系统/etc/systemd/system下创建一个文件frps.service,内容如下,其中start.sh文件换成自己的。
[Unit]
Description=frps
Documentation=https://gofrp.org/zh-cn/docs/
After=network.target syslog.target
Wants=network.target
[Service]
Type=forking
User=root
ExecStart=/bin/sh /usr/local/dev/frp/frp_0.58.0_linux_amd64/start.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target
在需要被远程控制的计算机上启动frpc,配置文件内容如下:
serverAddr = "云服务器公网IP"
serverPort = 7000
[[proxies]]
name = "test"
type = "tcp"
localIP = "127.0.0.1"
localPort = 3389
remotePort = 3389
其中,name可以随便设置,但不要和其他的frpc重复,启动会报错;3389为windows远程桌面连接默认端口,如果没有修改就是这个,可在远程桌面设置-高级设置里查看。如果要修改,点端口号下面的链接,可跳转到Microsoft操作文档。

设置好后,敲下面的命令启动frpc
frpc.exe -c frpc.toml
如此,为启动成功。

可在当前目录下,创建一个frpc.bat脚本文件,内容如下,其中路径换成自己的。
@echo off
cd /D D:\dev\frp_0.58.1_windows_amd64
start frpc.exe -c D:\dev\frp_0.58.1_windows_amd64\frpc.toml
然后给当前目录配置环境变量,后面就可以直接敲bat脚本名来启动了,岂不美哉。

注意:如果这里你配置好之后,敲bat脚本名启动frpc,命令窗口一闪而过,没有启动成功。是因为你的frpc路径中含有空格,换个没有空格的路径即可(我也是后面在台式机上配置时发现的,天杀的Program Files (x86))
在发起远程控制的电脑上,按快捷键Ctrl + Q,搜索远程桌面控制

在下面的窗口里,填上自己云服务器IP和被远程控制计算机的账户名

点连接后,会弹出输入密码的窗口,输远程那台计算机的开机密码,然后就能控制那台计算机了。一般而言,如果你没有额外创建账户的话,账户名大多数可能是Administartor,密码就是对应的开机密码。

另外,windows自带的远程桌面连接,可选择连接质量,在体验中,可直接拉满,画质几乎一比一,延迟感觉比第三方软件还要低。

如下,看着字体有点问题,是因为开小窗截的图,分辨率不一样,全屏之后几乎是原图,而且流畅也还行。当然我下面用来播放视频是不行的,高画面+低延迟,不代表播放视频不卡顿。
总之,用来办公,远程控制电脑做一些操作是没问题的,体验还行。

本文介绍了如何使用frp搭建自己的远程桌面连接方案,frp介绍参考:frp技术。根据博主实际使用,不支持windows远程桌面连接的Windows 11操作系统不能使用这种方式,可以考虑使用RustDesk技术,至于如何搭建,等我学会了再教大家。