私人离岸基础设施
Web 与 onion应用 · 4 分钟阅读

发布 onion 服务而不忽视应用程序

规划合法的 onion 发布,包括受控的后端暴露、仔细的内容审查、服务密钥恢复和明确的受众访问模型。

作者 SwissOctet 编辑部
直接答案

保护应用程序及其管理访问,限制后端监听器,保护洋葱服务密钥,并通过兼容客户端测试发布内容。洋葱路由只是设计中的一层。它不会消除应用程序漏洞、已发布内容中的错误,也不会消除定义谁应拥有访问权限的需要。

01

定义发布内容及其受众

从合法的发布目的和受众描述开始。公开研究出版物和受限项目门户有不同的访问要求。确定哪些内容旨在公开、哪些需要应用程序身份验证、哪些绝不应进入 Web 根目录。将这些决策与用于访问站点的传输方式分开。

在部署前编写一份小型数据清单:页面、上传内容、数据库内容、管理员账户和服务配置。为更新和事件处理指定负责人。站点使用洋葱地址这一事实并不能解决保留期限、内容权利或安全责任问题。这些仍是需要明确运营计划的实际应用程序决策。

02

保持后端监听器的审慎配置

洋葱服务将连接映射到本地应用程序端点。审查该端点监听的位置以及其他网络能否访问它。Tor Project 的设置指南将 Unix 套接字描述为避免将后端暴露到本地网络的一种有用方式。选择你的服务器支持的方法,并验证其实际可达性。

通过 Tor 可用的连接可能与意外的公开监听器并存。测试预期的访问路径以及后端周围的边界。避免泛泛的配置假设;阅读应用程序的监听设置和 Web 服务器的虚拟主机路由。将管理界面与面向公众的服务区分开,并限制谁可以更改这些设置。

03

审查应用程序发布的内容

以读者会遇到的方式检查页面、上传文件、错误输出和嵌入资源。应用程序可能通过调试消息泄露运营细节,或链接到外部资源,而这些在其主要设计中并不明显。审查生成的 URL 和内容元数据。仅提供发布所需的资源,并了解其发起的任何第三方请求。

对于示例研究站点,在启动前审查一篇示例文章、附件和联系页面。验证私有编辑文档和环境文件位于公共目录之外。检查上传内容时使用非敏感测试材料。成功的洋葱连接证明可达性;此内容审查检查服务实际向其受众披露了什么。

04

将服务身份视为受保护材料

洋葱服务配置包含必须保持私密的密钥材料。将其放在公共网站文件之外,并限制只有需要它的操作人员才能访问。规划合法恢复如何保留预期的服务身份,以及如何应对泄露。不要将服务密钥放入公共存档、支持消息或共享项目仓库。

在恢复设计中包含应用程序、数据和所需的服务配置,并为每一项提供适当的保护。仅备份站点内容可能无法恢复预期地址,而包含私钥的副本会形成敏感备份。记录谁可以解密和恢复它,并在不将密钥暴露在演练报告中的情况下测试该访问。

05

明确选择公开访问或受限访问

应用程序登录和 Tor 客户端授权是不同的层。Tor Project 记录了客户端授权,使对 v3 洋葱服务的访问取决于客户端凭据。确定该模型是否适合受众和运营流程。公开出版物并不自动需要它,并且一旦客户端连接,它也不能替代应用程序的权限。

考虑一个仅限小型获批小组访问的项目门户。你需要一种私下分发、替换和撤销访问材料的方式,以及管理应用程序账户。分别测试移除已授权客户端和应用程序用户。下表将这些控制措施区分开,而不是承诺某一项设置能解决所有访问问题。

控制措施它回答的问题独立责任
后端监听器谁可以访问本地应用程序端点?Web 服务器和网络配置
客户端授权哪些客户端可以连接到洋葱服务?私密凭据分发和撤销
应用程序权限已连接用户可以做什么?账户角色和数据访问
发布审查站点披露了什么?内容、上传和错误处理
06

通过读者的连接进行测试

使用兼容客户端通过预期的洋葱访问路径测试页面、导航、表单和下载。使用无害测试流量观察错误和应用程序资源使用情况。避免仅测量本地后端请求,因为它不会检验读者的完整连接。保持测试账户和任何受限访问凭据私密。

同时检查恢复和维护程序。应用程序更新应有回滚点,以及之后验证洋葱路由的方法。定义有用的运营日志和保留期限,不要假设分发或传输标签会形成零日志政策。保留足够证据以诊断故障,同时避免不必要的收集。

07

将托管选项视为设计的组成部分

SwissOctet Veil 列出了应用程序栈、洋葱地址和备份选项。选择你的软件所期望的栈,以及足够工作负载使用的 CPU、内存和存储。在依赖它之前,确认实际服务如何处理部署、服务身份和恢复。该目录的瑞士位置与你的应用程序的隐私行为是分开的。

保持服务用于合法发布和授权用户。规划管理员更新、访问审查以及对应用程序凭据泄露的响应。当内容、后端暴露和恢复都可理解时,洋葱发布效果最佳;传输应支持该计划,而不是成为跳过普通软件安全的借口。

将其转化为行动

您的实用清单。

  • 在部署前定义公开内容和受限内容。
  • 验证后端监听器的实际暴露情况。
  • 审查页面、上传内容和外部资源请求。
  • 保护并测试服务密钥材料的恢复。
  • 将客户端授权与应用程序角色分开。
  • 通过洋葱路径测试维护和读者旅程。
常见问题

重要细节。

洋葱托管本身会使应用程序匿名吗?+

不会。已发布内容、配置、账户和运营实践可能泄露信息。应审查整个服务,而不是依赖连接方式。

每个洋葱站点都应使用客户端授权吗?+

不。根据预期受众决定。客户端授权限制连接访问并增加凭据生命周期;应用程序权限仍然分开。

在恢复副本中我必须保护什么?+

站点数据和配置需要适当的访问控制。其中包含的任何服务密钥材料都特别敏感,在存储和恢复期间必须保持私密。

主要参考资料

前往来源。

这些参考资料支持本指南中的技术概念。在更改生产系统之前,请遵循当前文档。

  1. Tor Project:设置你的洋葱服务 community.torproject.org
  2. Tor Project:高级洋葱服务设置 community.torproject.org
  3. Tor Project:客户端授权 community.torproject.org

由 SwissOctet 提供编辑指导。示例仅作说明。服务规格、可用选项和合同条件必须单独核实。

连接知识

相关基础设施。

保持联系

您的下一份现场笔记。

探索所有指南