frp-一个十分好用的内网穿透工具

frp是一个用于内网穿透的工具,基于Go语言.
与其他内网穿透不同的是,他需要自己提供服务端,也就是说,访问速度与服务器带宽有很大关联
原理图:
在这里插入图片描述
github下载地址Releases-frp
官网Frp官方文档

本地服务器和云主机服务器均需要下载frp,放至任意位置,都可以
其中,包含两个主要的exe文件(或文件):

  • frps - 用于客户端连接
  • frpc - 用于服务端监听

单连接内网穿透

云主机服务器编辑frps.ini

[common]
bind_port = 1234            #frp程序本身需要占用一个端口运行
vhost_http_port = 555      #外网访问的端口,特定的http类型

由于我们打算通过http://10.10.10.12:555/来访问网站,故设置外网访问端口为555,随后运行服务端的frp程序

./frps -c ./frps.ini

本地服务器编辑frpc.ini

本地网站(或tcp)地址为8111
服务端地址:10.10.10.12

[common]
server_addr = 10.10.10.12
server_port = 1234

[ssh]			#标签内容可更改
type = tcp
local_ip = 127.0.0.1
local_port = 8111
remote_port = 555		#这个代表要映射的端口

随后运行本地服务器的frp程序
frpc -c ./frpc.ini #运行代码

另外需要提到的是,如果需要从外网ssh远程连接操作内网的服务器,是需要ssh穿透一下,只需在frpc.ini添加一个type为tcp类型的,地址不变,端口要一个新的
注意
frps.ini中的vhost_http_port并不是必需,只是为了限制服务端允许映射的端口,为了安全,所以限制允许映射的端口.

多个内网穿透

多连接时,需要更改几个地方
实例:映射555,556两个端口
第一是云服务器的frps.ini

[common]
bind_port = 7000
vhost_http_port = 555,556 #这里有两个

第二是本地服务器的frpc.ini
注意:这里因为有两个连接,所以应当启动两个frpc

[common]
server_addr = 10.10.10.12
server_port = 1234

[ssh1]
type = tcp
local_ip = 127.0.0.1
local_port = 8111
remote_port = 555 #映射到555

这是第一个,第二个的frpc.ini应当更改frpc.ini中的[ssh1]的标签名和remont_port
如:

[common]
server_addr = 10.10.10.12
server_port = 1234

[ssh2]
type = tcp
local_ip = 127.0.0.1
local_port = 80
remote_port = 556

当然frp提供的功能远不止这些,以上介绍的都是最核心的功能,还提供:

  • 为本地 HTTP 服务启用 HTTPS
  • 对外提供简单的文件访问服务
  • 转发 Unix 域套接字
  • 转发 DNS 查询请求
  • 通过自定义域名访问内网的 Web 服务
  • 安全地暴露内网服务
  • 点对点内网穿透(正在开发中)
    详细可以查看frp的官网
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Spasol

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值