frp服务器和客户端怎么配置?frp内网穿透详细配置教程

FRP的核心原理是通过公网服务器中转内网流量,实现内网穿透,配置关键在于正确设置frps服务端与frpc客户端的配置文件,确保端口映射与认证令牌一致。

FRP服务器与客户端配置实战指南

在数字化转型的浪潮中,许多企业和个人开发者都面临着将内网服务暴露给公网的需求,无论是远程桌面控制、内网Web服务发布,还是IoT设备的数据回传,FRP(Fast Reverse Proxy)凭借其高性能和易用性,成为了业内共识认为的首选工具之一,配置FRP并非复杂的代码编写,而是一场关于网络拓扑与端口管理的精密配合。

frp内网穿透最新实践教程 从零开始详细步骤
加载中
frp内网穿透最新实践教程 从零开始详细步骤

服务端(frps)环境部署

服务端是FRP架构的大脑,负责接收来自客户端的连接请求并转发数据,选择一台拥有公网IP的云服务器(如简米云、酷番云或AWS)作为服务端是基础前提。

下载与解压

访问FRP的官方GitHub仓库,根据服务器操作系统(Linux/Windows)和架构(amd64/arm64)下载对应版本,以Linux为例,执行以下命令:


wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp_0.52.3_linux_amd64.tar.gz
tar -xzvf frp_0.52.3_linux_amd64.tar.gz
cd frp_0.52.3_linux_amd64
核心配置文件frps.ini

配置文件是服务端行为的定义书,创建一个名为frps.ini的文件,填入以下基础配置:


[common]
# 绑定端口,默认7000,建议修改为非标准端口以增加安全性
bind_port = 7000
# 绑定地址,0.0.0.0表示监听所有网卡
bind_addr = 0.0.0.0
# 身份验证令牌,必须与客户端保持一致
token = your_strong_password
# Dashboard监控面板端口
dashboard_port = 7500
# 监控面板用户名和密码
dashboard_user = admin
dashboard_pwd = admin_password

业内专家指出,设置强密码的token是防止未授权访问的第一道防线,切勿使用默认值或简单字符串。

启动服务端

使用nohup命令后台运行,确保服务在终端关闭后依然存活:

frp服务器和客户端怎么配置?frp内网穿透详细配置教程


nohup ./frps -c ./frps.ini > frps.log 2>&1 &

你可以通过浏览器访问http://<服务器IP>:7500,输入预设的用户名和密码,查看实时连接状态和流量统计。

客户端(frpc)内网穿透配置

客户端部署在内网机器上,它负责监听本地服务,并通过加密隧道将流量转发给服务端。

下载与解压

在需要穿透的内网机器上下载相同版本的FRP客户端,解压后进入目录。

核心配置文件frpc.ini

创建frpc.ini文件,配置内容如下:


[common]
# 服务端地址
server_addr = <你的公网服务器IP>
# 服务端端口
server_port = 7000
# 身份验证令牌,必须与服务端一致
token = your_strong_password

示例1:远程桌面(RDP)穿透

[rdp]type = tcplocal_ip = 127.0.0.1local_port = 3389remote_port = 6000

示例2:Web服务穿透

[web]type = httplocal_ip = 127.0.0.1local_port = 80custom_domains = <你的域名>

这里需要特别注意,remote_port是公网访问时使用的端口,而local_port是内网服务实际监听的端口,对于Web服务,推荐使用HTTP类型,并绑定自定义域名,这样可以利用FRP的HTTP路由功能,实现基于域名的多服务分发。

启动客户端

同样使用后台运行命令:


nohup ./frpc -c ./frpc.ini > frpc.log 2>&1 &

FRP服务器和客户端配置常见问题排查

在实际操作中,连接失败是最常见的问题,以下是几种典型场景的解决方案。

连接被拒绝或超时

如果客户端启动后日志显示连接失败,首先检查防火墙,云服务器厂商(如简米云安全组、酷番云安全组)默认会拦截非标准端口,务必在控制台放行bind_port(如7000)和dashboard_port(如7500)对应的入方向规则。

Token认证失败

日志中出现authentication failed

frp服务器和客户端怎么配置?frp内网穿透详细配置教程

错误,通常是因为frps.ini和frpc.ini中的token字段不一致,请仔细比对,注意大小写和空格,建议将此字段设置为长随机字符串,避免使用特殊字符。

