安全地重新认证远程 Tailscale 设备
强制重新登录 Tailscale 可能断开你正在使用的会话。先排除其他故障,准备好第二条进入通道,只续期一次,然后测试该节点实际提供的服务。
在远程服务器上强制发起新的 Tailscale 登录,可能在设备完成重新登录之前就切断 tailnet 连接。这不是命令的缺陷,而是在你使用的路径上,该操作按设计正常工作。规则很简单:在续期设备密钥之前,先准备好第二条通往该机器的通道。其余一切都只是为那一刻做准备。
为什么该命令可能切断你的连接
设备密钥让节点得以加入 tailnet。续期意味着旧密钥不再被接受,节点必须完成一次新的登录才能重新加入。如果你唯一的会话正运行在这条 tailnet 上,重新加入会在你不知情时发生。子网路由器会让情况更糟,因为客户端会保留路由,却失去通往其后的路径。
所以顺序比命令本身更重要。先保证访问,再续期。控制台会话、串口控制台或现场同事都算数。
先排除另一种故障
在续期任何东西之前,先确认问题确实出在密钥上。先看管理控制台中的到期时间,再看设备自身的状态:是否已连接、能看到哪些对等节点。有效密钥加上损坏的路由、ACL 变更或已停止的服务,从远处看很相似。强制续期并不能修复其中任何一种。
tailscale status如果节点在线且密钥有效,就继续排查。续期是最后手段,不是通用维修。既要看对等节点列表,也要看在线标志,因为半连接的节点仍会报告自己在线。
借助第二条通道续期
在准备好控制台访问或第二条管理通道后,在设备上执行续期。Tailscale 为此记录了 up 命令的 force-reauth 形式,并且需要平台要求的高权限。只执行一次,并观察输出,而不是关闭会话。如果命令切断了你的连接,就通过第二条通道重新连接,并查看本地日志。
sudo tailscale up --force-reauth如果密钥已经过期,管理控制台可能为符合条件的设备提供临时延期。该延期是恢复访问并完成登录的窗口,而不是永久替代方案。记下它显示的截止时间。
测试设备实际提供什么服务
设备重新加入后,测试它存在的目的所对应的服务。路由器应通过其后的资源测试,出口节点应通过预期的互联网路径测试,普通服务器应通过你实际使用的端口测试。仅显示在线的节点本身并不能证明其中任何一项。要从不是该节点的机器上测试,因为本地检查会完全绕过 tailnet 路径。
tailscale ping 100.101.102.103然后记下这台机器的到期策略。无人值守的连接器和个人笔记本电脑的容忍度不同,接手服务器的人不该再重新摸索它属于哪一种。这条备注就是有文档的策略与明年意外之间的差别。Tailscale 的密钥到期文档涵盖了续期选项及其限制。