frptables在ARM Ubuntu的应用

本文讲述了如何在frps服务中应对国外IP频繁尝试SSH登录的问题,通过从GitHub下载frptables工具并配置防火墙规则。同时,作者详细介绍了在ARM体系下安装和配置Go语言环境,解决编译时的网络问题,确保生成的二进制文件可执行。
摘要由CSDN通过智能技术生成

frps在服务期间总是有很多国外IP的访问,查看客户端日志发现有频繁尝试登录ssh的行为,为此在github上找到一个相关工具可以设置防火墙并屏蔽关键设置后的IP访问。
第一次配置相关工具链,做个记录以防以后忘记。

下载frptables

使用git命令克隆仓库。
我同步到gitee了,速度会快很多。

git clone https://gitee.com/Yuan-Prjs/frptables.git

官方使用下述代码就可以运行了,但是在arm体系中是运行不了,因为仓库里提供的貌似是x86的二进制文件。

nohup ./frptables -c config.yml &

为此我们需要编译一份arm能运行的程序。

go环境配置

下载

进入下载页面:go相关文件地址
下载 go1.22.1.linux-arm64.tar.gz 该文件,下载链接直接贴出。

https://dl.google.com/go/go1.22.1.linux-arm64.tar.gz

解压&配置

将文件解压到到/usr/local目录

sudo tar -C /usr/local -xzvf go1.22.1.linux-arm64.tar.gz

然后设置环境变量,在 ~/.bashrc中添加两行

命令 sudo vim ~/.bashrc
底部添加下面两行
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
最后保存退出输入命令 更新环境
source ~/.bashrc

设置好后,就可以使用go的相关命令了。
查看版本命令

go version

当输出下述文本后,就代表环境配置成功了。

go version go1.22.1 linux/arm64

编译

在仓库中有一个文件 main.go ,对其编译后输出二进制可执行文件,但是直接输入编译命令会出现各种编译错误的提示,比如链接远程Go模块时下载超时。

# 输入命令编译
go build

需要重新设置环境来指定代理链接,比如在当前的命令框中临时设定,然后在输入上面的编译命令,最后输出的二进制可执行文件就可以直接运行了。

export GOPROXY=https://goproxy.cn,direct
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值