用Frp内网穿透解决局域网的远程桌面和Http服务
一开始我的需求只是想使用云主机自建服务器来解决局域网电脑的远程桌面,使用Rustdesk,感觉也还行,后来就想如果能内网穿透直接远程桌面,那岂不是更好,所以找到了Frp这个方案。
Rustdesk,这个软件使用自建服务器挺好的,流畅度和清晰度比Todesk、向日葵这类远程桌面工具好一些,但还是没Windows自带的远程桌面好。
我用的是宝塔控制面板,管理的是Linux云主机。在宝塔面板的软件商店搜索“frp”,然后安装

安装完成后,点击“配置”,然后点击“服务配置”,修改你要放行的端口,然后把这些端口都放行。

接下来,如果使用的是云主机,则需要去安全组开放端口,我用的是阿里云的云主机。腾讯云、华为云、百度云等等,设置办法都类似。

然后,去下载frp的windows客户端,下载地址https://github.com/fatedier/frp/releases

下载下来后,杀毒软件可能会报病毒,不理它,暂不处理

然后,解压后放在某个文件夹内,这时候杀毒软件可能还会报病毒,继续不理,恢复即可

然后修改配置文件frpc.toml
serverAddr = "你的服务器ip"
serverPort = 15443
auth.token = "你的服务器配置的token"
[[proxies]]
name = "rdp"
type = "tcp"
localIP = "127.0.0.1"
localPort = 3389
remotePort = 6001
[[proxies]]
name = "web-80"
type = "http"
localPort = 80
customDomains = ["test.yourdomain.com"]
上面的配置说明:
remotePort就是远程端口,需要在宝塔安全里开启端口,还需要在云主机的安全组里开启端口,否则不可用。
customDomains 就是你的web访问域名,先解析到你的服务器IP。
配置完成后,使用命令./frpc.exe -c frpc.toml启动实试试:

启动成功后,就可以用其它电脑来访问试试。
你也可以使用WinSW把它安装成windows服务,这样系统启动就自动运行。
远程桌面:先运行mstsc

能正常访问,那就是成功了。
然后访问http服务器。用浏览器访问http://test.yourdomain.com:端口
注意这里的端口是服务器端配置的vhostHTTPPort,能访问,说明也成功了。
这样,frp就配置成功了。有了frp,我就可以放弃Rustdesk、向日葵、Todesk这类工具了。我的服务器内存小,不想花大价钱升级配置,我开发的Java微服务项目,就可以在我自己的电脑上运行,让后用frp内网穿透给别人访问用于测试。
需要注意的是,如果你的Windows系统如果是家庭版,远程桌面是用不了的,远程控制也就只能用Rustdesk、向日葵、Todesk这类工具了。Rustdesk自建服务器,也挺简单,宝塔面板上用Pm2来运行Rustdesk的服务器端,也很简单,在此就不细说了。
