前言
GL.iNet 官方提供了云服务,但外网环境中访问需安装应用程序,受限于 macOS/Windows 平台,在个别信创系统中无法使用,故将内网可以访问的 Web 服务映射至公网会是更方便的选择,而大部分家用网络并未提供公网IP,且即使有 IPv6 地址借助 DDNS 也时常伴随着不稳定,更限制了访问端必须拥有 IPv6 环境,所以使用内网穿透工具或者frp会是更好的解决方案。
安装 frp 客户端
查看系统架构:
arch在GitHub项目页:https://github.com/fatedier/frp 的 Releases 中下载最新对应架构的客户端文件(仅保留 frpc 及 frpc.toml 即可)
提前在本地编辑好 frpc.toml 配置文件,内容参考 frp 文档编写即可,例如:
serverAddr = "0.0.0.0" # 你的frp服务器IP
serverPort = 7000 # 你的frp服务器端口
loginFailExit=false
auth.method = "token" # 与服务端一致
auth.token = "123456"
[[proxies]]
name = "glkvm"
type = "tcp"
localIP = "127.0.0.1" # GLKVM的IP
localPort = 443 # 内网服务中的端口
remotePort = 8080 # 要映射在服务端的端口使用 sftp 命令连接 GLKVM 并上传 frpc 与 frpc.toml 两个文件:
# 默认端口 22
sftp 远程用户@远程服务器IP
# 非默认端口(如 2222)
sftp -P 2222 远程用户@远程服务器IP
# 私钥认证
sftp -i 私钥路径 远程用户@远程服务器IP示例:
mkdir /etc/frp
put /Users/admin/Downloads/frp_0.65.0_linux_arm/frpc /usr/bin
put /Users/admin/Downloads/frp_0.65.0_linux_arm/frpc.toml /etc/frp前台测试启动:
/usr/bin/frpc -c /etc/frp/frpc.toml设置开机自启
在 rcS 文件中添加启动命令
编辑
/etc/init.d/rcS:
sudo vim /etc/init.d/rcS在最后添加启动命令:
/bin/sleep 10 && /usr/bin/nohup /usr/bin/frpc -c /etc/frp/frpc.toml > /etc/frp/frpc.log 2>&1 &
保存退出:
按Esc ,输入:wq ,回车保存并退出
确保 rcS 有执行权限:
chmod +x /etc/init.d/rcS手动执行 rcS 脚本,测试 frpc 是否启动:
/etc/init.d/rcS