Web服务无法访问

对于HTTP类型的穿透,如果绑定域名后无法访问,需确保:

  1. 域名已解析到公网服务器IP。
  2. 服务器防火墙放行了80/443端口(如果使用默认HTTP端口)。
  3. 在frpc.ini中正确配置了custom_domains。

FRP与Ngrok对比及选型建议

许多用户在开始时会纠结于选择FRP还是Ngrok,这两种工具各有优劣,适用于不同场景。

特性 FRP Ngrok
部署方式 需自建服务端,完全掌控 主要使用官方公共服务器,也可自建
安全性 高,数据完全私有 中等,使用公共服务器时数据经过第三方
成本 仅需服务器费用,无额外订阅费 免费额度有限,高级功能需付费订阅
稳定性 取决于自建服务器性能 官方服务稳定,但国内访问速度可能受限
适用人群 有服务器资源、注重隐私和长期稳定性的开发者 快速测试、临时分享、无服务器资源的用户

据工信部数据,近年来国内对数据安全的监管日益严格,自建FRP服务因其数据不经过第三方平台,成为企业内网穿透的主流选择,对于个人开发者而言,如果仅用于临时调试,Ngrok的便捷性无可替代;但若涉及生产环境或敏感数据,FRP是更稳妥的方案。

FRP服务器和客户端配置进阶优化

当基础配置完成后,可以通过以下优化提升体验。

使用HTTPS加密

在frpc.ini的HTTP代理配置中,可以指定

frp服务器和客户端怎么配置?frp内网穿透详细配置教程

tls_enable = true,FRP会自动处理TLS握手,但这需要服务端配置SSL证书,或者使用支持SNI的域名解析。

多服务复用端口

通过HTTP类型的custom_domains,你可以在同一个remote_port(如80)下映射多个不同的内网服务,只需为每个服务绑定不同的域名即可,这大大节省了公网端口资源。

日志轮转与监控

建议配置日志轮转策略,避免日志文件无限增长占用磁盘空间,可以使用log_max_days参数限制日志保留天数,定期监控Dashboard的流量使用情况,及时发现异常连接。

Q&A:FRP服务器和客户端配置常见疑问

FRP支持UDP协议穿透吗?

支持,在frpc.ini中,将type设置为udp即可,穿透DNS服务或某些游戏服务器,配置方式与TCP类似,只需指定local_port和remote_port,需要注意的是,UDP是无连接的,因此不适合需要保持长连接的场景,且防火墙对UDP的拦截策略可能与TCP不同,需单独检查。

FRP配置中local_port和remote_port有什么区别?

local_port是内网机器上实际运行服务的端口,例如你本地搭建的Web服务监听在8080端口,那么local_port就是8080。remote_port是公网访问时使用的端口,例如你希望公网用户通过http://<IP>:8080访问,那么remote_port就是8080,两者可以相同,也可以不同,取决于你的网络规划和端口占用情况。

FRP客户端掉线后如何自动重连?

FRP客户端默认支持断线重连,在frpc.ini中,server_port和server_addr保持不变的情况下,客户端会在后台尝试重新连接服务端,如果配置了start参数,可以指定启动时自动连接,对于生产环境,建议使用systemd或supervisor等进程管理工具托管frpc进程,确保服务在崩溃或重启后能自动拉起。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/473532.html

赞 (0)
如何搭建股票数据仓库?股票数据仓库搭建步骤详解
上一篇 2026年7月8日 21:56
CDN加速原理是什么,CDN加速
下一篇 2026年7月8日 21:58

