作为一名开发者,有许多场景需求用到内网穿透,比方:我们在接入一些大渠道做第三方应用时,在本地开发微信大众号工具的时分需求让微信渠道能否拜访到本地供给的接口。除此之外,还有许多其他场景,也会用到,比方:把放在家里的NAS或服务器露出到公网上,这样在外面的时分也能够随时随地的拜访。

提到内网传统,TJ君第一个想到的是国内最早的一款闻名软件:花生壳。但是今日不是要引荐它,而是要引荐一个更牛的开源项目:frp!该项目现在现已收成了69.9 K Star,在GitHub上获得了极大的认可!

69.9K Star,最强开源内网穿透工具:frp

下载装置

frp现在现已供给了大部分操作系统的支持版别,经过这个链接:github.com/fatedier/fr… 就能够下载到适合你运用的装置。

69.9K Star,最强开源内网穿透工具:frp

以Windows的包为例,解压后能够获得这些内容:

69.9K Star,最强开源内网穿透工具:frp

frps是服务端程序,frpc是客户端程序。ini文件就是对应的装备文件。

首发 blog.didispace.com/tj-opensour…,转载请注明出处

露出内网服务

内网穿透的玩法有许多,这儿列举一个比较常见的例子。

比方:我要露出一个只要自己能拜访到服务器。那么能够这样装备:

装备 frps.ini,并发动服务端 frps

[common]
bind_port = 7000

在需求露出到外网的机器上布置 frpc,装备如下:

[common]
server_addr = x.x.x.x 
server_port = 7000
[secret_ssh]
type = stcp
# 只要 sk 共同的用户才干拜访到此服务
sk = abcdefg
local_ip = 127.0.0.1
local_port = 22

在想要拜访内网服务的机器上也布置 frpc,装备如下:

[common]
server_addr = x.x.x.x
server_port = 7000
[secret_ssh_visitor]
type = stcp
# stcp 的拜访者
role = visitor
# 要拜访的 stcp 署理的姓名
server_name = secret_ssh
sk = abcdefg
# 绑定本地端口用于拜访 SSH 服务
bind_addr = 127.0.0.1
bind_port = 6000

把frpc也都发动起来之后,经过 SSH 就能够拜访内网机器了

ssh -oPort=6000 test@127.0.0.1

其他支持

除了上面的玩法之外,frp还有许多玩法,比方:

  • 自定义域名拜访内网的 Web 服务
  • 转发 DNS 查询请求
  • 转发 Unix 域套接字
  • 对外供给简略的文件拜访服务
  • 为本地 HTTP 服务启用 HTTPS
  • 点对点内网穿透

篇幅有限,详细如何装备这儿就不多说了,有需求的读者能够直接查看官方文档,均有详细的服务端客户端装备案例。

最后,奉上相关链接:

开源地址:github.com/fatedier/fr… 文档地址:gofrp.org/docs/

欢迎关注我的大众号:程序猿DD。第一时间了解前沿职业消息、共享深度技术干货、获取优质学习资源