windows环境下利用frp实现外部连接局域网内部3389远程桌面办公(代替Teamviewer方案1)
  

2020这年初的疫情太严重了,所在单位 比较人性化,让行政员工在家进行远程办公。一直以来,在windows环境下,笔者主要用免费的Teamviewer来进行远程办公,它曾经表现得那么地稳定、无卡顿,最佳选择没有之一。但,对于现在来说,它已属于“曾经”,不稳定、卡顿(特别是中下午时段)、商业化检测等令笔者想要找它的替代品。试用过anydesk、QQ远程协助等其他的软件, anydesk在我们本地区使用较卡顿, QQ远程协助有时不稳定且功能太少,其他国产的非国产的(只考虑免费产品)在网上也大概了解下,感觉也不行。最后用上了frp这利器(下载地址 https://github.com/fatedier/frp/releases),通过反向代理的方式远程连接到单位的内部网络,实现代替Teamviewer远程办公。

使用frp的必备条件是有一固定公网IP服务器,由它来进行中转,如果没有此条件,下文内容就没必要浏览了!

准备工作

  • 下载frp;
  • 在固定公网IP服务器安装配置frp(也就是服务端,s端);
  • 受控客户端安装配置frp (也就是客户端,c端) ;
  • 在家连接受控端。

下载frp

网上s端有一大堆linux系列的教程,windows系列的较少, c端是windows的比较多见,但教程其实都差不多,基本上可以通用。下载的时候32位系统下载windows_386版,32位系统下载windows_amd64版就可以了。服务端s端使用frps.exe和frps.ini,客户端c端使用frpc.exe和frpc.ini就可以了。

s端配置

将frp压缩到指定目录,编辑目录下的frps.ini,笔者按自己的使用需求,修改内容为(注:代码中“;”及后面的文字说明要删掉):

[common]
bind_port = 7000 ;这是服务器端口
dashboard_port = 7001 ;这是服务器web端口
token = 123456 ;这里写你的密码,自行设置,后面用到

dashboard_user = william ;服务器web管理用户
dashboard_pwd = 123456   ;服务器web管理密码

因为使用了7000和7001两个端口,还需要映射到客户端的入站端口,这些入站端口需要在服务器的windows防火墙和服务器运营商放行,为了以后便利,建议放行一段端口地址,如7000-7500,这是可以自定义的。

保存frps.ini,然后在运行中执行如下的启动命令(请自行修改路径):

cmd /k "D:\frp\frps.exe -c D:\frp\frps.ini"

这样S端就配置好了, 可以通过http://服务器IP:7001(这端口就是在frps.ini中定义的dashboard_port)访问统计界面。

c端配置

同s端类似, 编辑目录下的frpc.ini,笔者按自己的使用需求,修改内容为 (注:代码中“;”及后面的文字说明要删掉) :

[common]
server_addr = 服务器IP  ;就是前面服务器的公网IP
server_port = 7000  ;就是前面S端配置frps.ini的bind_port 
token = 123456 ;就是前面S端配置frps.ini的token 

[RDP] ;名字随便,不和其他应用重复
type = tcp
local_ip = 127.0.0.1   ;本机IP,一般用这个
local_port = 3389      ;3389远程桌面的端口
remote_port = 7002     ;要映射反向代理的暴露端口

保存frpc.ini,然后在运行中执行如下的启动命令(请自行修改路径):

cmd /k "D:\frp\frpc.exe -c D:\frp\frpc.ini"

注意如果开了防火墙,切记要将相应的端口放行哦!

这样c端就配置好了, 正常运行后,第三台电脑的mstsc就可以通过地址“服务器IP:7002”(7002就是frpc.ini中配置的remote_port,这个端口必须在s端相关防火墙中放行)来连接c端的远程桌面了。

笔者用了,1m的s端云服务器,c端电信,家里电信,连接起来比Teamviewer稳定流畅,于是决定以此来替换Teamviewer了。

好了,以上就是知道不整理的“windows环境下利用frp实现外部连接局域网内部3389远程桌面办公(代替Teamviewer方案1)”, 后续再讲讲怎么让frp随系统启动运行 。



返回本站资讯列表 | |