什么是frpfrp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。frp 采用 C/S 模式,将服务端部署在具有公网 IP 机器上,客户端部署在内网或防火墙内的机器上,通过访问暴露在服务器上的端口,反向代理到处于内网的服务。 在此基础上,frp 支持 TCP, UDP, HTTP, HTTPS 等多种协议,提供了加密、压缩,身份认证,代理限速,负载均衡等众多能力。 下图是frp官网:https://gofrp.org/ 大家可以去看:傻瓜式-Web面板的轻量级、高性能内网穿透工具:nps使用教程 GitHub地址: ![]() 安装frp由于frp是go语言开发,因此可以直接下载可执行程序,没有任何依赖。一般通过GitHub的releases下载: ![]() Linux用通用解压命令:tar -xf window直接用工具进行解压吧。最终得到frps、frpc这两个可执行程序,以及示例配置文件。 配置frps按照如下配置frps.ini文件,在我的公网Linux服务器上执行frps -c frps.ini就可以成功运行。当然也可以使用systemd\frps.service将frps加入系统自启之类的,不过我还是喜欢用supervisor工具管理这些程序。 配置frpc按照如下配置在我的window电脑上的frpc.ini文件,值得注意的是remote_port实际是公网Linux服务器那边监听的端口,也就是说frpc通过server_port连接到frps上,通知frps启用remote_port来穿透到内网。运行客户端程序:frpc -c frpc.ini 访问frps的web服务根据frps的dashboard_port端口访问web服务( 内网启动tcp服务为了方便演示,编写了内网的http服务,在/test的方法里面,打印了远程地址,以及http的get请求的一个参数。 测试结果如下图所示当访问服务器的6600端口,实际穿透到访问内网127.0.0.1:8800的服务器。我配置的是tcp协议,因此只要内网的服务是基于tcp协议的,那么就可以对6600端口使用相应的工具去访问。官网示例是访问内网ssh服务: ![]() 数据流向图按照我的理解,画了一张数据流向图。按照数字进行先后顺序进行处理。 ![]() 总结内网穿透在ipv6没有普及之前都是刚需啊,例如很多人都会用内网穿透将内网window的3389端口映射,然后就可以在远端使用window自带的mstsc进行远程桌面的访问。也可以将内网Linux服务器的ssh端口穿透到公网,就可以在远程访问内网的ssh后台了。爱了爱了frp牛逼。 |
![]() |
| 本文出处: https://www.toutiao.com/a6973175902020633118/ |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|