来源:david.alvarezrosa.com — 312 分 · by FromTheArchives
📋 概述
作者把个人站点同时发布成一个 Tor 隐藏服务,地址只在 Tor 网络内可解析。隐藏服务的几个特性值得注意:没有证书颁发机构、没有 DNS、也不暴露 IP——地址直接由公钥推导而来,连接本身由 Tor 端到端加密。配置上也有讲究:隐藏服务目录必须指向 Tor 专属目录而不是网站根目录,因为 Tor 要在那里存放私钥与 hostname 文件,并且坚持自己拥有该目录,指错位置服务会直接启动失败。之后 nginx 只需监听本机 8080 端口,不配 TLS、HTTP/2 或 QUIC,因为 Tor 本身提供加密。最容易被忽略的一点是静态站点会把 baseURL 编进绝对链接,因此必须用 onion 地址为 baseURL 单独构建一份,作者的部署流水线对每个 push 分别构建明网与 Tor 两份并各自同步到对应根目录。
🔑 核心要点
隐藏服务的地址由公钥推导、无 CA、无 DNS、不暴露 IP。
连接由Tor 端到端加密,因此 nginx 侧不需要 TLS、HTTP/2 或 QUIC。
隐藏服务目录必须是Tor 专属目录,指到网站文件会因权限校验而启动失败。
反向代理只需监听本机 8080 端口,由 Tor 转发该端口。
关键坑是静态站会把baseURL 烘进绝对链接,明网构建在 Tor 上会指回明网域名。
解决办法是每个目标各构建一次,发布流水线自动同步到两份根目录。
💡 金句
There is no certificate authority, no DNS, and no exposed IP - the address is derived directly from a public key, and the connection is end-to-end encrypted by Tor itself.