安装frps在阿里云ECS-Alpine

建议参考大佬的方法#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.设置开机启动

  1. 创建一个systemd服务文件:
doas vi /etc/init.d/frps
  1. 在文件中添加以下内容:
#!/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替换为实际的路径。

  1. 给服务文件添加执行权限:
doas chmod +x /etc/init.d/frps
  1. 添加服务到开机启动:
doas rc-update add frps default
  1. 启动服务:
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"

4.frpc.toml由openwrt的frp的web应用很容易操作

8 Likes

好好好, 装完就可以放哪吃灰了

感谢分享这个教程

mark,到时候操作试试

感谢大佬教程

那个。。。alpine没那么麻烦的
doas apk add frp就装上了
然后 apk info -L frp就可以看配置文件
包括开机自启都是傻瓜式的。。。这系统主打一个简单已用

5 Likes

大佬牛,学到了 :bili_095:

start-stop-daemon: no matching processes found这个脚本好像有点问题

脚本里面路径改成自己的。不过按照大佬的apk安装后好像就不用这个脚本了。rc-update add frpc default

就是改了之后出现这个问题,已经吃上大佬的发的那个apk了

带宽能跑到多少 :yum:
想试试

80m带宽,但是流量限制20g

聊胜于无 :smiling_face_with_tear: :smiling_face_with_tear:

做穿透绰绰有余

是的,但如果用来观影的话就不太够了

之前用这个来和朋友联机玩泰拉瑞亚,后来因为比较喜欢rust,换成rathole了。rathole就一个可执行文件,而且配置会更简单点。

配置示例:

# server.toml
[server]
bind_addr = "0.0.0.0:2333" # `2333` 配置了服务端监听客户端连接的端口

[server.services.my_nas_ssh]
token = "use_a_secret_that_only_you_know" # 用于验证的 token
bind_addr = "0.0.0.0:5202" # `5202` 配置了将 `my_nas_ssh` 暴露给互联网的端口
# client.toml
[client]
remote_addr = "myserver.com:2333" # 服务器的地址。端口必须与 `server.bind_addr` 中的端口相同。

[client.services.my_nas_ssh]
token = "use_a_secret_that_only_you_know" # 必须与服务器相同以通过验证
local_addr = "127.0.0.1:22" # 需要被转发的服务的地址

服务器端就使用./rathole server.toml,客户端就使用./rathole client.toml启动,这样连接服务器端的5202端口,就相当于连接客户端的22端口。