github编辑

利用 frp 进行远程桌面控制

利用 Frp 进行远程桌面控制

之前买了一年的华为云服务器,就只是托管了个网站,最近想着做点什么,经常在家的时候需要用公司电脑拷点文件,所以想利用一下 Windows 的远程桌面。

在公网上想要访问公司电脑,没有公网 IP 情况下就需要使用内网穿透,内网穿透的工具有很多,如花生壳、net123、ngrok、frp,其中花生壳和 nat123 属于服务商提供的穿透所以会收取费用(一月 40-50 / 128Kb),ngrok 和 frp 属于需要手动配置搭建的程序。

我选择的是 Frparrow-up-right ,官方文档地址为:https://gofrp.org/arrow-up-right

1、下载 Frp

前往 releasesarrow-up-right,根据自己系统下载相应架构的压缩包,如果不知道选那个,可以先下载箭头所示的两个,有问题再选择其他的(Linux 输入 arch 命令查看)

frp-releases

2、服务器端配置

下载完成之后进行服务器端的配置

修改配置文件

先将 Linux 压缩包上传到服务器,我这里用的是宝塔面板arrow-up-right,之后解压,重命名

解压后 frp

双击 frps.ini 修改配置

开启防火墙端口

防火墙常用命令:

防火墙基本操作

  • 查看版本:firewall-cmd --version

  • 显示状态:firewall-cmd --state

  • 查看所有打开的端口:netstat -anp

  • 开启防火墙:systemctl start firewalld

  • 关闭防火墙:systemctl stop firewalld

  • 开启防火墙:service firewalld start

若遇到无法开启

先用:systemctl unmask firewalld.service

然后:systemctl start firewalld.service

端口查询

查询指定端口是否已开 firewall-cmd --query-port=666/tcp

提示 yes or no

查询所有开启的端口 netstat -anp

开启端口

如果上面端口查询没有开启的话,需要重新开启一下

开启端口命令

添加 firewall-cmd --zone=public --add-port=80/tcp --permanent–permanent 永久生效,没有此参数重启后失效)

重新载入 firewall-cmd --reload

查看 firewall-cmd --zone= public --query-port=80/tcp

删除 firewall-cmd --zone= public --remove-port=80/tcp --permanent

我们只需要开启相应的端口即可,例如 7000 端口(最好用到的端口都开启下)

更改安全组

有的云服务器可能还需要开启下端口,点击更改安全组,修改绑定的安全组或者新建一个

选择安全组

在入方向规则中添加三条规则

开启用到的端口

运行命令

可以在计划任务中添加上述命令

计划任务

点击执行,查看日志,提示 successfully 成功

成功

3、客户端配置

服务器端跑动之后,可以在 Windows 上进行配置了

首先解压 Windows 的压缩包,在目录中用 cmd 打开

输入cmd

修改配置文件 frpc.ini

执行命令

success 成功

成功

也可以把 frpc 设置成自动运行的

设置成服务,自启动:以管理员身份运行

如果报错了就采取另一种方式(可以执行 sc delete frpcservice 删除该服务)

利用 winswarrow-up-rightfrpc 注册为系统服务:

下载 ,将 WinSw x64.exe 复制到 frp 所在目录并重命名为 winsw.exe

新建 winsw.xml 文件,输入以下内容,编码为 utf-8

以管理员权限打开 CMD,并进入该目录

执行命令:

提示成功后可以进入服务查看

4、远程连接

Windows 10/11 在设置中开启远程桌面

电脑上利用自带的 mstsc 可以连接,在手机或 iPad 上搜索 RD Client 安装

mstsc

打开后

电脑名字填:服务器IP:7001

用户账户为你自己电脑的账户和密码

之后连接即可

连接成功

遇到的坑主要是防火墙的以及设置服务的

参考:

内网穿透-Frparrow-up-right

最后更新于