当前位置: 首页 > news >正文

Linux服务器部署FRP及配置Token

相关软件

fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.

Release v0.64.0 · fatedier/frp

koho/frpmgr: A user-friendly desktop GUI client for FRP on Windows.

Release v1.24.0 · koho/frpmgr

Linux服务器配置frps

准备压缩包

在Release v0.64.0 · fatedier/frp中找到linux版本的压缩包,下载并上传至服务器上。

或者直接在服务器上下载:

wget -c https://github.com/fatedier/frp/releases/download/v0.64.0/frp_0.64.0_linux_amd64.tar.gz

然后解压:

tar -zxvf frp_0.64.0_linux_amd64.tar.gz

会产生一个名为frp_0.64.0_linux_amd64的文件夹。

接下来为了方便操作,将文件夹重命名为frp

mv frp_0.64.0_linux_amd64 frp
cd frp

修改frps配置

在frp文件夹中,需要利用到两个文件:服务端frps和服务端配置frps.toml

nano frps.toml

这里展示一份简单的模板:

bindPort = 1xxxx # 监听端口
auth.method = "token" # 验证方式
auth.token = "xxxxxxxx" # 填写token
transport.tls.force = false # 是否强制tls

将其粘贴并修改,Ctrl+X保存。

配置systemctl自启动

安全存放frpsfrps.toml

cp frps /usr/bin
mkdir /etc/frp
cp frps.toml /etc/frp

设置自启动配置文件

nano /etc/systemd/system/frps.service

写入如下内容

[Unit]
Description=My Frp Client Service - %i
After=network.target syslog.target
Wants=network.target[Service]
Type=simple
Restart=on-failure
RestartSec=2s
ExecStart=/bin/bash -c 'frps -c /etc/frp/frps.toml'[Install]
WantedBy=multi-user.target                         

启动

systemctl start frps
systemctl enable frps

其他相关的检测指令

# 服务是否在跑
systemctl is-active frps# 展示systemctl加载的service文件
systemctl cat frps# 修改service后重新读取并重启frps
systemctl daemon-reload
systemctl restart frps# 详细状态(打印日志)
systemctl --no-pager -l status frps# 本次启动以来的关键日志
journalctl -u frps -b --no-pager -n 100

其中,最后一条指令可能可以看到类似下面的内容:

Sep 16 16:40:09 bash[2486553]: 2025-09-16 16:40:09.218 [I] [frps/root.go:108] frps uses config file: /etc/frp/frps.toml
Sep 16 16:40:09 bash[2486553]: 2025-09-16 16:40:09.630 [I] [server/service.go:237] frps tcp listen on 0.0.0.0:1xxxx
Sep 16 16:40:09 bash[2486553]: 2025-09-16 16:40:09.631 [I] [frps/root.go:117] frps started successfully
Sep 16 16:40:10 bash[2486553]: 2025-09-16 16:40:10.147 [I] [server/service.go:582] [a7347aa17447b173] client login info: ip [183.247.9.41:9962] version [0.64.0] hostname [] os [windows] arch [amd64]

至此,frps配置完毕。

Windows安装FRP管理器

虽然固然本地可以使用windows版的frpc启动frp,但是如果有多个端口需要映射到多台服务器上,并还需要稳定运行、断线重连,那么就需要一个稳定的frp管理器了。

安装frpmgr

本文以Release v1.24.0 · koho/frpmgr为例:

frpmgr在安装好了之后会随着系统启动而启动,并且没有托盘图标。如果要修改配置,可启动FRP 管理器进行修改。

配置frpmgr

点击左下角的新建配置

基本中填入服务器的名称服务器的ip地址服务器监听的端口

其中,服务器监听端口就是之前在frps.toml里面填的bindPort

认证中选择Token并填入令牌

其中,令牌是之前在frps.toml中填写的auth.token

添加连接

点击添加

填写新建代理名称本地端口远程端口

点击确定,看到这条连接前面的勾变为绿色,说明代理建立成功。

通常,类型选择tcp足够用了。

特别地,对于rdp,如果想尝试一下走udp传输数据,可以试试在添加3389端口tcp的代理后,同理添加一条3389端口udp协议的代理。

浅浅测试下,走udp有可能可以降低延迟,但是貌似会导致画面传输的稳定性变差……?感兴趣的朋友可以试一试。

参考文献

公网访问内网中Wsl2服务器(借助frp)_公网访问wsl2服务-CSDN博客

讲述了如何配置frp服务器及systemctl配置(service脚本在其基础上修改),但基于v0.45.0版本,采用.ini配置文件,未配置token,不够安全。

Frp 0.52及以上版本的全系统保姆级教程(包含frps和frpc的搭建与使用) | Mint's Blog

基于v0.52.0版本的frp配置,采用.toml配置文件,但部分配置参数有所变动。

frp同时转发远程桌面的 TCP 和 UDP 端口 - 知乎

提到了使用rdp时使用udp会让移动操作更跟手,评论区有人提出直接添加一条3389的udp即可。

http://www.wxhsa.cn/company.asp?id=6302

相关文章:

  • 最大子列和问题
  • RSA 共模攻击
  • 计组博文
  • week1task
  • 《原子习惯》-读书笔记3
  • Linux系统编程笔记总结
  • Java SE 25新增特性
  • linux系统编程09-进程间通信
  • 谈谈语法糖
  • 2025年,秋天与冬天(长期)
  • ssl rsa解密
  • linux系统编程05-标准IO1
  • linux系统编程07-文件IO\系统调用IO
  • linux系统编程06-标准IO2
  • linux系统编程08-高级IO
  • 第03周 预习、实验与作业:面向对象入门2与类的识别
  • 第8篇、Kafka 监控与调优实战指南
  • linux系统编程02-进程基本知识
  • linux系统编程03-并发:信号
  • linux系统编程04-并发:线程
  • 新手高效制作PPT的3个步骤:告别逻辑混乱,从构思到完成!
  • Avalonia:用 ReactiveUI 的方法绑定数据、事件和命令
  • 【pyQT 专栏】程序设置 windows 任务栏缩略图(.ico)教程
  • Say 题选记(9.14 - 9.20)
  • vm的配置
  • 力扣72题 编辑距离
  • 数学基本结构框架
  • 2025.9.16总结
  • 在 Tailscale 中禁用 DNS
  • 软件工程实践一:Git 使用教程(含分支与 Gitee)