云服务器 + FRP 内网穿透万能指南

二进制安装与自动化配置

拥有云服务器却受限于低配置,而家里的电脑性能强劲却苦于没有公网 IP?通过 FRP (Fast Reverse Proxy) 内网穿透技术,你可以将云服务器作为“流量中转站”,让全世界的用户访问你内网环境下的各类服务(如游戏服务器、Web 应用、NAS 或远程桌面)。

🛠️ 环境准备

  • 服务端:公网 Ubuntu/Debian/CentOS 云服务器。
  • 客户端:本地内网主机(Windows/Linux/Mac)。

云服务器端安装 (frps)

1. 下载与解压

由于 FRP 版本更新较快,我们建议在 GitHub 找到最新的 linux_amd64 版本。

# 进入存放软件的目录
cd /usr/local/bin

# 下载指定版本的二进制包(此处以 0.61.0 为例,请根据需求替换版本号)
wget [https://github.com/fatedier/frp/releases/download/v0.61.0/frp_0.61.0_linux_amd64.tar.gz](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

# 为了方便管理,重命名文件夹
mv frp_0.61.0_linux_amd64 frp
cd frp

2. 配置服务端 frps.toml

直接使用命令编辑器修改配置:

nano frps.toml

填入以下基础配置:

# 隧道连接端口
bindPort = 7000

3. 配置 Systemd 实现开机自启

直接运行 ./frps -c frps.toml 关掉终端就会退出,我们需要把它写成系统服务:

sudo nano /etc/systemd/system/frps.service

复制以下内容:

[Unit]
Description=Frp Server Service
After=network.target

[Service]
Type=simple
User=root
WorkingDirectory=/usr/local/bin/frp
ExecStart=/usr/local/bin/frp/frps -c /usr/local/bin/frp/frps.toml
Restart=on-failure

[Install]
WantedBy=multi-user.target

启动命令:

systemctl daemon-reload
# 启动并设置开机自启
systemctl enable frps --now

本地客户端配置 (frpc)

下载对应平台的客户端文件(如 windows_amd64),修改 frpc.toml

# 云服务器IP
serverAddr = "你的云服务器IP"
# 隧道连接端口
serverPort = 7000

[[proxies]]
# 隧道名称
name = "my-service-tcp"
# 隧道类型
type = "tcp"
# 本地实际运行IP
localIP = "127.0.0.1" 
# 本地实际运行端口
localPort = 26666
# 映射到公网的端口(注意:不要与云服务器端口冲突)
remotePort = 26666

启动客户端

./frpc -c frpc.toml

避坑指南与防火墙

无论你使用什么服务,防火墙放行 是最关键的一步。你需要在云服务器控制台(如腾讯云、阿里云)放行:

  1. 7000 (TCP):必开,否则客户端无法连接。
  2. 业务端口 (TCP):例如上文的 26666,否则用户无法访问。