在 Rocky Linux 9 上部署 frp(Fast Reverse Proxy)的 server 端(即 frps)并启用 token 验证,可以按照以下步骤操作:


一、准备工作

1. 更新系统

sudo dnf update -y

2. 安装必要工具(如 wget、tar)

sudo dnf install -y wget tar

二、下载 frp

前往 frp GitHub Releases 页面 获取最新版本。以 v0.58.1 为例(请根据实际情况替换为最新版):

# 下载(适用于 x86_64 架构)
wget https://github.com/fatedier/frp/releases/download/v0.58.1/frp_0.58.1_linux_amd64.tar.gz

# 解压
tar -zxvf frp_0.58.1_linux_amd64.tar.gz

# 创建安装目录
sudo mkdir -p /opt/frp
sudo cp -r frp_0.58.1_linux_amd64/* /opt/frp/

# 进入目录
cd /opt/frp

三、配置 frps(服务端)

编辑 frps.toml 文件(新版 frp 使用 TOML 格式配置):

sudo vi /opt/frp/frps.toml

填入以下内容(启用 token 验证):

# frps.toml

[server]
bindPort = 7000        # frp 服务监听端口(客户端连接此端口)
bindAddr = "0.0.0.0"

# 启用 Dashboard(可选,用于 Web 监控)
dashboardPort = 7500
dashboardUser = "admin"
dashboardPwd = "your_dashboard_password"

# Token 验证(必须与客户端一致)
token = "your_secure_token_here"

# 日志设置(可选)
logFile = "/var/log/frp/frps.log"
logLevel = "info"
logMaxDays = 7

⚠️ 请将 your_secure_token_here 替换为强密码(建议使用随机字符串),客户端也需配置相同 token。


四、创建日志目录

sudo mkdir -p /var/log/frp
sudo chown -R $(whoami):$(whoami) /var/log/frp

五、创建 systemd 服务(便于开机自启和管理)

sudo tee /etc/systemd/system/frps.service <<EOF
[Unit]
Description=FRP Server
After=network.target

[Service]
Type=simple
ExecStart=/opt/frp/frps -c /opt/frp/frps.toml
Restart=always
RestartSec=5
User=root

[Install]
WantedBy=multi-user.target
EOF

六、启动并启用服务

# 重载 systemd
sudo systemctl daemon-reload

# 启动 frps
sudo systemctl start frps

# 设置开机自启
sudo systemctl enable frps

# 查看状态
sudo systemctl status frps

七、开放防火墙端口

# 开放 frp 主端口(7000)和 Dashboard(7500,可选)
sudo firewall-cmd --permanent --add-port=7000/tcp
sudo firewall-cmd --permanent --add-port=7500/tcp  # 如果启用了 Dashboard
sudo firewall-cmd --reload

八、验证

  • 查看日志:

    tail -f /var/log/frp/frps.log
    
  • 访问 Dashboard(如果启用):

    http://<your_server_ip>:7500
    

    用户名/密码为配置文件中设置的 dashboardUserdashboardPwd


九、客户端配置提示(供参考)

客户端(frpc)的 frpc.toml 中需包含:

[client]
serverAddr = "your_server_ip"
serverPort = 7000
token = "your_secure_token_here"  # 必须与服务端一致

完成以上步骤后,你的 frp 服务端就已在 Rocky Linux 9 上成功部署,并启用了 token 安全验证。

如需进一步安全加固,可考虑:

  • 使用 TLS 加密(frp 支持)
  • 限制 Dashboard 访问 IP
  • 使用非 root 用户运行 frps