Tailcat:无需账号,穿透内网直接建立加密连接的开源工具

大家好,我是木马猎人,今天逛 GitHub 发现一个内网穿透工具 Tailcat,并且做了下载测试,感觉还不错,在此做个分享笔记。

平时想让两台不在同一个局域网的电脑互相访问,很多人第一时间想到的可能是 Tailscale、ZeroTier 之类的组网工具。不过,这些工具通常需要注册账号、添加设备、配置网络。

Tailcat 就不太一样了,它解决的是一个更简单的需求:不折腾组网,只想让两台电脑快速建立一条加密连接。无需注册账号,也不用安装客户端程序(绿色单文件)。

项目地址:

不用账号,也能让两台不同网络的电脑直接连接

Tailcat 是 Tailscale 团队开源的一个轻量级网络工具。可以把它理解成一个融合了 WireGuard 加密、NAT 穿透能力的增强版 Netcat。

它不需要注册 Tailscale 账号,也不需要创建 Tailnet,更不用专门配置虚拟网卡、系统路由。

基本操作也很简单:一台电脑运行 Tailcat,生成一个连接地址;另一台电脑拿到地址后,就可以尝试连接。

即使两台电脑分别处于不同的网络环境,没有公网 IP,也有机会建立连接。Tailcat 会尝试通过 NAT 穿透实现点对点通信,如果无法直连,还可以通过 DERP 中继转发数据。

不只是传输文字,还能远程 SSH

Tailcat 不只是一个简单的网络通信工具,实际用途还挺多。

比如临时传输文字、文件,或者通过 SSH 访问另一台电脑。对于开发者来说,也可以用它建立临时的 TCP 服务连接,远程访问开发环境。

我自己测试时,比较感兴趣的就是它的 SSH 功能。

在 Windows 上下载 Tailcat,解压后就能运行。比如在被连接的电脑上执行:

tailcat serve no-auth-ssh

程序会生成一个 Tailcat 地址。另一台电脑拿到这个地址后,就可以使用 Tailcat 的 SSH 命令尝试连接。

整个过程不需要公网 IP,也不需要在路由器上配置端口映射。

不过要特别注意,no-auth-ssh 意味着拿到这个地址的人可能直接获得 Shell 访问权限,所以千万不要把地址公开。实际使用时,建议配置客户端限制或 SSH 公钥认证,不要把它当成一个可以随意开放的公共远程入口。

地址还能固定吗?

Tailcat 默认使用临时密钥,程序退出后,临时密钥就会被丢弃。

但它也支持保存密钥。通过 genkey 生成并保存密钥后,可以在后续启动时继续使用,从而实现相对固定的连接地址。

这就让 Tailcat 不仅能用于临时连接,也具备了搭建个人远程访问入口的可能性。当然,固定地址也意味着需要更加重视访问控制和密钥保管。

我的使用感受

Tailcat 最有意思的地方,是把原本比较复杂的网络连接能力,包装成了一个轻量级命令行工具。

如果只是偶尔需要让两台电脑传个文件、连一下 SSH,或者临时访问另一台机器上的服务,它确实值得一试。

它并不是要取代 Tailscale。Tailscale 更适合长期组建和管理私人网络,而 Tailcat 更像一个随用随开的加密连接工具。

目前它还是一个比较新的项目,安全配置和实际使用体验都值得进一步测试。但对于喜欢折腾网络工具、远程开发和开源项目的朋友来说,还是挺值得收藏的,也许某天就会用得到。