相关推荐

  • 服务器二级等保怎么过?等保测评流程及费用详解

    服务器通过二级等保认证,核心在于落实物理安全、网络安全、主机安全及数据安全四大维度的合规整改,通常需投入3-8万元不等,周期约1-3个月,是互联网企业合规经营的必选项,很多站长和业务负责人一听到“等保”两个字就头大,觉得这是财务部门的事,或者是个麻烦的行政流程,二级等保更像是给您的服务器系统做了一次全面的“体检……

    2026年7月3日
    2900
  • 房产小程序有哪些功能和使用方法?,开发费用多少?

    房产小程序的核心价值在于将线下看房流程线上化,实现房源展示、客户留资和实时沟通,但开发前必须搞清楚功能需求、预算范围和上线周期,否则容易花冤枉钱, 房产小程序的选择应从业务场景出发,先确定核心功能,再匹配开发方式,最后用运营数据验证效果,这样才可能真正实现降本增效,房产小程序开发费用构成:从模板到定制怎么选模板……

    2026年7月22日
    1600
  • 为什么过滤器效果不好?家用净水器过滤器怎么选

    在2026年的内容生态中,”filtered”代表的不仅是技术层面的过滤,更是信息降噪与精准匹配的核心能力,它通过算法筛选出高价值内容,直接决定了用户能否在海量数据中快速获取有效信息,为什么2026年的搜索更依赖过滤机制过去的搜索逻辑是”关键词匹配”,用户输入词,系统返回包含该词的所有页面,这种模式在信息匮乏时……

    2026年7月8日
    16300
  • 负浮点数在计算机中如何存储,存储格式是什么?

    负浮点数在计算机中遵循IEEE 754标准存储,使用符号位、指数位和尾数位,其中指数位采用移码表示,这与整数补码存储完全不同,是理解浮点数精度和范围的关键,负浮点数在计算机中的存储原理是什么?要理解负浮点数在计算机中是如何存储的,得从IEEE 754标准说起,这个标准由电气和电子工程师协会制定,现代CPU和几乎……

    2026年7月26日
    2100
  • IDC租赁市场分析与资源配置怎么做?,IDC租赁多少钱

    2026年IDC租赁市场,企业若想控制成本并保障业务稳定,必须将资源配置与业务带宽需求、地域节点分布深度绑定,同时关注服务商阶梯定价与冗余策略,idc租赁市场分析:2026年价格走势与选型风向主流服务商定价策略与市场格局头部服务商在2026年呈现分层定价趋势,大型云厂商自建数据中心通过规模效应压低机柜租赁单价……

    2026年8月4日
    1000
  • 大模型MoCo对比学习是什么?大模型MoCo对比学习原理

    大模型的MoCo对比学习是一种通过“记忆库”机制,让模型在无需大量标注数据的情况下,通过区分相似与不相似样本,从而学会更精准特征表示的自监督学习技术,在人工智能领域,如何高效利用海量未标注数据一直是行业痛点,传统的监督学习依赖昂贵的人工标注,而MoCo(Momentum Contrast)正是为了解决这一效率问……

    2026年6月21日
    1710
  • 服务器客户端字符串TCP通信出错怎么办?TCP粘包拆包解决方法

    在TCP协议下,服务器与客户端通过字符串进行通信时,核心在于处理“粘包”与“拆包”问题,通常采用固定长度、分隔符或长度前缀等策略来确保数据边界清晰,想象一下,TCP就像是一条没有隔断的传送带,而字符串则是你放在上面的包裹,服务器和客户端就是传送带两端的工人,如果包裹大小不一,且源源不断地堆叠,工人就很难分清哪个……

    2026年7月5日
    6200
  • ims公司GetDims是做什么的,怎么用?

    ims公司_GetDims是什么?先回答你:这是ims集团面向工业设备状态监测场景推出的一套基于多维数据采集与特征识别系统的统称,核心价值是把设备从“坏了再修”变成“提前预判”,很多从业者第一次听到“GetDims”是模糊的,因为ims官网并不把它作为一个单独产品来宣传,而是嵌入在设备健康管理( PHM )系统……

    2026年8月17日
    700
  • ivp9中国根服务器信任根CA是什么,怎么设置?

    ivp9中国根服务器与信任根CA是我国网络基础设施的关键组成部分,通过自主根节点和国产CA证书体系,保障域名解析和身份认证的自主可控与安全可信,中国根服务器与信任根CA是什么根服务器镜像的作用根服务器是域名系统的总目录,全球13个主根服务器由美国等机构管理,但中国已部署多个根服务器镜像,同步根区数据,这意味着国……

    2026年8月12日
    500
  • InnoDB启动时锁等待怎么办,MySQL死锁是什么原因?

    InnoDB锁等待的本质是事务之间对同一行数据的竞争,解决路径无非两条:缩短持有锁的时间,或者提高等待的容忍上限,真正的高手,会把功夫花在SQL设计和索引优化上,而不是等到线上告警才去查,InnoDB启动时为什么会出现锁等待很多人在MySQL刚启动、业务还没跑热的时候就撞上锁等待,第一反应是“数据库坏了”,其实……

    2026年8月13日
    1200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注