Nicholas Clooney

标签:infra

10 条

GL.iNet Slate 7、Tailscale 与防火长城环境下的分流

完整记录我在中国使用的路由器级配置:GL.iNet Slate 7 默认通过 Tailscale 连接 Debian VPS 出口节点,策略路由让国内流量直连,DNS 分流兼顾国内外服务速度。也记录三个最费时间的坑:tailscale0 的 LAN 转发与 MASQUERADE、PBR 与 Tailscale 的优先级,以及 GL.iNet 的 0x8000 标记泄漏。

随处可达、对公网隐形的私有入口引擎

大多数个人项目和家庭实验室服务不必公开,但需要能够访问。我想在任何地方,用自己的任何设备访问开发工具、内部面板和副业项目,而不用开放端口、暴露 IP,也不用担心互联网中的谁会偶然发现它们。

这篇文章介绍我如何用 Tailscale、Docker、Caddy 和 DNS 重写,构建一个随处可达、对公网隐形的入口引擎。最终是一套基于域名的私有环境,像一个小型云:有 HTTPS、整洁的主机名和反向代理,但只有我能访问,运行在自己的机器上,完全不暴露到公共互联网。

安全地配置 Rust,不再盲目执行 `curl | sh`

Rust 是这个时代设计最用心的语言之一,但在 macOS 上安装它,却莫名让人摸不着头脑。常见建议是运行 curl https://sh.rustup.rs | sh 这样的一行命令。它确实很好用,却隐藏了许多幕后过程。对于更重视安全,或只是想知道装了什么、装在哪儿的开发者来说,这种默认方式很像一个黑箱。

这篇文章会介绍在 macOS 上安装和管理 Rust 的不同方法:Homebrew 的便利、rustup 的灵活,以及手动安装或容器环境的透明度。目标很简单:在保留实用性的同时,让你了解过程并掌握控制权。

我如何意外把 Umami 仪表盘暴露在公网,以及学到的教训

最近,我在 VPS 上用 Docker 和 Nginx 配好 Umami 几小时后,发现一个配置错误把管理后台暴露到了公网。幸好没有立即造成危险。我在创建 Umami 的 Docker 实例后就马上修改了管理员用户名和密码,也在出事之前收紧了访问权限。不过,这仍然让我紧张了一阵:部署时的小失误,后果可能很大。

下面说说事情的经过,以及我从中学到的东西。

在英国移动网络上调试 Tailscale:探索 NAT、DERP 和 IPv6

一开始只是一个简单的问题:“为什么 iPhone 使用移动数据时,无法通过 Tailscale 连接我的 MacBook?” 最后却变成了对 NAT 类型、中继服务器以及 IPv6 隐藏潜力的深入探索。这篇文章记录了整个技术排查过程、走过的弯路和最终结论。

问题来了:为什么连 VPS 可以,连 Mac 却不行?