frp v0.68版本更新:内网穿透新功能,AI助力代理管理

frp v0.68版本新增持久化存储功能和API支持,可通过AI操作代理,无需重启。本文将详细介绍如何使用这些新功能。

8AI工具内网穿透frpAI代理配置教程

开源内网穿透工具frp的最新版本v0.68带来了多项更新,其中包括内置存储功能和API支持,使得通过AI操作frp客户端成为可能,无需重启即可实现。

持久化存储功能

在frpc客户端配置中,添加[store]即可启用内置存储功能,将配置保存在db.json文件中。

serverAddr = \"127.0.0.1\" # frps服务端IP地址 serverPort = 端口 auth.token = \"appinn\" # 密钥 webServer.addr = \"0.0.0.0\" webServer.port = 7500 webServer.user = \"appinn\" webServer.password = \"appinnadmin\" [store] path = \"../db.json\" 

注意需要同时开启webServer之后,才能使用API功能。

API功能

通过API修改后的frpc无需重启,立即生效。实际上,API的相关操作只需要交给AI即可。

用终端将OpenClaw添加到frp

$ curl -u appinn:appinnadmin http://192.168.1.111:7500/api/store/proxies \ -H \"Content-Type: application/json\" \ -d '{ \"name\": \"openclaw\", \"type\": \"tcp\", \"tcp\": { \"localPort\": 17321, \"remotePort\": 47321 } }' 

之后,该代理就会出现在frp客户端中。

修改代理

不小心用错了端口,只需要使用下嘛的命令,即可把17321端口替换为18789:

curl -u appinn:appinnadmin -X PUT \ http://192.168.1.111:7500/api/store/proxies/openclaw \ -H \"Content-Type: application/json\" \ -d '{ \"name\": \"openclaw\", \"type\": \"tcp\", \"tcp\": { \"localPort\": 18789, \"remotePort\": 6000 } }' 

删除代理

不想要了,只需要使用如下命令:

frp v0.68:开源内网穿透工具简洁教程,新增 AI 能力:持久化存储、API 支持,可由 AI 添加、删除代理 1

curl -u appinn:appinnadmin -X DELETE http://192.168.1.111:7500/api/store/proxies/openclaw 

查询所有代理

curl -u appinn:appinnadmin http://192.168.1.111:7500/api/store/proxies 

设置frp服务器

  1. 根据系统下载程序,并解压缩
  2. 将frps及frps.toml放到具有公网IP的机器上
  3. 创建token文件,内容就是你的密钥

青小蛙目前所用的frps.toml文件内容:

bindPort = 1723 auth.tokenSource.type = \"file\" auth.tokenSource.file.path = \"/etc/frp/token\" webServer.addr = \"0.0.0.0\" webServer.port = 7500 webServer.user = \"用户名\" webServer.password = \"密码\" allowPorts = [ { start = 7001, end = 7010 } ] 

最后一行是青小蛙打开了7001~7010几个端口。

新建/etc/frp/token文件,内容直接添加你自定义的密钥即可,你可以把它理解为frp之间互相联系的口令。

运行:

./frps -c ./frps.toml 

另外,针对Linux用户,这里有一个后台运行服务可以参考。

c:\\Tools\\frp\\frps.exe -c c:\\Tools\\frp\\frps.toml 

假设frps解压缩到了c:\\Tools\\frp\\文件夹。

以及,请让防火墙通过7000端口,以及7001、7002端口。

frp v0.68:开源内网穿透工具简洁教程,新增 AI 能力:持久化存储、API 支持,可由 AI 添加、删除代理 2

设置frp客户端

  1. 根据系统下载程序
  2. 将frpc及frpc.toml放到处于内网环境的机器上。

这里以Windows远程桌面、群晖管理界面为例,修改frpc.toml配置文件:

serverAddr = 服务器公网IP serverPort = 1723 auth.tokenSource.type = \"file\" auth.tokenSource.file.path = \"C:\\Tools\\frp\\token\" [RDP] type = tcp local_ip = 127.0.0.1 local_port = 3389 remote_port = 7001 [DSM] type = tcp local_ip = 群晖在局域网中的IP地址 local_port = 5000 remote_port = 7002 

别忘记创建token文件,内容和之前服务器上的内容相同。另外remote_port中的端口需要在服务器中打开(allowPorts字段)

然后,启动Windows命令提示符,运行:

c:\\Tools\\frp\\frpc.exe -c c:\\Tools\\frp\\frpc.toml 

这里假设你的frp解压缩到了c:\\Tools\\frp\\文件夹下。

如果看到两行start proxy success就代表成功了。

远程访问

此时,就可以在外网访问网内资源了。

比如远程桌面,只需要打开微软的远程桌面客户端,然后使用公网IP:7001即可连接。

frp v0.68:开源内网穿透工具简洁教程,新增 AI 能力:持久化存储、API 支持,可由 AI 添加、删除代理 3

比如群晖,只需要打开浏览器,在地址栏输入公网IP:7002即可访问DSM的管理界面。

其它配置

frp官网提供了非常详尽的说明书,包括转发ssh、http、https、转发Unix域套接字等等,都可以配置使用。

但,其实对于初学者来说,还是有点费劲的。

更多示例

青小蛙开了一个帖子,准备连载一些frp的示例,以及如果在Windows下以系统服务运行frp等等一些内容。感兴趣的同学可以前往参考、讨论、分享。

目前有两个示例:

没错,你遇到了坑,也欢迎分享下来,尤其错误代码,大家一起解决。