分享

如何通过FRP反向代理访问内网机器

 ARM_嵌入式 2020-03-29

实际使用场景:

针对实际使用中,遇到如下场景,想让其他人测试在本地搭建的 WEB 服务,由于本地机器没有公网IP,无法域名解析到本地机器。可通过反向代理的方式,实现此功能。

本文 FRP 反向代理 访问 处于内网环境 中的 iMX6UL系列OKMX6UL-C开发板 作为说明。

F RP 简介

FRP  是一个可用于内网穿透的高性能的反向代理应用,支持  TCP UDP  协议,为  HTTP  和  HTTPS  应用协议提供了额外的能力,且尝试性支持了点对点穿透。

FRP  的作用

利用处于内网或防火墙后的机器,对外网环境提供  HTTP  和  HTTPS   服务。

对于 HTTP 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口。

利用处于内网或防火墙后的机器,对外网环境提供  TCP 服务,例如 可在 通过  SSH  访问处于公司内网环境内的主机。

可查看通过代理的所有  HTTP  请求和响应的详细信息。(待开发)

具体操作:

根据对应的操作系统及架构,从 FRP 的 Release 页面下载最新版本的程序。

以本文为例, 采用 飞凌嵌入式的 iMX6UL系列OKMX6UL-C开发板

下载frp_0.27.0_linux_arm.tar.gz。

将压缩包中的 frps 及 frps.ini 放到具有公网 IP 的机器上。

将压缩包中的 frpc 及 frpc.ini 放到处于内网环境的机器 飞凌 iMX6UL系列OKMX6UL-C开发板 上。

修改配置文件

公网IP的机器上:

修改 frps.ini 文件,这里使用了最简化的配置:

# frps.ini

[common]

bind_port = 7000

启动 frps:

./frps -c ./frps.ini

内网环境的机器 FCU1101上:

修改 frpc.ini 文件,假设 frps 所在服务器的公网 IP 为 x.x.x.x;

# frpc.ini

[common]

server_addr = x.x.x.x

server_port = 7000

[ssh]

type = tcp

local_ip = 127.0.0.1

local_port = 22

remote_port = 6000

启动 frpc:

./frpc -c ./frpc.ini

通过 ssh 访问内网机器 飞凌 iMX6UL系列OKMX6UL-C开发板

假设用户名为 test:

ssh -oPort=6000 test@x.x.x.x

本文简单介绍了 如何通过 FRP   服务 访问内网机器,其他复杂的应用,请结合自己实际使用,修改。当然,也可以选择其他的反向代理,如 Ngrok ,也有类似编译好的可执行文件。


■ 关注“飞凌嵌入式”公众号,不定期分享行业干货及产品一线资料。

■ 直接微信回复产品平台,如“LS1012A”,即可快速获取对应产品信息。

■ 想要了解飞凌更多信息,欢迎与我们联系:

销售工程师:400-699-6866

国际业务部:0312-3102650-854

技术服务部:0312-3119192

方案定制类:17713286015 (杜工),18633238067(王工)

■ 实时技术支持:

AM 9:00—11:30,PM 13:30—17:00(周一至周五)

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多