我想为我的 express.js 应用程序创建一个中间件,它将拒绝来自未连接到我的 Tailscale 网络的机器的请求。
我怎样才能做到这一点?我是否需要获取请求 ip,然后以某种方式针对 Tailscale 进行验证?
我想为我的 express.js 应用程序创建一个中间件,它将拒绝来自未连接到我的 Tailscale 网络的机器的请求。
我怎样才能做到这一点?我是否需要获取请求 ip,然后以某种方式针对 Tailscale 进行验证?
在 Linux Tailscale 上安装了一个 iptables 规则,即 100.64.0.0/10 只能通过 tailscale0 进入。作为最简单的解决方案,您可以让应用程序对照 100.64.0.0/10 检查源 IP。
https://github.com/tailscale/tailscale/tree/main/tsnet中有 Go 代码,它提供了更广泛的信息,例如正在连接的用户。最终我们希望有支持的 API 更容易从 JavaScript 获取,但是现在如果你愿意编写一些 Go 脚手架,你可能可以从 thge JavaScript 运行二进制文件来获取您正在寻找的信息。