业界动态
【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器
2024-11-19 03:05

frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。 【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器

【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器

相比ngrok,frp内网穿透无需多复杂的配置就可以达到比较好的穿透效果,具有较强的扩展性,支持 tcp, udp, http, https 协议。

在学习搭建前,首先需要理解什么是代理。

Proxy即代理,被广泛应用于计算机领域,主要分为正向代理与反向代理

正向代理

正向代理隐藏了真实的请求客户端。服务端不知道真实的客户端是谁,客户端请求的服务都被代理服务器代替来请求,某些科学上网工具扮演的就是典型的正向代理角色。用浏览器访问http://www.google.com时被墙了,于是你可以在国外搭建一台代理服务器,让代理帮我去请求 google,代理把请求返回的相应结构再返回给我。 【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器 当多个客户端访问服务器时服务器不知道真正访问自己的客户端是那一台。正向代理中,proxy和client同属一个LAN,对server透明。 【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器

反向代理

反向代理隐藏了真实的服务端,当我们请求 ww.baidu.com 的时候,背后可能有成千上万台服务器为我们服务,但具体是哪一台,你不知道,也不需要知道,你只需要知道 www.baidu.com 是我们的反向代理服务器,反向代理服务器会帮我们把请求转发到真实的服务器那里去。Nginx就是性能非常好的反向代理服务器,用来做负载均衡。 【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器 反向代理中,proxy和server同属一个LAN,对client透明。

【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器 FRP实现内网穿透,就在于使用反向代理,使得真实的服务端得以隐藏。当外部用户(client)请求访问服务端VPS的时候,服务端VPS是下图中的客户端(实质上是上图中的server)的反向代理服务器,反向代理服务器会帮我们把请求转发到真实的服务器(下图中的客户端)那里去。这样就实现了内网穿透。

