浅探 Tailscale DERP 中转服务

一、简介

tailscale 是一个很好用的工具,它包含了多种高级特性(例如 Magic DNS)来方便用户的使用,主要用于异地组网。

这也是本人抛弃 Zerotier 选择 Tailscale 的缘故,高级特性很多用的很方便。

tailscale 的底层机制与 zerotier 不同。

  • zerotier 会让每个客户端在启动时立即尝试与其他客户端的打洞,并一直维持这个连接。
    • 优点:创建链接时可以非常快速。要么早已打洞完成,要么就是百分百确定走中继节点。
    • 缺点:需要维护与所有对等节点的打洞链接,占用资源。节点一多则维护打洞的开销就比较大。
  • tailscale 只会在需要与 peer 建立连接的时候才会尝试打洞,而且最开始的流量一定是会经过 DERP 中转服务器。(非常的 Lazy…)
    • 优点:懒加载机制无需预先维护与其他节点的任何打洞连接,无需预先维护任何状态。
    • 缺点:每次通过 tailscale 创建虚拟连接时,初始所创建的连接其延迟很高,这会极大的影响使用体验;tailscale 极其依赖中继节点

而在 P2P VPN 中,自建中继节点是相当重要的。一方面自建中继节点可以比地理位置较远的官方中继节点更好的观察和协调本地两台对等机的 p2p 过程,另一方面可以在打洞失败后快速中继和转发流量

本人先前的文章已经介绍了 Zerotier 搭建中继节点 Moon 的原理和过程。Zerotier 会在特定 Primary Port 9993 上监听 UDP 连接来中继数据,因此在实际搭建的过程中只需将这一个 UDP 端口暴露至公网即可,要求极低。而暴露端口有多种方式可以实现,例如内网穿透 FRP 等等,也因此 moon 节点甚至都不需要有一个属于自己 IP 地址

注:Zerotier 不支持自建 TCP 中继,moon 节点实际上只是一个 UDP 中继节点。

而 Tailscale 的中继服务器(称为 DERP 服务)的搭建与 zerotier 相比存在一点困难,而网络上的搭建教程真是参差不齐(跟我之前找 Zerotier Moon 的搭建过程一样难顶,这点要狠狠吐槽一下)。那么接下来,我们来尝试找到一种最简便的方式来构建 tailscale DERP 服务器,顺带学习一下 DERP 服务的一些原理。

Tailscale 的中继 DERP 服务就是一个 TCP 中继节点,与 Zerotier 完全相反。

TL,DR: 如想跳过前置内容,直接快速了解搭建过程,请直接跳转至本文最后一节的总结部分

看完本文,你将了解到无需公网机器、无需域名、无需证书、无需修改源代码、无需自托管 HeadScale 服务的情况下,只需1-2个端口,来快速构建 Tailscale-DERP 服务。

需要注意的是本篇文章只考虑 tailscale 而不考虑 headscale,因为我希望使用的过程中能够尽可能简便,不想单独部署一个 headscale 控制服务器。

阅读更多...

使用 Frpc 进行内网穿透构建 ZeroTier Moon 记录

一、简介

Zerotier 是一个专用于异地组网的工具,它方便将多台异地机器以 P2P 或者 中转 Relay 的方式实现宛如局域网般的流畅体验。

Zerotier 组网中节点分为三个部分,分别是位于国外的中央服务器 Planet,用户自建节点 Moon,以及用户其他节点 Leaf。

由于 Planet 位于国外,当两台机器地理位置相隔甚远时,无论是 UDP 打洞还是 Relay 中继,速度都非常慢,因此尝试自建一台国内Zerotier Moon 来提高打洞概率 + 中继速度。

网上搭建 Zerotier Moon 的教程都需要购买一台服务器,但本人不想这么折腾,因此尝试探索 FRPC 内网穿透的搭建方式。

阅读更多...

CTF Docker 小记

简介

每次玩玩 CTF 时总是会因为 Docker 速度慢、忘记命令等等使自己非常抗拒启 Docker 环境,但是没有 Docker 环境实操题目就又成了纸上谈兵。

因此趁着 RealworldCTF 5th 来熟悉并记录一下 Docker 的使用,感兴趣的 pwn 手可以一起实操一下 docker。

阅读更多...

浅析 Linux Dirty Cred 新型漏洞利用方式

一、简介

Linux Dirty Cred 是一种基于 Dirty Pipe 漏洞所创新出来的新型漏洞利用方式。通过 Dirty Cred 的这种利用流程,其他位于 Linux 内核中的一些内存漏洞,在对其进行漏洞利用的过程里,可以转换为逻辑漏洞,来绕过当前所有的内核缓解机制(包括 CFI 控制流完整性保护)。

Dirty Cred 的核心利用思路是使用高权限 credential 对象来交换低权限 credential 对象,从而达到提权的目的。该论文目前已中 CCS 2022 & Black Hat USA 2022,属实是一个比较有趣的思路。

阅读更多...
  • Copyrights © 2020-2024 Kiprey
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~