建议参考大佬的方法#6楼:
0.背景
刚跟着佬友用学生300券白嫖了阿里云9年的ecs,打算部署一个frp内网穿透
1. 下载程序
首先到 frp 的 releases 页面下载最新版的对应 VPS 的处理器架构的压缩包
如何知道 VPS 的处理器架构?在 VPS 上运行这个命令:
arch
# 或者
uname -m
如果输出x86_64
则需要下载带linux_amd64
的那个压缩包;
如果输出的是其他的,则在文件列表中找 linux 的对应架构的压缩包
cd /root
# 下载
wget --no-check-certificate https://github.com/fatedier/frp/releases/download/v0.60.0/frp_0.60.0_linux_amd64.tar.gz
# 解压
tar -xzvf frp_0.60.0_linux_amd64.tar.gz
# 文件夹名改成 frp,不然目录太长了不方便
mv frp_0.60.0_linux_amd64 frp
cd frp
# 确保 frps 程序具有可执行权限
chmod +x frps
然后试着运行一下frps
,看看是否能正常运行
./frps --help
# 接下来就可以自己调试内网穿透了,配合你要穿透的客户端
./frps -c ./frps.toml
正常情况下会输出一串帮助信息,那么就说明你下载了正确架构的版本
如果提示-bash: ./frps: cannot execute binary file: Exec format error
就说明你下错版本了
2.设置开机启动
- 创建一个systemd服务文件:
doas vi /etc/init.d/frps
- 在文件中添加以下内容:
#!/sbin/openrc-run
name="frps"
description="frp server daemon"
command="/path/of/frps"
command_args="-c /path/of/frps.toml"
pidfile="/run/${RC_SVCNAME}.pid"
command_background="yes"
start_stop_daemon_args="--make-pidfile --user nobody"
depend() {
need net
after firewall
}
请确保将/path/of/frps
和/path/of/frps.toml
替换为实际的路径。
- 给服务文件添加执行权限:
doas chmod +x /etc/init.d/frps
- 添加服务到开机启动:
doas rc-update add frps default
- 启动服务:
doas rc-service frps start
现在,frps将在后台运行,并在系统启动时自动启动。你可以使用以下命令来管理服务:
- 启动:
doas rc-service frps start
- 停止:
doas rc-service frps stop
- 重启:
doas rc-service frps restart
- 查看状态:
doas rc-service frps status
这样设置后,frps就会在后台运行,并且在系统重启后自动启动。
3.我的frps.toml配置文件供参考
bindPort = 7000
# 配置 frp dashboard
webServer.addr = "0.0.0.0"
webServer.port = 7500
webServer.user = "admin"
webServer.password = "pass"
# 配置 token 认证,frpc 客户端也需指定一样的token
auth.method = "token"
auth.token = "pass"