DSH Plugins
返回列表
🧩

dsh-auth-tailscale

admin-security 更新于 2026.08.25

在终端中运行以下命令:

dsh plugin install sperictao/dsh-auth-tailscale

将以下提示词粘贴到 DeepSeek Harness 对话框中:

在 DeepSeek Harness 终端中运行 dsh plugin install sperictao/dsh-auth-tailscale 即可安装该插件,完整源码地址为 https://github.com/sperictao/dsh-auth-tailscale 。

插件介绍

远程 dsh 连接授权中最棘手的一环,是把身份验证从未受信公网搬进受控 tailnet。dsh-auth-tailscale 利用 Tailscale Serve 终结 HTTPS 并注入经防伪处理的 Tailscale-User-Login、Tailscale-User-Name 及 App Capability 头,让 dsh 只需绑定 127.0.0.1 即可获得可靠的用户身份,无需暴露端口,也无需使用公开的 Funnel。

插件提供两层访问控制:逗号分隔、大小写敏感的 login allowlist 精确限定可连接的身份,以及 App Capability 分层将普通远程 API/WS 调用与特权 loopback 管理端点分开,权限直接写入 tailnet policy 即可治理。缺少身份头、RFC 2047 编码异常、capability JSON 非法或权限不足,一律 fail closed 拒绝,绝不退回匿名访问。

适合已在 tailnet 内运行 dsh、需要按用户粒度和 capability 粒度分别限制远程访问与管理员权限的运维和安全团队。App Capability 需 Tailscale 1.92 及以上版本;tagged-device-only 调用因缺少用户身份头会被自动拒绝。

使用场景

  • 用 Tailscale Serve 终结 HTTPS 后,按 login allowlist 精确控制哪些用户可远程连接 dsh
  • 通过 App Capability 将普通 API 访问与管理员特权接口分开,权限直接写入 tailnet policy
  • 让 dsh 只绑定 127.0.0.1,借助 Serve 注入的防伪身份头实现零暴露端口的远程授权

适合人员

  • 已在 Tailscale tailnet 内运行 dsh 的运维团队
  • 需要按用户和 capability 粒度分别治理远程访问权限的安全负责人
  • 希望用 tailnet policy 替代 IP 白名单或 API token 做远程授权的平台工程师