背景
公司有台服务器用来存放常用的公司文件和软件,最近因为疫情影响,有时需要在家办公,因为不是公网的IP,远程起来就比较麻烦,所以最近就在想有没有办法可以实现内网穿透,比较牛的软件是Teamviewer,国内的是向日葵,但使用起来都不太方便,然后发现github上有个叫frp的软件,刚好可以实现内网穿透,也就是在家也可以实现远程连接内网的服务器。
frp 是一款跨平台的内网穿透工具,支持 Windows、macOS 与 Linux,它需要你有一台拥有固定公网 IP 的电脑,VPS 最好,然后就能愉快的进行内网穿透了。还支持 https,甚至可以用它进行小程序开发。
准备:一台拥有固定公网 IP 的电脑/VPS 作为中转节点
设置 frp 服务器
1.根据你的系统下载对应的程序:点击下载
2.解压下载下来的压缩文件,将 frps 及 frps.ini 放到具有公网 IP 的机器(vps)上
3.这里使用了默认配置即可,无需修改任何文件,直接运行:
linux命令:
./frps -c ./frps.ini
windows命令:
c:\frp\frps.exe -c c:\frp\frps.ini
假设 frps 解压缩到了 c:\frp\ 文件夹。
4.然后,让防火墙通过 7000 端口,以及 7001 端口。
设置 frp 客户端
1.将 frpc 及 frpc.ini 放到处于内网环境的机器上。
2.以 Windows 远程桌面为例,修改 frpc.ini 配置文件:
[common]
server_addr = 服务器公网 IP
server_port = 7000
[RDP]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 7001
3.然后,启动 Windows 命令提示符,运行:
c:\frp\frpc.exe -c c:\frp\frpc.ini
假设 frpc 解压缩到了 c:\frp\ 文件夹。
如果看到两行 start proxy success 就代表成功了。
远程访问
此时,就可以在外网访问网内资源了。
比如远程桌面,只需要打开微软的远程桌面客户端,然后使用 公网IP:7001 即可连接。
其他配置
其他的相关配置可以参考官网使用说明,开始我觉得挺麻烦的,但实际操作下来挺简单的,有兴趣和相关需求的可以试试。