frp内网穿透怎么配置?frp配置文件参数详解

frp 是目前内网穿透场景中应用最广泛、性能最稳定的开源方案之一。 正确配置 frp 的关键在于三点:服务端安全加固、客户端参数精准匹配、流量传输加密,只要按照本文给出的步骤操作,即可在 15 分钟内构建一条安全可靠的内网穿透链路,并且能够直接应用于生产环境。


frp 工作原理简述

frp 由服务端 frps 和客户端 frpc 组成,服务端部署在具有公网 IP 的服务器上,客户端部署在内网机器中,客户端主动向外发起连接,与服务端建立控制通道,然后根据配置将内网服务映射到公网端口,整个过程无需在路由器上做端口映射,适用于没有公网 IP 的家庭宽带、企业内网、开发调试等场景。


服务端配置(frps)

基础配置清单

在公网服务器上创建 frps.toml(frp v0.52.0 及以上版本使用 TOML 格式,旧版本使用 INI 格式,建议直接使用新版本):

bindPort = 7000
auth.method = "token"
auth.token = "请设置一个足够复杂的随机字符串"
webServer.addr = "0.0.0.0"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "请设置强密码"
  • bindPort 是 frps 与 frpc 通信的端口,建议改为非默认端口(如 17000),降低被扫描概率。
  • auth.token 是客户端连接服务端的凭证,必须使用长随机字符串,不要用弱口令。
  • webServer 是可视化监控面板,可以实时查看连接状态和流量统计,务必开启

防火墙与安全组放行

需要同时放行三个端口:bindPort、webServer.port、以及后续转发规则中使用的所有远程端口,云服务器还需要在安全组中单独配置入方向规则,否则即使服务器内部防火墙放行也无法访问。

frp内网穿透怎么配置?frp配置文件参数详解

服务端启动与守护

推荐使用 systemd 方式运行,保证服务异常退出后自动重启,创建 /etc/systemd/system/frps.service 文件后,执行 systemctl enable --now frps 即可,同时建议使用 journalctl -u frps -f 查看运行日志,排查连接异常。


客户端配置(frpc)

基础配置清单

内网机器上创建 frpc.toml

serverAddr = "你的公网服务器IP"
serverPort = 17000
auth.method = "token"
auth.token = "与服务端完全一致的token"
[[proxies]]
name = "ssh"
type = "tcp"
localIP = "127.0.0.1"
localPort = 22
remotePort = 6022

这条配置的含义是:将内网机器的 SSH 服务映射到公网服务器的 6022 端口,访问时使用 ssh -p 6022 用户名@公网服务器IP 即可。

常用代理类型

  • tcp:适用于 SSH、RDP、数据库连接、自定义 TCP 服务。
  • udp:适用于 DNS、游戏联机、部分视频传输。
  • http/https:适用于 Web 服务,可绑定域名并配置虚拟主机。
  • stcp:加密点对点通信,公网端口不暴露,安全性更高,适合远程桌面。

多服务映射

一个客户端可以同时配置多条 [[proxies]] 规则,例如同时映射 SSH 和 MySQL:

[[proxies]]
name = "mysql"
type = "tcp"
localIP = "192.168.1.10"
localPort = 3306
remotePort = 63306

注意:每个 remotePort 都必须在服务端未被占用,且防火墙已放行。


安全加固与性能优化

必须做的三项安全措施

  1. 使用 stcp 替代直接暴露端口,对于远程桌面、数据库等高敏感服务,不要直接映射公网端口,而是通过 stcp 配合 frpc 的 secretKey 进行点对点加密访问,公网服务器上

    frp内网穿透怎么配置?frp配置文件参数详解

    不监听任何业务端口

  2. 限制来源 IP,在服务端可以通过 allowPorts 白名单限制客户端只能映射指定范围内的端口,避免恶意用户通过 frp 开放任意端口。
  3. 定期更新版本,frp 更新频率较高,旧版本可能存在安全漏洞,建议使用最新稳定版并关注官方 release 说明。

性能调优建议

  • 传输大文件时,在服务端和客户端同时设置 transport.poolCount = 5,增加连接池数量。
  • 如果涉及高带宽占用,建议将 transport.bandwidthLimit 调高或设为 0(不限制)。
  • 使用 tcpmux 功能可以让多条 TCP 代理共享一个端口,减少公网端口暴露面。

酷番云产品结合的独家经验案例

我们的一个生产环境客户使用了酷番云香港轻量应用服务器作为 frps 服务端,配置为 2 核 4G 内存、5Mbps 带宽,该客户需要同时远程访问位于深圳办公室的 ERP 系统、文件服务器和视频监控。

