云服务器怎么部署运行frp?,frp内网穿透怎么配置

想在内网穿透场景中快速打通远程访问通道,直接在云服务器上部署frp是当前多数开发者和运维人员验证过的通用方案,核心做法很简单:在具有公网IP的云服务器上运行frps服务端,在内网机器上运行frpc客户端,通过配置文件将内网端口映射到公网。

frp云服务器部署前需要准备什么

部署frp不是直接拷个二进制文件就能跑通,提前确认几个基础条件能让后续少踩坑。

手把手教大家如何使用雨云的服务器来搭建内网穿透frp
加载中
手把手教大家如何使用雨云的服务器来搭建内网穿透frp
皓
皓月科技-皓月云
3304--
原视频地址

云服务器与网络环境的基本要求

公网IP是硬性门槛,frp的原理依赖服务端具备公网可达地址,没有公网IP的云主机无法充当跳板,国内主流云厂商的轻量应用服务器和ECS都默认分配公网IP,这点基本能满足。

操作系统方面,Debian 11/12和Ubuntu 20.04/22.04是社区使用频率最高的两个发行版,CentOS 7虽然存量用户不少,但已停止维护,新部署不建议再用,服务器配置不用太高,1核1G的实例跑frps完全够用,带宽才是关键,按需选择。

安全组和防火墙是新手最容易忽略的环节,云厂商控制台的安全组规则和服务器内部的ufw/firewalld都要放行frp所需的端口,后续配置中会用到的端口包括:

  • frps服务端监听端口(默认7000)
  • 需要映射到公网的业务端口(比如80、443、3389、22)
  • dashboard可视化面板端口(默认7500)

客户端机器与部署场景确认

客户端可以是内网任意一台能联网的设备,常见的场景有:

  • 家里或办公室的NAS需要外网访问
  • 本地开发环境需要提供给同事或客户预览
  • 内网Windows机器需要远程桌面控制
  • 没有公网IP的服务器需要暴露HTTP服务

明确了场景,才能决定frpc配置中代理类型是tcp、udp还是http,前期需求想得越清楚,后面改配置的次数越少。

frp服务端配置和客户端连接的完整流程

整个部署过程可以拆成四个阶段,每个阶段都有明确的操作命令和验证方式,这部内容也回答了很多人搜索的 frp内网穿透配置教程 核心诉求配置到底怎么写、参数到底怎么调。

第一步:下载frp并准备配置文件

到GitHub上fatedier/frp仓库的Releases页面下载对应系统架构的压缩包,不会判断架构的话,在服务器执行 uname -m,x86_64对应amd64,aarch64对应arm64。

以Linux amd64为例,下载解压命令如下:

wget https://github.com/fatedier/frp/releases/download/v0.61.0/frp_0.61.0_linux_amd64.tar.gz
tar -zxvf frp_0.61.0_linux_amd64.tar.gz
cd frp_0.61.0_linux_amd64

解压后目录里能看到frps和frpc两个可执行文件,还有对应的toml格式配置文件。frps是服务端程序,frpc是客户端程序,别搞混。

第二步:修改frps.toml服务端配置

编辑frps.toml,一份最简可用的服务端配置如下:

bindPort = 7000
auth.method = "token"
auth.token = "这里填一串随机生成的强密码"
webServer.addr = "0.0.0.0"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "这里填面板登录密码"

bindPort是frps与frpc通信的端口,可以改成其他端口,但必须保证安全组已放行,auth.token是客户端连接服务端的凭证,建议用openssl rand -base64 32生成随机字符串,不要用123456这类弱口令。

webServer部分是frp的可视化监控面板,能实时看到当前在线代理和流量情况,生产环境强烈建议开启,排查问题会方便很多。

第三步:启动frps服务端并验证

直接前台运行测试配置是否正确:

./frps -c ./frps.toml

看到 frps started successfully 之类的日志说明服务端已正常运行,此时按Ctrl+C停止进程,改用systemd做守护,保证服务器重启后frps自动拉起。

创建 /etc/systemd/system/frps.service 文件,内容如下:

[Unit]
Description=frps Service
After=network.target
[Service]
Type=simple
ExecStart=/root/frp_0.61.0_linux_amd64/frps -c /root/frp_0.61.0_linux_amd64/frps.toml
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target

注意ExecStart里的路径要改成你实际存放frp文件的绝对路径,执行以下命令启用并启动服务:

systemctl daemon-reload
systemctl enable frps
systemctl start frps
systemctl status frps

看到active (running)状态后,用浏览器访问 http://服务器公网IP:7500,输入配置的账号密码,能看到dashboard界面说明服务端部署成功。

第四步:客户端frpc配置与连接

内网机器上同样下载相同版本的frp压缩包,修改frpc.toml,这里给出一个tcp端口映射的典型配置,场景是把内网Windows的远程桌面3389端口映射到云服务器:

serverAddr = "云服务器公网IP"
serverPort = 7000
auth.method = "token"
auth.token = "和frps.toml中保持一致"
[[proxies]]
name = "rdp"
type = "tcp"
localIP = "127.0.0.1"
localPort = 3389
remotePort = 6000