: Client = 外部用户 proxy = 公网服务器(需要在服务器上搭建FRP服务端) Server = 内网服务器(需要在服务器上搭建FRP客户端

需要提前准备的材料
  1. 公网服务器1台(国外服务器需要关闭时间戳校验)
  2. 内网服务器1台
  3. 公网服务器绑定域名1个(可选项

需要额外注意的事项

  1. 注意,除http(s)以外,客户端frpc.ini内任何端口修改时须在以下范围内: 默认端口白名单:2000-3000,3001,3003,4000-50000

  2. 转发远程桌面时,需先在本机开启允许远程协助 我的电脑-右键属性-远程设置

  3. 需要注意frpc所在机器和frps所在机器的时间相差不能超过15分钟,因为时间戳会被用于加密验证中,防止报文被劫持后被其他人利用。

服务端(公网服务器)编辑的是:frps.ini

客户端编辑的是:frpc.ini

(1)服务端部署(Linux VPS

配置 FRP 服务端的前提条件是需要一台具有公网 IP的设备,得益于 FRP 是 Go 语言开发的,具有良好的跨平台特性。你可以在 Windows、Linux、MacOS、ARM等几乎任何可联网设备上部署。

 
 
 

设置为开机自动启动

 
 

注意ExecStart中要配置成自己的绝对路径,绝对路径可以通过pwd命令查询。

 

(2)客户端部署(以树莓派为例

 
 
 

设置为开机自动启动

 
 
 

这样就可以在 FRP 服务端上成功建立一个客户端连接,当然现在还并不能对外提供任何内网机器上的服务,因为我们并还没有在 FRP 服务端注册任何内网服务的端口。

(1)服务端部署(Linux VPS
 

Dashboard 界面【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器 【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器 注意:面板上所有转发的端口都需要在服务器端开放其防火墙 注意:面板上所有转发的端口都需要在服务器端开放其防火墙 注意:面板上所有转发的端口都需要在服务器端开放其防火墙 【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器 【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器

 
(2)客户端部署(后附每个穿透方案的详解
 

详解

 
通过 TCP 访问内网机器
 
通过 UDP 访问内网机器
 
通过 FRP 客户端代理其它内网机器访问外网
 
通过自定义域名访问部署于内网的 Web 服务 点此查看实例
 
 

1. 通过代理连接 FRP 服务端

在只能通过代理访问外网的环境内,FRP 客户端支持通过 HTTP_PROXY 参数来配置代理和 FRP 服务端进行通信。要使用此功能可以通过设置系统环境变量 HTTP_PROXY 或者通过在 FRP 客户端 的配置文件中设置 http_proxy 参数来使用此功能。

 

2. 安全地暴露内网服务(STCP

对于一些比较敏感的服务如果直接暴露于公网上将会存在安全隐患,FRP 也提供了一种安全的转发方式 STCP。使用 STCP (secret tcp) 类型的代理可以避免让任何人都能访问到穿透到公网的内网服务,要使用 STCP 模式访问者需要单独运行另外一个 FRP 客户端。

下面就以创建一个只有自己能访问到的 SSH 服务代理为例,FRP 服务端和其它的部署步骤相同,主要区别是在 FRP 客户端上。

 

其次在要访问这个服务的机器上启动另外一个 FRP 客户端,配置如下

 

这样就可以通过本机 6005 端口对内网机器 SSH 服务进行访问。

3. 点对点内网穿透

在传输大量数据时如果都经过服务器中转的话,这样会对服务器端带宽压力比较大。

FRP 提供了一种新的代理类型 XTCP 来解决这个问题,XTCP 模式下可以在传输大量数据时让流量不经过服务器中转。

使用方式同 STCP 类似,需要在传输数据的两端都部署上 FRP 客户端上用于建立直接的连接。

首先在 FRP 服务端 配置上增加一个 UDP 端口用于支持该类型的客户端: bind_udp_port = 7001

 

其次配置 FRP 客户端,和常规 TCP 转发不同的是这里不需要指定远程端口。 修改前

 

修改后

 

然后在要访问这个服务的机器上启动另外一个 FRP 客户端,配置如下

 

这样就可以通过本机 6006 端口对内网机器 SSH 服务进行访问。

目前 XTCP 模式还处于开发的初级阶段,并不能穿透所有类型的 NAT 设备,所以穿透成功率较低。穿透失败时可以尝试 STCP 的方式。

这里以SSH为例

【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器

    以上就是本篇文章【【内网穿透服务器】使用FRP实现内网穿透,远程访问内网服务器】的全部内容了,欢迎阅览 ! 文章地址:http://www78564.xrbh.cn/news/27522.html 
     文章      相关文章      动态      同类文章      热门文章      栏目首页      网站地图      返回首页 迅博思语移动站 http://www78564.xrbh.cn/mobile/ , 查看更多   
最新文章
今天有好东西,大折扣!
仰仰铺子·好物盘点这一期好物盘点,千万别错过!都是好宝贝,超低价,就连我们好久没有福利活动的丝蓓缇黑姜分解酵母也弄到了特
SEO推广排名的奥秘,全面解析实现路径与战略意义
SEO推广排名是指通过搜索引擎优化技术提高网站在搜索引擎结果页面(SERP)中的排名。实现SEO排名需要优化网站内容、结构、技术等
【图】领克05欢迎莅临赏鉴 价格直降1.1万 详询:4009728340
购好车来领福新年享9重好礼【试驾礼】进店试乘试驾均享受精美礼品一份【大客户】指定企业员工购车享3000元补贴。【置换礼】至高
快步剪辑师(快剪辑教学)
摘要:快步剪辑师,快剪辑教学课程,场课为您整理出关于快步剪辑师的相关在线教程知识,欢迎访问了解快步剪辑师(快剪辑教学)的
推动手机能效标准化:从用户呼声看行业未来
近年来,智能设备的普及让我们越来越依赖手机,而手机的能效问题逐渐引起了用户的关注。近期,有用户提出建议,希望将手机能效列
GPT-4 接入 Office 全家桶:Word 一键变成 PPT,打工人的春天来了!
作者 | 屠敏出品 | CSDN(ID:CSDNnews)这一周的科技圈异常地热闹,且多数都是大模型给的:周二
双十二荣耀手机别乱买!这三款物美价廉,性价比几乎“零差评”
每年到了双十二,买手机这件事就像一场“技术与钱包的拔河赛”。想选性价比高的,又怕踩雷;想要配置好的,又担心被钱包发出“哀
分析Android 搜狗输入法在微信和QQ中发送图片和表情
好记性不如烂笔头。生活中多做笔记,不仅可以方便自己,还可以方便他人。有没有发现,有时候表情或图片的交流更能让气氛更愉悦。
企业SEO用什么程序:提升搜索引擎排名的必备工具与策略
在当今数字化时代,企业的在线存在变得日益重要。为了在激烈的市场竞争中取得优势,企业必须充分利用搜索引擎优化(SEO)技术。
Python 到底能干嘛?—次学会Python所有开发技能_学python能干嘛,需要全学吗 (2)
最后 Python崛起并且风靡,因为优点多、应用领域广、被大牛们认可。学习 Python 门槛很低,但它的晋级路线很多ÿ