内网访问外网css及js文件_如何节约成本快速构建外网访问的内网穿透环境?Frp开源神器推荐

原创不易,请多多支持!对Java技术感兴趣的童鞋请关注我,后续技术分享更精彩。

背景

创业公司为节约运维成本,往往把应用服务放在阿里云等平台上。除了对外服务,公司还存在一些对内的测试环境、监控等服务,如果这些内部服务同时也有外网访问的需求。直接用云平台构建也蛮省事,但对于初创公司而言,会是一笔不小的成本。本文章将介绍一种更好的方式:基于frp开源工具,构建一个外网可访问的内网穿透环境。

前提条件

外网可访问,必须要有一个外网的固定ip。这个ip可以是运营商安装网络时给的(一般运营商网络多是浮动ip,要固定网络ip需额外掏钱购买),也可以是一台阿里云服务器(云服务器上有绑定对外的固定ip)。本文以一台阿里云主机作为内网穿透的跳板接入入口。即构建环境必须满足以下两个条件:

  1. 一台阿里云主机
  2. 内网环境至少一台机器能访问外网(运营商网络可以是浮动ip)

方案原理

以阿里云主机作为外网访问的跳板入口,通过内网穿透工具frp,转发请求到内网环境,以达到内网环境服务对外开放的目的。其中云主机上需安装frp内网穿透server端,公司内网环境安装frp client端,依靠frp server 到 client的连接作为内外网数据交换的通道。

frp地址

frp官方地址:

GitHub - fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.

frp下载地址:

Releases · fatedier/frp · GitHub

安装

Frp使用go语言开发,支持Linux、window、mac等操作系统。安装非常方便,选择平台下载相应安装包,解压即可使用。本文以Linux centos系统为例介绍。

安装目录执行以下命令:

wget https://github.com/fatedier/frp/releases/download/v0.31.0/frp_0.31.0_linux_amd64.tar.gztar xzvf frp_0.31.0_linux_amd64.tar.gzmv frp_0.31.0_linux_amd64 frp

cd frp目录

1bfc3bacd4d19e43dcef5d6e3ad2b910.png

其中frps前缀是服务端相关文件,frpc前缀为客户端相关文件。

服务端配置

编辑服务端frps.ini配置文件

vi frps.ini

e54aeec48442c1778b3dd3d73d7f6aa9.png

bind_port:frps服务端监听端口,用于frpc客户端建立连接时使用。

vhost_http_port:http访问监听端口,可根据需要自行调整其他端口。

vhost_https_port:https访问监听端口,可根据需要自行调整其他端口。

subdomain_host:子域名地址定义。用于服务端请求域名地址转发,如***.com

dashboard:一个简单的frp服务监控面板设置。

注意:以上配置端口,在云主机上需开放对应端口访问权限,否则服务将无法正常访问。

完成配置后,启动frps服务

nohup ./frps -c frps.ini &

客户端配置

编辑frpc.ini客户端配置

978d05db7ff111e50e1a6ab5e9ba3365.png

server_addr:frps服务端ip地址,对应云主机外网访问ip地址。

server_port:对应frps服务端监听端口,这里7000与上一步配置端口对应。

[web]:转发规则配置分组。

type:协议类型。http或https等。

local_port:请求转发端口。

subdomain:请求转发子域名域名地址。frps.ini文件subdomain_host定义了***.com子域名,这里实际对应test.***.com格式的域名请求地址。

注意:以上配置端口,需开放防火墙对应端口限制,否则访问可能失败。

完成配置后,启动frpc服务

nohup ./frpc -c frpc.ini &

小结

完成以上步骤,内网服务器上启动相关服务。浏览器访问test.***.com域名服务,即可在外网访问内部服务。

本文介绍了内网穿透工具frp的使用背景,构建方式。通过简单的frp服务端和客户端配置,实现了内网服务的外网域名访问。实际frp的实现远远不止http/https域名的穿透访问,它也支持ssh、tcp、udp等路由功能,有兴趣的小伙伴可以自行参考官网介绍。这里仅做抛砖引玉,欢迎一起深入讨论。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值