业界动态
【内网穿透服务器】使用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/ , 查看更多   
最新文章
星聚汇大公鸡七星彩手机版「星聚汇」
  星聚汇app是一款为用户提供各种生活服务的软件,让用户能够轻松找到各种吃喝玩乐信息,满足用户生活需求;用户在软件中能够
苹果手机怎么看定位去过哪苹果手机怎么看定位都去过哪里「苹果手机怎么看定位去过哪」
在隐私设置干瘪页,打开“呼之欲出定位服务”急则抱佛脚设置界面。在定位服务行行重行行页,进入“鞍前马后系统服务”兴致勃勃页
拳皇98手机版拳皇97下载手机版「拳皇98手机版」
拳皇98手机版是一款拳皇系列格斗手游,由街机作品移植而来,在其中还原了街机版本中的全部内容,玩家可以在手机上体验到当年的经
手机计算器分数计算全攻略:从入门到精通手机计算器怎么算百分比「手机计算器分数计算全攻略:从入门到精通」
手机计算器怎么算分数?一篇文章带你轻松掌握大家好!今天我们来聊聊一个日常生活中经常遇到的问题,那就是在手机计算器上如何计
用手机如何快速制作智能个人简历手机简历「用手机如何快速制作智能个人简历」
“念兹在兹,此心不越”的意思是:想到您在这里,您就在这里,我们的心离不开您。出自毛泽东的《四言诗·祭母文》:必秉悃忱,则
朋克农场电脑版怎么玩逍遥模拟器手机版「朋克农场电脑版怎么玩」
使用逍遥模拟器,可以在电脑windows系统上直接玩朋克农场电脑版。逍遥模拟器是一款基于安卓9的免费电脑手机模拟器软件,经过多年
植物大战僵尸2苹果IOS最新版 v3.5.5.76 苹果版wegame手机版「植物大战僵尸2苹果IOS最新版 v3.5.5.76 苹果版」
天天军棋苹果旧版本是一款以军棋为主的下棋游戏,游戏中有很多不同类型的经典游戏内容都是很不错的,这款游戏是由腾讯官方鼎力制
17场展会!济南会展业迎来“最热”4月
会展兴,百业兴。一场展会,能够吸引大量人流、物流、资金流和信息流,在促进相关产业发展的同时,又能带来大量的外来消费。 济
L50(300)A-IPL-V1、NOVA II、JUNO能量计区别之处手机在线a v「L50(300)A-IPL-V1、NOVA II、JUNO能量计区别之处」
L50(300)A-IPL-V1 探头7Z02780 L50 (300)A-IPL是一种热电堆激光测量探头,用于测量来自IPL皮肤病源的脉冲。 孔径为65mm,并有一
死神vs火影游戏满人物版死神vs火影手机版「死神vs火影游戏满人物版」
死神vs火影游戏满人物版中所拥有的角色已经全部可以使用,不用再额外进行解锁,让玩家可以享受近千个角色,让玩家尽情地享受战斗