前言


由于需要远程需求,使用大多数远程控制软件都不能流畅控制和分辨率统一的问题,照成使用A电脑2K分辨率控制B电脑1080P分辨率需要窗口化远程。突然想到本人还有一个服务器进行Frp内网穿透,为啥不直接搭建一个远程桌面呢。

教程


服务端


Frp下载地址:Releases · fatedier/frp (github.com),根据自己的系统下载相应的版本,教程使用Centos7X64进行演示。



解压下载的压缩包并进入。

tar -zxvf frp_0.45.0_linux_amd64.tar.gz
cd frp_0.45.0_linux_amd64




修改frps.ini服务端配置文件

[common]
//frp服务器配置
bind_port = 7000
bind_addr = 0.0.0.0
token = 123456
//仪表板端口
dashboard_port = 37500
//仪表盘账户密码
dashboard_user = admin
dashboard_pwd = admin


Centos7系统需要开放7000和7500端口并重启防火墙,(阿里云和腾讯云需要在控制面版放行端口)

firewall-cmd --permanent --zone=public --add-port=7000/tcp
firewall-cmd --permanent --zone=public --add-port=7500/tcp
systemctl reload firewalld


运行配置文件,查看端口是否开放和仪表板正常使用。

./frps -c frps.ini




直接运行是需要一直打开终端,关闭终端会关闭Frp服务,需要使用nohup后台运行。

nohup ./frps -c frps.ini &


服务端到此配置已完成,下面是客户端配置以及开启远程桌面。

客户端


Frp下载Windows配置文件,并修改frpc.ini客户端配置文件。

[common]
//填写服务端IP
server_addr = 192.168.100.1
server_port = 7000
authentication_method = token
token = 123456

[RDP]
type = tcp
local_ip = 127.0.0.1
//本地远程端口
local_port = 3389
//公网远程端口
remote_port = 33389


以管理员方式执行frpc命令,访问仪表板查看主机是否上线。

./frpc.exe -c ./frpc.ini




测试远程桌面时候能使用。(注意:Windows远程桌面需要设置中开启,以及33389需要在服务器放行)



Windows客户端也是需要开启终端才能运行,可以使用vbs脚本进行隐藏终端后台运行。

set ws = WScript.CreateObject("WScript.Shell")
ws.Run "绝对路径\frp_0.44.0_windows_386\frpc.exe -c 绝对路径\frp_0.44.0_windows_386\frpc.ini", 0


端口查询


使用网站查询自己服务器端口是否开放:端口查询-查询网站或IP的端口开放情况 – 在线工具 (wqtool.com)