2 个版本

0.1.7 2023年5月18日
0.1.6 2023年5月4日

#3#zero-tier

每月 23 次下载

AGPL-3.0-or-later

245KB
2K SLoC

ztui:ZeroTier 终端 UI 的一站式商店

ztui 旨在成为所有 ZeroTier 交互的前端,试图改变人们使用它的方式。它提供以下功能

  • 主屏幕
    • 网络书签(断开连接不会使网络 ID 从列表中消失,您可以轻松重新加入)
    • 直接从网络列表与中央成员交互。
    • 加入、离开网络
    • 按网络带宽统计
    • 将任意命令绑定到使用模板启动的键(下面将详细介绍)
    • 以 JSON 格式美化审查网络
    • 对网络规则文件运行 $EDITOR(并将其保存回中央)
  • 中央/成员列表
    • 重命名成员
    • 认证、取消认证和删除成员

网络列表视图

成员列表/网络视图

安装

如果您需要,请获取 Rust 1.60 或更高版本。您将需要它。

cargo install ztui

您也可能喜欢我们的 GitHub 发布

配置任意命令

规则

  • 命令不得与现有命令映射
  • 将在 shell 中执行;相应地引用

配置语法

您第一次启动 ztui 后,将为您创建 $HOME/.config.zerotier/settings.json,其中包含您最后保存的网络信息。现在,我们想要创建 $HOME/.config.zerotier/config.json 并添加类似以下内容

{
    "network_commands": {
        "1": "/bin/tcpdump -i %i"
    },
    "member_commands": {
        "1": "/bin/iperf -c %a"
    }
}

可用的网络格式字符串

  • %i:ZeroTier 网络的接口
  • %n:ZeroTier 网络的网络 ID
  • %a:分配的 IP 地址列表中的第一个地址

在这种情况下,它将允许我在网络上按下 1tcpdump 其接口;然后我会使用 Control+C 退出它,回到 ztui

可用的成员格式字符串

  • %n:ZeroTier 网络的网络 ID
  • %i:此 ZeroTier 网络成员的身份
  • %a:此成员的第一个分配的 IP 地址
  • %N:ZeroTier 网络成员在中央显示的名称(不是 fqdn)

在上面的示例中,它允许我启动针对所选成员地址的 iperf 客户端。

作者

Erik Hollensbe [email protected]

依赖关系

~28–50MB
~781K SLoC