serverAddr填云服务器的公网IP,auth.token必须和frps.toml里完全一致,localPort是内网机器的服务端口,remotePort是云服务器上的公网映射端口。

启动frpc客户端:

./frpc -c ./frpc.toml

看到 start proxy success 日志后,在任意网络环境执行 mstsc 连接 云服务器公网IP:6000,就能登录到内网Windows桌面。

frp常见配置方法与实践难点解析

熟悉基础连接后,再看几个使用频率较高的进阶配置方向。

多个内网服务同时映射的配置写法

一个frpc客户端可以映射多个内网服务,只需在配置文件中增加多个proxies块:

[[proxies]]
name = "ssh"
type = "tcp"
localIP = "192.168.1.10"
localPort = 22
remotePort = 6001
[[proxies]]
name = "web"
type = "http"
localIP = "192.168.1.20"
localPort = 8080
customDomains = ["web.example.com"]

http类型代理需要服务端开启vhostHTTPPort,并将域名解析到云服务器IP,这适合处理多个Web服务共用一台云服务器80端口的场景。

部署时应对高风险端口安全限制的策略

国内云厂商对80和443端口有备案限制,未备案域名无法直接使用这两个端口映射Web服务,行业内的通行做法有两种:

  • 使用非标准端口(如8080、8443)映射后拼接端口访问
  • 通过域名解析加CNAME回源的方式,绕开部分限制,但这种方式稳定性存疑,不推荐关键业务依赖

远程桌面和SSH端口映射不受备案影响,这也是frp常用于远程办公场景的原因之一。

frp与ngrok核心差异怎么选

很多用户纠结于 frp和ngrok哪个好 这个问题,两者定位不同,frp主打自托管、协议支持丰富、定制性强,ngrok官方服务上手快且有免费额度,但对传输流量和自定义域名有限制,如果注重数据私密性和长期成本,自建frp是更合理的选择。

frp配置错误排查与性能优化建议

部署过程中遇到问题不要慌,大部分情况集中在几个固定环节。

连接失败的常见诱因

连接失败时,按优先级从高到低排查:

  • 云服务器安全组有没有放行对应端口
  • 服务器本地防火墙是否拦截了frp的监听端口
  • frps和frpc的auth.token是否完全一致
  • remotePort是否被其他程序占用
  • 云厂商是否额外限制了某些端口的入站规则

用 ss -lntp | grep 7000 在服务器上确认frps端口监听状态,能快速定位问题出在网络层还是应用层。

提升frp稳定性和传输效率的方法

  • 使用systemd守护进程并设置Restart=on-failure,进程崩溃后自动拉起
  • frps和frpc升级到v0.52.0以上版本,默认使用更高效的通信协议
  • 大流量传输场景把传输加密关闭,降低CPU开销,但内网穿透到公网建议保留加密
  • 监控dashboard中流量数据,发现异常连接及时调整token

关于frp内网穿透价格与成本的真实情况

frp本身是开源软件,软件层面完全免费,部署成本集中在云服务器租赁和带宽费用,一台1核1G的入门级云服务器,国内厂商新用户活动价可以做到每年几十到一百多元,常规价格在每年两百到五百元区间,带宽建议选择按固定带宽计费而不是按流量计费,frp长连接场景下流量计费累积速度较快,综合来看,自建frp的成本远低于购买商业内网穿透服务,同时还能获得完整的数据控制权。

frp云服务器部署中常见问题解答

问:frp内网穿透速度慢,主要受什么因素影响?

速度瓶颈通常出现在云服务器的带宽上限,frp转发流量全部经过云服务器,如果服务器带宽只有1Mbps,内网千兆网络也无法提升访问速度,提升带宽或者选择就近地域的云服务器是直接有效的优化方式。

问:frp映射的端口被扫描攻击怎么办?

更改默认端口是第一步,将bindPort和remotePort设置为非常用端口能过滤掉大部分自动化扫描流量,登录认证依赖token做第一道防护,不要把端口直接暴露到公网范围过大,根据实际使用习惯,在云安全组里增加源IP白名单限制是更主动的防御方式,开启frp的传输加密功能可以防止数据在传输途中被恶意嗅探。

问:一台云服务器能同时跑frps和frpc吗?

可以,比如云服务器上同时运行frps服务端和另一个frpc客户端,用于将远端设备端口反向映射到本机,配置时注意frpc的serverAddr应填写云服务器的内网IP或127.0.0.1,避免流量绕行公网增加延迟。

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

赞 (0)
上一篇 2026年11月10日 00:11
创客空间通常配置哪些服务器,创客空间服务器如何选择
下一篇 2026年9月23日 00:02

