如何在VPS服务器上部署FRP实现内网穿透?
| 项目 |
内容 |
| 软件名称 |
FRP (Fast Reverse Proxy) |
| 主要功能 |
内网穿透、反向代理 |
| 适用场景 |
远程访问内网服务、Web服务暴露 |
| 部署平台 |
Linux VPS服务器 |
| 核心组件 |
frps (服务端)、frpc (客户端) |
| 配置文件 |
frps.ini、frpc.ini |
如何在VPS服务器上部署FRP实现内网穿透?
FRP是一个高性能的反向代理应用,可以帮助您轻松实现内网穿透,将内网服务暴露到公网。下面将详细介绍在VPS服务器上部署FRP的完整流程。
FRP部署主要步骤
| 步骤 |
操作内容 |
所需工具 |
| 1 |
下载FRP软件包 |
wget命令 |
| 2 |
配置FRP服务端 |
frps.ini文件 |
| 3 |
启动FRP服务端 |
systemd服务 |
| 4 |
配置防火墙规则 |
ufw/iptables |
| 5 |
客户端配置连接 |
frpc.ini文件 |
详细操作流程
步骤1:下载FRP软件包
操作说明:从GitHub releases页面下载最新版本的FRP软件包到VPS服务器。
使用工具提示:使用wget或curl命令下载,建议选择与系统架构匹配的版本。
# 查看系统架构
arch
下载FRP(以amd64架构为例)
wget https://github.com/fatedier/frp/releases/download/v0.52.3/frp0.52.3linuxamd64.tar.gz
解压文件
tar -zxvf frp0.52.3linuxamd64.tar.gz
进入解压目录
cd frp0.52.3linuxamd64
步骤2:配置FRP服务端
操作说明:编辑frps.ini配置文件,设置服务端监听端口和认证信息。
使用工具提示:使用vim或nano编辑器修改配置文件。
# 编辑服务端配置文件
vim frps.ini
配置文件内容示例:
[common]
bindport = 7000
token = yoursecuretokenhere
dashboardport = 7500
dashboarduser = admin
dashboardpwd = adminpassword
步骤3:启动FRP服务端
操作说明:创建systemd服务文件,设置FRP服务开机自启。
使用工具提示:需要root权限操作systemd服务。
# 创建systemd服务文件
sudo vim /etc/systemd/system/frps.service
服务文件内容:
[Unit]
Description=Frp Server Service
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/path/to/frps -c /path/to/frps.ini
[Install]
WantedBy=multi-user.target
启动服务:
# 重载systemd配置
sudo systemctl daemon-reload
启动frps服务
sudo systemctl start frps
设置开机自启
sudo systemctl enable frps
检查服务状态
sudo systemctl status frps
步骤4:配置防火墙规则
操作说明:开放FRP服务端所需的端口,确保客户端能够正常连接。
使用工具提示:根据系统使用的防火墙工具进行配置。
# 如果使用ufw
sudo ufw allow 7000
sudo ufw allow 7500
如果使用iptables
sudo iptables -A INPUT -p tcp --dport 7000 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 7500 -j ACCEPT
步骤5:客户端配置连接
操作说明:在内网机器上配置frpc.ini文件,连接到VPS上的FRP服务端。
[common]
serveraddr = yourvpsip
serverport = 7000
token = yoursecuretokenhere
[web]
type = tcp
localip = 127.0.0.1
localport = 80
remoteport = 8080
常见问题与解决方案
| 问题 |
原因 |
解决方案 |
| 连接超时 |
防火墙未开放端口 |
检查并开放7000端口 |
| Token认证失败 |
服务端与客户端token不一致 |
确保两端使用相同的token |
| 端口被占用 |
其他服务占用FRP端口 |
更改frps.ini中的端口配置 |
| 服务无法启动 |
配置文件路径错误 |
检查frps.service中的ExecStart路径 |
| 客户端连接失败 |
服务器地址或端口错误 |
验证serveraddr和server_port配置 |
通过以上步骤,您可以成功在VPS服务器上部署FRP服务,实现内网服务的公网访问。FRP的配置灵活性强,可以根据具体需求调整各项参数,满足不同的内网穿透场景需求。
发表评论