在实际部署中,我们做了以下优化:

  1. 选择酷番云服务器时,额外购买了 5 个弹性公网 IP 备用,由于 frp 本身不提供端口复用能力,多业务场景容易遇到端口冲突,通过酷番云的控制台快速添加辅助 IP,可以在不重启服务的情况下为每个业务分配独立入口。
  2. 利用酷番云自带的 DDoS 基础防护,在服务端防火墙层过滤异常流量,frp 服务端一旦公网暴露,容易受到端口扫描和暴力破解,酷番云控制台的防火墙规则可以设置 IP 白名单,仅允许客户公司出口 IP 访问 webServer 管理面板。
  3. 将 frps 安装在酷番云的数据盘上,日志单独存放,frp 运行一段时间后日志文件增长较快,酷番云支持在线扩容数据盘,避免了因磁盘占满导致 frps 崩溃的问题。
  4. frp内网穿透怎么配置?frp配置文件参数详解

该方案上线后稳定运行 8 个月,零故障,远程访问内网 ERP 的延迟维持在 30ms 以内,体验与内网直连几乎无差别。


常见问题排查思路

  • 客户端报 login to server failed: EOF大概率 token 不一致,检查服务端和客户端的 auth.token 是否完全相同。
  • 能连上但无法访问转发端口:检查服务端防火墙、云安全组是否放行 remotePort
  • 连接时断时续:多为网络不稳定或 transport.poolCount 设置过低,适当调大并开启 KeepAlive 参数。

相关问答模块

frp 和 ngrok、ZeroTier 相比,核心优势是什么?

frp 的完全自托管特性决定了它不受第三方平台限制,ngrok 官方服务有流量限制和域名绑定要求;ZeroTier 虽然组网简单,但依赖中心化协调服务器,且不适合暴露 TCP/UDP 单一端口服务,frp 部署在你自己的服务器上,不存在服务商跑路或限速的问题,同时支持几乎所有四层和七层协议,自定义程度最高。

使用 frp 映射内网 Web 服务,如何配置域名访问?

首先在 DNS 服务商将域名解析到 frps 所在公网服务器 IP,然后在 frpc 配置中启用 http 类型代理:

[[proxies]]
name = "web"
type = "https"
localIP = "127.0.0.1"
localPort = 8443
customDomains = ["www.example.com"]

同时在 frps 中开启 vhostHTTPPort = 8080vhostHTTPSPort = 8443,用户访问 www.example.com:8080 时,frps 根据域名将请求转发到内网对应端口,如果需要 80/443 标准端口,请确保服务器没有其他 Web 服务占用,或通过反代工具配合使用。


你在实际使用 frp 过程中遇到过最棘手的配置问题是什么?欢迎在评论区留言,我们会根据真实场景补充针对性解决方案。

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/773569.html

(0)
上一篇 2026年9月3日 01:15
下一篇 2026年9月3日 01:16

相关推荐

  • thinkphp如何配置路由?thinkphp路由配置详解与常见问题

    ThinkPHP的路由配置:高效、安全、可维护的路由设计实践在ThinkPHP框架中,路由配置是连接URL与业务逻辑的核心枢纽,直接影响应用的可维护性、SEO表现及系统安全性,合理设计的路由不仅提升开发效率,还能显著增强用户体验与搜索引擎友好度,本文基于ThinkPHP 6.x版本,结合企业级开发经验,系统阐述……

    2026年4月10日
    04083
  • IBM X3650配置RAID,IBM X3650配置RAID详细步骤

    在IBM x3650服务器环境中,配置RAID的核心结论是:必须优先选择RAID 10而非RAID 5,以兼顾高读写性能与数据安全性,并务必启用硬件RAID卡的电池保护模块(BBU)及写入缓存策略,这一配置方案能最大化发挥x3650的硬件潜力,确保业务连续性与数据完整性,对于追求极致稳定性的企业级应用,RAID……

    2026年6月3日
    01682
  • 为何这款电脑配置中没有可配置的独立显卡选项?是否意味着性能受限?

    在当今计算机硬件领域,显卡(Graphics Card)作为提升图形处理能力的关键组件,其重要性不言而喻,随着技术的发展,一些显卡产品不再提供可配置的交换功能,这对于用户来说,既有便利性也有局限性,本文将围绕没有可配置交换显卡这一话题展开讨论,探讨其优缺点以及用户应该如何应对,没有可配置交换显卡的优缺点优点(1……

    2025年11月1日
    04370
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • Linux基本安全配置,如何确保系统稳定与安全?30字长尾标题,Linux系统安全配置关键点有哪些?

    Linux基本安全配置指南系统更新与维护定期更新系统:使用sudo apt update和sudo apt upgrade命令,确保系统软件包的最新版本,系统维护脚本:创建一个维护脚本,定期执行系统清理和优化操作,操作说明sudo apt-get clean清除本地apt缓存sudo apt-get autor……

    2025年11月24日
    03240

发表回复

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