前言
由于需要远程需求,使用大多数远程控制软件都不能流畅控制和分辨率统一的问题,照成使用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)