相关推荐

  • 服务器cpu上不去怎么回事,服务器cpu利用率低的原因

    服务器CPU使用率上不去,核心症结往往不在于硬件性能不足,而在于资源分配失衡、软件架构限制或配置错误,大多数情况下,这是一种“假性瓶颈”,意味着服务器并未真实发挥其计算潜能,导致业务响应虽无报错,但处理效率低下,解决这一问题需要从应用层限制、线程模型缺陷、系统配置误区及负载均衡策略四个维度进行深度排查与优化,将……

    2026年4月10日
    8800
  • ASP代码中频繁出现空格,这些空格是否影响程序性能与效率?

    在ASP编程中,空格代码通常指用于处理或表示空格的字符或方法,主要包括HTML空格实体、VBScript函数如Trim、Replace,以及ASP内置对象中的空格处理技巧,这些方法在网页开发中至关重要,用于确保文本格式化、数据清洗和用户界面美观,ASP中空格代码的核心类型ASP(Active Server Pa……

    2026年2月3日
    16130
  • 服务器centos分区怎么操作?centos分区方法

    服务器 CentOS 分区的核心策略在于:必须摒弃默认的一刀切模式,依据业务负载特性实施精细化分区规划,将系统文件、日志数据、数据库及用户数据物理隔离,以此构建高可用、易维护且性能最优的存储架构,合理的分区方案能直接决定服务器在极端流量下的稳定性,是运维人员必须掌握的基础技能,以下是基于实战经验的专业分区指南……

    程序编程 2026年4月19日
    4800
  • 服务器磁盘空间不够怎么扩容?如何扩容硬盘

    服务器磁盘空间不足时,扩容硬盘是最直接有效的解决方案,但需要根据业务场景选择本地盘扩容或云盘扩容,并配合文件系统调整,诊断磁盘空间:从告警到根因常见告警信号监控系统触发阈值通知,例如磁盘使用率超过80%或90%应用日志中出现 No space left on device 错误数据库写入失败,或Web服务无法上……

    2026年7月26日
    800
  • 为什么LOL一直未连接到聊天服务器,lol聊天连不上怎么办

    开篇直接给答案lol未连接到聊天服务器,罪魁祸首大概率不是你的游戏客户端,而是本地网络到腾讯聊天服务器之间的数据丢包或节点中断, 这个问题在英雄联盟玩家中非常常见,通常表现为游戏能正常登录、对局数据正常,但左下角的聊天窗口一直转圈或直接弹出错误提示,绝大多数情况下,不需要重装客户端就能解决,为什么会在进游戏时提……

    2026年9月14日
    300
  • 我的世界怎么开一个模组服务器,需要什么配置?

    想开一个我的世界模组服务器,核心步骤只有三步:装对应游戏版本的Forge或NeoForge服务端、把模组放进mods文件夹、让伙伴能连上你的电脑,新手照着本文操作,半小时内就能把服务器跑起来,我见过太多人卡在同一个地方,不是下载错服务端,就是忘了改eula文件,这篇文章把从零到能联机的完整过程拆开揉碎,每一步都……

    2026年10月12日
    200
  • 服务器cpu与家用cpu有什么区别?服务器cpu能当家用cpu用吗

    服务器CPU与家用CPU在底层架构上虽同源,但在设计逻辑、性能取向及应用场景上存在本质差异,核心结论在于:服务器CPU追求极致的多核并发性能、全年无休的稳定性与强大的数据吞吐量,而家用CPU则侧重于单核主频速度、图形响应能力与性价比的平衡,对于企业和数据中心而言,选择服务器CPU是保障业务连续性的基石;对于个人……

    2026年4月7日
    8500
  • 我的世界中国版EC服务器怎么进入,EC服务器进不去怎么办?

    我的世界中国版EC服务器进入方法其实很简单:先确认你下载的是官方启动器,进入后点击“联机大厅”找到对应房间,或直接输入IP地址连接即可,很多玩家卡在“进不去”的问题上,往往不是操作出错,而是忽略了版本匹配和网络设置这两道隐形门槛,我的世界中国版ec服务器到底是什么来头EC服务器不是一个官方的特殊服务器类型,而是……

    程序编程 2026年11月8日
    200
  • 三星ddr3l服务器版16g到底怎么样,值得买吗

    三星DDR3L服务器版16GB内存(三星DDR3L 16G REG)是专为服务器和工作站设计的低电压内存条,凭借1.35V低功耗、ECC纠错能力和服务器级稳定性,在二手老平台升级和NAS组建中保持了较高热度,对于正在寻找扩容方案的用户来说,它的性价比和风险并存,下面从性能、兼容性、价格和选购要点逐一分析,三星d……

    2026年7月23日
    2400
  • 战地EA服务器断开怎么办,EA服务器连接超时怎么解决

    遇到“战地与EA服务器断开连接”,先别急着重装游戏,九成以上是本地网络路由问题或EA服务器自身波动,按顺序排查重启路由器、切换DNS、检查加速器节点就能解决,为什么你总是被EA服务器踢出去玩战地系列,尤其是《战地2042》《战地5》《战地1》,几乎每隔几天就能在玩家群里看到有人喊“又断了”,这个现象不是个别电脑……

    程序编程 2026年10月22日
    600

发表回复

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